Concern about aliasing strategy in Vite-Plus
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
- issue の種類
- 機能追加
- 明瞭さ
- 説明が足りない
- 活発さ
- 静か
- 技術スタック
- typescript, vite
調査の方向性
vite.config.ts と vp のコマンドサーフェスから始め、続いて issue で説明されている既存のエイリアス、ラッパー、生成された shim、canonical な package または bin の identity を追跡します。完了条件は、パッケージマネージャー、エディター、LSP ランチャー、ユーザーコードに関する特殊ケースを減らす、合意済みの統合契約が定められることです。この issue では具体的なファイルやテストは特定されていません。
索引モデルが issue の本文から書いたものです。
説明
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.
- 主要言語
- Rust
- スター
- 6k
- フォーク
- 274
- 平均マージ
- 1日 11時間
- マージ済み PR(30日)
- 196
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
voidzero-dev/vite-plus のほかの issue
-
`npx --package=vite-plus vp create` fails with exit 127 when npm is the chosen package manager対応中かも @Crimson341 が 1 日前に担当しました。 オープンbug
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
voidzero-dev/vite-plus#2970 ·
メンテナーはふだん 1 日以内に返信
-
pending triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
voidzero-dev/vite-plus#2882 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
voidzero-dev/vite-plus#2097 · コメント 10 件 · リアクション 2 件 ·
メンテナーはふだん 1 日以内に返信
-
vp treats a nested project as part of the parent's pnpm workspace, ignoring its own packageManager and lockfile対応中かも @liangmiQwQ が今日担当しました。 オープンbug enhancement
voidzero-dev/vite-plus#3013 · コメント 1 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
Windows: PowerShell installer (1.1.0) does not add vite-plus\bin to user PATH — 'vp' not recognized対応中かも @fengmk2 が 1 日前に担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 30/100
voidzero-dev/vite-plus#2984 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
voidzero-dev/vite-plus の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
extendr/extendr.github.io#134 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
bgreenwell/xleak#90 · リアクション 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
cloudflare/boring#530 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
project-robius/robrix#1154 ·
メンテナーはふだん 1 日以内に返信