The Corepack install hint fails on Node.js 25 and later
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 78/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- javascript, node.js
- Ambito
- cli, developer-experience
Direzione di ricerca
Leggi lib/package-managers.js per le indicazioni di installazione di PACKAGE_MANAGERS e lib/commands.js per vedere come runCommand() le mostra e accetta dipendenze iniettate. Controlla i test esistenti per queste indicazioni, poi verifica i comandi suggeriti per le versioni di Node.js precedenti alla 25 e dalla 25 in poi. Il lavoro è completato quando le indicazioni per pnpm e Yarn funzionano con tutte le versioni di Node.js supportate ed entrambi i casi sono coperti dai test.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
When a project's package manager is not installed, the CLI suggests how to install it. For pnpm and Yarn, the first suggestion is Corepack:
Could not find pnpm, which this project uses. Install it with "corepack enable pnpm" or "npm install --global pnpm".
Node.js no longer ships Corepack since 25.0.0 (nodejs/node#57617, "build: stop distributing Corepack", semver-major; nodejs/node#59835 removed it from the release tarballs). Node.js 26 becomes the active LTS line on 2026-10-28, so a growing share of users will see a first suggestion that fails with corepack: command not found.
The second suggestion, npm install --global …, still works, so nobody is blocked. The first step offered is simply wrong on current Node.js versions.
Steps to reproduce
-
On Node.js 25 or 26, with pnpm not installed, create a pnpm project in a scratch workspace:
mkdir -p /tmp/dws-corepack/pnpm-app echo '{"packageManager":"[email protected]","scripts":{"hello":"echo hello"}}' \ > /tmp/dws-corepack/pnpm-app/package.json -
Start the CLI, open
pnpm-appand runhello:DEV_WORKSPACE_CONFIG=/tmp/dws-corepack/config.json \ npx -p @modulane/[email protected] dws --workspace /tmp/dws-corepack -
Follow the first suggestion:
corepack enable pnpm.
Actual behaviour
The CLI shows:
Could not start command: Could not find pnpm, which this project uses. Install it with "corepack enable pnpm" or "npm install --global pnpm".
On Node.js 25 and later the corepack command is not installed, so the first suggestion fails.
Expected behaviour
The suggestion works on every Node.js version that engines allows. For example:
- on Node.js 25 and later:
npm install --global corepack, thencorepack enable pnpm, ornpm install --global pnpm; - on earlier versions: the current text.
Where
PACKAGE_MANAGERSinpackage-managers.jsholds the install hints;runCommand()incommands.jsshows them.
Suggested fix
- Choose the pnpm and Yarn hints from the running Node.js major version (
process.versions.node). It can be passed in the same waycommands.jsalready accepts injected dependencies, so tests can check both texts. - Alternatively, keep a single text that works everywhere:
npm install --global corepackbeforecorepack enable. That is one step longer on Node.js 24 and earlier, where it is not needed. - The ROADMAP item "show an actionable error naming the tool and how to install it (for example,
corepack enable)" could mention the same.
I'm happy to open a PR with whichever option you prefer.
Environment
@modulane/dev-workspace-cli0.5.0 from npm.lib/is identical onmainat dfccb6b.- The message above comes from
PACKAGE_MANAGERSandrunCommand(). I did not run the CLI on Node.js 25 or 26 myself; Corepack's removal is documented in the 25.0.0 changelog.
- Lingua principale
- JavaScript
- Stelle
- 0
- Fork
- 0
- Merge medio
- 43m
- PR unite (30g)
- 20
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di modulane/dev-workspace-cli
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
modulane/dev-workspace-cli#26 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 22/100
modulane/dev-workspace-cli#54 ·
I maintainer di solito rispondono entro 1 giorno
-
Write the 1.0 documentationApertaenhancement help wanted
Difficoltà 4/5 3-5 giorni Idoneità per principianti 43/100
modulane/dev-workspace-cli#53 ·
I maintainer di solito rispondono entro 1 giorno
-
Clean up legacy behaviourApertaenhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
modulane/dev-workspace-cli#52 ·
I maintainer di solito rispondono entro 1 giorno
-
Freeze the public interfaceApertaenhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
modulane/dev-workspace-cli#51 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di modulane/dev-workspace-cli
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
-
tech-debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
srikanth235/centraid#1155 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
microsoft/monaco-editor#5563 ·
I maintainer di solito rispondono entro 1 giorno
-
Package downloads never retry: getUrlWithResuming's retry catch cannot see a rejected requestAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno