`pnpm create vite-plus` and `yarn create vite-plus` fail with `spawn vp ENOENT` when `vp` is not on PATH
Maintainers usually reply within 1 day
Assessment
This issue has not been assessed yet.
Description
Describe the bug
pnpm create vite-plus and yarn create vite-plus fail with spawn vp ENOENT at the dependency install step when no vp is on PATH. npm create vite-plus and bun create vite-plus succeed under the same conditions.
I expected create-vite-plus to work on a machine without a global Vite+ install, since it is the entry point recommended in #2970 and #3028.
The scaffold itself completes. Then vp create re-invokes vp install by bare command name (spawnargs: [ 'install' ]), and vp is not found. pnpm dlx and yarn dlx put only the bins of the requested package on PATH. After a pnpm create vite-plus run, the dlx directory's node_modules/.bin contains only create-vite-plus. vp belongs to the vite-plus dependency, so it is missing. npm's npx cache, by contrast, links vp and vpr next to create-vite-plus, which is why npm works. I did not inspect Yarn's dlx directory, but the symptom is the same.
A user with a global vp on PATH does not see this, because the bare vp then resolves to the global install. That install can also be a different version: here the global vp is 1.2.0 while create-vite-plus runs 1.3.0.
Reproduction
No repository needed; the steps below start from an empty directory.
Steps to reproduce
Use a shell whose PATH has Node.js and pnpm but no vp (I removed ~/.vite-plus/bin and kept the Node.js bin directory):
mkdir repro && cd repro
pnpm create [email protected] vite:application --directory app --no-agent --no-editor --no-git --no-hooks --no-interactive --verbose
# exit 1: spawn vp ENOENT
The same failure happens with --package-manager npm or --package-manager pnpm, and with Yarn 4.18.1:
corepack [email protected] create [email protected] vite:application --directory app --no-interactive --verbose
# exit 1: spawn vp ENOENT
For comparison, with the same PATH, these all exit 0 and install dependencies:
npm create [email protected] -- vite:application --directory app --no-interactive --verbose
bun create [email protected] vite:application --directory app --no-interactive --verbose
pnpm dlx --package [email protected] vp create vite:application --directory app --no-interactive --verbose
System Info
macOS (Darwin 27.0.0)
Node.js 24.22.0, pnpm 12.9.1 (Vite+ installed pnpm 12.14.0 for the template step), Yarn 4.18.1 through Corepack, npm 11.19.1, Bun 1.3.9
create-vite-plus 1.3.0, vite-plus 1.3.0
`vp --version` and `vp env current` are not applicable: the bug only reproduces without `vp` on PATH. The global vp on this machine, removed from PATH for the runs, reports v1.2.0.
Used Package Manager
pnpm (also Yarn)
Logs
Done in 97ms using pnpm v12.14.0
◆ ✔ Created vite.config.ts in app/vite.config.ts
◆ ✔ Merged staged config into app/vite.config.ts
▲ Failed to install git hooks
● Installing dependencies...
■ spawn vp ENOENT
Error: spawn vp ENOENT
at ChildProcess._handle.onexit (node:internal/child_process:316:19)
at onErrorNT (node:internal/child_process:554:16)
at process.processTicksAndRejections (node:internal/process/task_queues:90:21) {
errno: -2,
code: 'ENOENT',
syscall: 'spawn vp',
path: 'vp',
spawnargs: [ 'install' ]
}
Failed to generate code: spawn vp ENOENT
(That log comes from a run with --git --hooks, which also shows Failed to install git hooks, probably for the same reason.)
Validations
- Read the Contributing Guidelines.
- Checked that there isn't already an issue for the same bug.
- Confirmed this is a Vite+ issue and not an upstream issue.
- The provided reproduction is a minimal reproducible example.
- Dominant language
- Rust
- Stars
- 6.3k
- Forks
- 283
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 231
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from voidzero-dev/vite-plus
-
pending triage
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
voidzero-dev/vite-plus#2882 · 2 comments ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
voidzero-dev/vite-plus#2097 · 10 comments · 2 reactions ·
Maintainers usually reply within 1 day
-
vp migrate doesn't flag esbuild-specific config (minify: "esbuild") — migrated project fails to build on Vite 8Possibly taken @john-okeefe claimed this today. Opencontribution welcome
voidzero-dev/vite-plus#3176 · 1 reaction · 1 assignee ·
Maintainers usually reply within 1 day
-
`vp run`: scripts get a non-blocking stdin (EAGAIN) when `run` tasks in vite.config.ts use constantsOpenpending triage
Difficulty 4/5 3-5 days Newbie friendliness 55/100
voidzero-dev/vite-plus#3155 ·
Maintainers usually reply within 1 day
-
Document cross-platform `FOO=bar cmd` in task commands and scriptsPossibly taken @hyunbinseo claimed this 1 day ago. Opendocumentation
voidzero-dev/vite-plus#3140 · 2 comments · 1 assignee ·
Maintainers usually reply within 1 day
All issues in voidzero-dev/vite-plus
Similar issues
-
documentation priority:p2 type:chore
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
Maintainers usually reply within 1 day
-
dispatch:sol-high documentation
Difficulty 1/5 1-3 hours Newbie friendliness 85/100
carrick-sh/carrick#768 · 1 comment ·
Maintainers usually reply within 1 day
-
correctness postgres tursopg
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
tursodatabase/turso#10442 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
ankitects/anki#5864 · 1 reaction ·
Maintainers usually reply within 2 days
-
area: config effort: S good first issue P3 type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
ferenyl/azuredevopstui#63 ·