Concern about aliasing strategy in Vite-Plus
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Tranquilla
- Stack tecnologico
- typescript, vite
- Ambito
- build-system, developer-experience, tooling
Direzione di ricerca
Inizia da vite.config.ts e dalla superficie dei comandi di vp, quindi traccia gli alias, i wrapper, gli shim generati e le identità canoniche dei package o dei bin descritti nell'issue. Il lavoro sarebbe completato quando fosse definito un contratto di integrazione condiviso che riduca i casi speciali per i package manager, gli editor, i launcher LSP e il codice dell'utente; l'issue non identifica file o test concreti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
This follows from https://github.com/voidzero-dev/vite-plus/issues/1557 and the related Oxc discussion in https://github.com/oxc-project/oxc/issues/22539.
After looking through the current Vite+ codebase, I think my concern is more specific than "Vite+ ships special versions of everything".
The current setup has several different integration models at once:
viteis resolved through the@voidzero-dev/vite-plus-corealias.- Vite/Rolldown/tsdown are bundled/re-exported through
@voidzero-dev/vite-plus-core. vitestno longer uses the old@voidzero-dev/vite-plus-testwrapper, but Vite+ still exposes and migrates imports tovite-plus/test*, with runner/version pinning to keep a single Vitest instance.oxlintandoxfmtare upstream dependencies, but Vite+ still exposes canonicaloxlint/oxfmtbin names as IDE/LSP wrappers that inject Vite+ config-loading behavior.
Each individual piece has a reason, but together this creates an unclear contract for users and integrations: when should a tool continue looking for the canonical package/bin/import (vite, vitest, oxlint, oxfmt), and when should it know about vite-plus, vite-plus/test*, or vp?
That is the part that feels fragile. Package managers, editor extensions, LSP launchers, and user code all tend to assume canonical tool identities. When Vite+ needs wrappers, aliases, generated shims, and package-manager-specific edges, every integration can end up rediscovering the same special cases.
Suggested solution
What I suggested in the oxc issue.
- Keep
vpas the unified command surface. - Keep
vite.config.tsas the place where Vite+ can unify config for lint, format, test, build, pack, etc. - Let the individual tools use
vite.config.tswhen is available as well. - Treat Vite+ as the orchestrating layer over those tools, not as something that every tool identity has to be rewritten into.
Additional context
The specific thing I would like to avoid is Vite+ adoption requiring users and integrations to know a growing list of package identity rules.
As a user, I don't want to worry about having to maintain Vite+ wrappers, alias, or shim and how they get updated in tandem with the base tools that I already use.
Validations
- Read the Contributing Guidelines.
- Confirm this request is for Vite+ itself and not for Vite, Vitest, tsdown, Rolldown, or Oxc.
- Check that there isn't already an issue requesting the same feature.
- Lingua principale
- Rust
- Stelle
- 5.8k
- Fork
- 267
- Merge medio
- 21h 16m
- PR unite (30g)
- 147
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- 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 voidzero-dev/vite-plus
-
pending triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
voidzero-dev/vite-plus#2801 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
voidzero-dev/vite-plus#2097 · 10 commenti · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
vp check --no-lint still reports type-aware lint rules and ignores their disable commentsForse già presa @camc314 l’ha presa oggi. Aperta
voidzero-dev/vite-plus#2830 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
vp run: task output forwarding aborts with EAGAIN when stdout turns non-blocking mid-run (follow-up to #2165)Forse già presa @naokihaba l’ha presa 1 giorno fa. Apertabug
voidzero-dev/vite-plus#2824 · 3 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
pending triage
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
voidzero-dev/vite-plus#2816 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di voidzero-dev/vite-plus
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
solana-foundation/pay-kit#341 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
anthropics/buffa#487 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
arkworks-rs/algebra#1161 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
lbjlaq/Antigravity-Manager#3525 · 2 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
rustdesk/rustdesk-server#708 ·