libgit2 / libgit2/pygit2

Repository.create_reference only accepts str and not bytes

Ouverte
#966 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Python
Étoiles
1.7k
Forks
408
Merge moyen
2 j 57 min
PR mergées (30 j)
7

Description

Repository.create_reference only accepts str and not bytes. This is because Repository_create_reference_direct in repository.c uses the s specifier for parsing that argument, which only accepts str and implicitly encodes it using UTF-8. I would expect it to accept str or bytes, and if you pass bytes, it uses exactly what you pass in with no encoding/decoding.

This is a similar problem to #932.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez dans repository.c, au niveau de Repository_create_reference_direct, et examinez comment l’argument reference est analysé. Vérifiez le comportement existant de Repository.create_reference et l’issue #932 associée pour déterminer le traitement attendu, puis vérifiez que str reste encodé en UTF-8 tandis que bytes est transmis sans modification.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
c, git, python
Domaine
api, backend
Type d'issue
Bug
Difficulté
2/5
Temps estimé
Une demi-journée
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.