Support external `vp-<command>` executables, as Git and Cargo do
Maintainer antworten meist innerhalb von 1 Tag
@cpojer arbeitet bereits daran.
Seit 22.10.2026.
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
Problem
Workspace tool authors cannot expose a command such as vp pr gen: the global
CLI rejects pr before the workspace's JavaScript implementation can run.
Today our workspace runs the same tool with vp exec vpp pr gen.
Reproduction
With an executable named vp-pr installed in the workspace's node_modules/.bin,
vp pr --help should be able to run that executable with --help. With Vite+
1.3.0 installed, the current command exits 2 with error: Command 'pr' not found.
Patching the local dist/bin.js dispatcher does not help: it is never reached.
Checked source
Inspected the official repository at commit
733b973ebe26f097ebe007cb079b2ee64b2f7217 in ~/repo-references/vite-plus:
main.rs:522
callstry_parse_args_frombefore command execution.main.rs:537
handlesInvalidSubcommandas an error/suggestion. Only the successful parse
arm reachesrun_commandat line 583.cli.rs:69
declares the closedCommandsenum. It has no external-subcommand arm.cli.rs:1298
calls clap'stry_get_matches_fromandArgs::from_arg_matches.cli.rs:1179
already routesexecthrough the managed local executable path.
Proposal
Support Git/Cargo-style external subcommands: when no built-in matches foo,
resolve vp-foo using the same managed runtime and workspace executable
resolution as vp exec, then forward the remaining argv unchanged.
Built-ins retain precedence. Unknown names still fail with the existing useful
error when no executable exists. No implicit package download or install is
needed. Preserve cwd, -C, stdout/stderr, exit status, signals, --, and platform
executable/shim behavior. A locally installed extension should be explicitly
available in the workspace, not inferred from a matching package name.
This gives workspace extensions a natural command without modifying Vite+'s
built-in command set or maintaining an unreachable JavaScript dispatch patch.
Suggested acceptance cases
vp foo a --flag -- valueexecutesvp-foowith exact argument boundaries.- Existing built-ins win over a same-name executable.
- Workspace executable resolution and
-Cbehave likevp exec. - Missing executable retains the unknown-command error; no download occurs.
- Child exit code and termination signals propagate.
- Unix executables and Windows executable shims both work.
- Vorherrschende Sprache
- Rust
- Sterne
- 6.5k
- Forks
- 297
- Ø Merge
- 20 Std. 18 Min.
- Gemergte PRs (30 T.)
- 236
Entwicklungsumgebung
Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus voidzero-dev/vite-plus
-
triage: not actionable
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
voidzero-dev/vite-plus#3296 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
pending triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 63/100
voidzero-dev/vite-plus#3235 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Docker guide: the runtime stage needs libatomic1 for Node.js 25 and laterEvtl. vergeben @kshanxs hat das vor 9 Tagen übernommen. Offendocumentation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
voidzero-dev/vite-plus#3219 · 2 Kommentare · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
pending triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
voidzero-dev/vite-plus#2882 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Upgrade Upstream Dependencies timed outEvtl. vergeben @fengmk2 hat das heute übernommen. Offenupgrade-deps-timeout
voidzero-dev/vite-plus#3319 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in voidzero-dev/vite-plus
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
test(hydro_std): track_membership join and leave are untestedEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
hydro-project/hydro#3289 ·
Maintainer antworten meist innerhalb von 1 Tag
-
diagram-bug good first issue help wanted
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
enhapu-afk/omaspec#4 ·
-
priority: low ☕️ type: bug 🐛
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug security
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Maintainer antworten meist innerhalb von 4 Tagen