yarn.lock resolves eslint-plugin-jest's @typescript-eslint/utils to 8.39.1, whose TypeScript peer excludes the repo's TypeScript 6.0.3

Ouverte Adaptée aux débutants
#59,945 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 2 jours

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
76/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
javascript, typescript

Piste de recherche

Commencez par yarn.lock et examinez les résolutions de @typescript-eslint/utils utilisées par eslint-plugin-jest et la racine. Comparez leurs plages de peer dependency de TypeScript, puis vérifiez la mise à jour du lockfile avec la reproduction de l’issue à l’aide de yarn install --frozen-lockfile. Le travail est terminé lorsque eslint-plugin-jest résout une version compatible et que les quatre avertissements incorrects de peer dependency ont disparu.

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

Description

Description

https://github.com/react/react-native/pull/56772 moved the root to typescript ^6.0.3 and @typescript-eslint/* to ^8.59.2 for TypeScript 6 compatibility, but yarn.lock still resolves eslint-plugin-jest's "@typescript-eslint/utils@^8.0.0" to 8.39.1. yarn install places that copy under node_modules/eslint-plugin-jest/, and its typescript-estree, project-service and tsconfig-utils declare typescript >=4.8.4 <6.0.0, so every install on main warns four times. The 8.59.2 the root already installs satisfies ^8.0.0 and declares >=4.8.4 <6.1.0.

Steps to reproduce
  1. In a clone of main, run yarn install --frozen-lockfile; or run bash repro.sh from the reproducer below, which clones main, installs with --ignore-scripts and reads which @typescript-eslint/utils eslint-plugin-jest loads.

Expected: eslint-plugin-jest loads a @typescript-eslint/utils whose TypeScript peer includes 6.0.3, such as the 8.59.2 the root installs, and the install prints no incorrect peer dependency "typescript@>=4.8.4 <6.0.0" warning.
Actual: it loads 8.39.1 from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/utils, and the install prints the four warnings below.

React Native Version

main (b9a83f3)

Affected Platforms

Build - Windows

Output of npx @react-native-community/cli info

Not applicable: this is the repository's own yarn.lock. The reproducer's run: react-native b9a83f3 (2026-11-11), node v26.12.1, yarn 1.22.22, MINGW64_NT-10.0-26300 x86_64

Stacktrace or Logs
react-native b9a83f3 (2026-11-11), node v26.12.1, yarn 1.22.22, MINGW64_NT-10.0-26300 x86_64
yarn install --frozen-lockfile --ignore-scripts:
warning "eslint-plugin-jest > @typescript-eslint/[email protected]" has incorrect peer dependency "typescript@>=4.8.4 <6.0.0".
warning "eslint-plugin-jest > @typescript-eslint/utils > @typescript-eslint/[email protected]" has incorrect peer dependency "typescript@>=4.8.4 <6.0.0".
warning "eslint-plugin-jest > @typescript-eslint/utils > @typescript-eslint/typescript-estree > @typescript-eslint/[email protected]" has incorrect peer dependency "typescript@>=4.8.4 <6.0.0".
warning "eslint-plugin-jest > @typescript-eslint/utils > @typescript-eslint/typescript-estree > @typescript-eslint/[email protected]" has incorrect peer dependency "typescript@>=4.8.4 <6.0.0".
eslint-plugin-jest 29.0.1 loads @typescript-eslint/utils 8.39.1 from node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/utils
its @typescript-eslint/typescript-estree 8.39.1 declares the peer typescript >=4.8.4 <6.0.0
the repository installs typescript 6.0.3
SUMMARY: eslint-plugin-jest's @typescript-eslint/utils 8.39.1 supports typescript >=4.8.4 <6.0.0, and the repository installs typescript 6.0.3
MANDATORY Reproducer

https://gist.github.com/YevheniiKotyrlo/db82046b02b7939e3c328f5d80b86009 — bash repro.sh exits 1 while eslint-plugin-jest loads a @typescript-eslint/utils whose TypeScript peer excludes the repository's TypeScript, and 0 once it includes it.

Screenshots and Videos

No response

Langage dominant
C++
Étoiles
127k
Forks
25.5k
Merge moyen
3 j 18 h
PR mergées (30 j)
188

Préparer son environnement

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 react/react-native

Toutes les issues de react/react-native

Issues similaires

Plus d'issues C++

Recevez les nouvelles issues par e-mail

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