`Commit.parent` can cause Nodegit promises to stop working

Ouverte
#2,009 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
25/100
Type d'issue
Bug
Clarté
À clarifier
Activité
À l'abandon
Stack technique
git, javascript, node.js
Domaine
backend, tooling

Piste de recherche

Commencez par la séquence fournie en utilisant Repository.open, getReferenceCommit et Commit.parent(0) sur deux dépôts dans un même processus, en gardant à l’esprit le contexte de Jest. Suivez la gestion des promesses autour de Commit.parent et vérifiez que les promesses liées aux commits des deux dépôts continuent à se résoudre indépendamment ; l’issue indique qu’un reproducer correct est toujours en attente.

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

Description

System information

  • node version: v22.4.1
  • npm or yarn version: pnpm 9.12.3
  • OS/version/architecture: Gentoo Linux amd64
  • Applicable nodegit version: 0.28.0-alpha.28

Description

Encountered while testing with Jest.

Calling commit.parent() causes promises from Nodegit related to commits to stop resolving in certain cases. So far, I've managed to reproduce this by opening two separate Git repos in the same process and calling commit.parent(0) on a commit on each of them. I'll create a proper reproducer later.

const repo1 = await Nodegit.Repository.open("repo1");
const commit1 = await repo1.getReferenceCommit("HEAD");
await commit1.parent(0);

const repo2 = await Nodegit.Repository.open("repo2");
const commit2 = await repo2.getReferenceCommit("HEAD");
await commit2.parent(0);
Langage dominant
JavaScript
Étoiles
5.8k
Forks
704
Métriques de merge des PR
Aucune PR mergée en 30 j

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.

Autres issues de nodegit/nodegit

Toutes les issues de nodegit/nodegit

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

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