GitError raised on parsing a diff that has a filename with spaces
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
This was raised originally at cpp-linter/cpp-linter-action#178 in which a large diff was parsed by pygit2.Diff.parse_diff() (on ubuntu-latset CI github runner).
The error says:
pygit2.GitError: trailing data at line 3734
Here's the full diff: full_pr.diff.txt which was generated by github with the URL https://github.com/edunad/rawrbox/pull/108.diff
Line 3734 is
rename from render/content/fonts/SIL Open Font License.txt
I was able to reproduce this error locally on Windows. Is this expected behavior?
If I remove the spaces from the file name or put the entire path in quotes, then the diff is parsed without problem.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par pygit2.Diff.parse_diff() et reproduisez l’échec à l’aide du full_pr.diff.txt joint, en vous concentrant sur la ligne 3734 et le nom de fichier contenant des espaces. C’est terminé lorsque le diff fourni est analysé correctement sans nécessiter de renommer le fichier ni de le mettre entre guillemets.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- git, python
- Domaine
- tooling
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100