Skip to content

feat(cli): add vp toolchain command - #2111

Open
fengmk2 wants to merge 2 commits into
mainfrom
rfc/toolchain-command
Open

feat(cli): add vp toolchain command#2111
fengmk2 wants to merge 2 commits into
mainfrom
rfc/toolchain-command

Conversation

@fengmk2

@fengmk2 fengmk2 commented Jul 9, 2026

Copy link
Copy Markdown
Member

Summary

Adds vp toolchain. The command shows the tools, versions, and relationships in the active Vite+ release. Package managers cannot show bundled or compiled relationships such as Vite -> Rolldown -> Oxc.

Vite Task no longer appears as vite-task@0.0.0. The output shows its native build time and source revision.

Output

$ vp toolchain vite vite-task

Vite+ toolchain (local)

vite-plus@0.2.8
|-- depends on @voidzero-dev/vite-plus-core@0.2.8
|   `-- bundles vite@8.2.1
|       `-- uses rolldown@1.2.3
|           |-- compiles oxc@0.143.0
|           `-- compiles oxc-resolver@11.24.2
`-- compiles vite-task (built <build-time>, revision <revision>)

Run vp toolchain to show the full tree. Add tool names to select part of the tree. Use --json for JSON output. Use --global to show the global release.

vp why keeps its package-manager behavior. For readable output, it shows a hint when Vite+ also provides a queried package.

An old local Vite+ release rejects the unknown command. The global CLI does not add a compatibility fallback.

The RFC remains Proposed for command and output review.

@netlify

netlify Bot commented Jul 9, 2026

Copy link
Copy Markdown

Deploy Preview for viteplus-preview canceled.

Name Link
🔨 Latest commit 16c5cfc
🔍 Latest deploy log https://app.netlify.com/projects/viteplus-preview/deploys/6a7a00497c5ef400087acb99

fengmk2 added a commit that referenced this pull request Jul 10, 2026
The size gate compared the PR head against the current tip of the base
branch. A branch that forked before a native-input change landed on main
failed the hash comparison and got a six-platform rebuild plus a size
report whose deltas came from commits already on main. #2111 hit this:
an RFC-only PR received the size report for the #2104 dependency
upgrade.

The gate now resolves the merge base and both compares and builds
against it. The build runs only when the PR itself changes a native
input, and the report covers only the PR's own delta. PRs that edit this
workflow file still trigger a run.

The run on this PR exercised the new path end to end: base built at the
merge base, head at the PR, and the size report shows 0 B raw delta on
every artifact.
@fengmk2 fengmk2 self-assigned this Aug 4, 2026
@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 5cc88c7 to 991f8e5 Compare August 4, 2026 08:35
@fengmk2 fengmk2 changed the title docs(rfc): propose vp toolchain inspection command feat(cli): add vp toolchain inspection command Aug 4, 2026
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

✅ Staging deployment successful!

Preview: https://viteplus-staging.void.app/
Commit: 16c5cfc

@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Native binary sizes (16c5cfc)

Final release artifacts built by the canonical build-upstream and build-windows-cli actions.

Artifact Format Base PR Change
vp (Linux x64) Binary 10.52 MiB 10.65 MiB +128.00 KiB (+1.19%)
vp (Linux x64) gzip -9 4.55 MiB 4.61 MiB +55.92 KiB (+1.20%)
NAPI (Linux x64) Binary 33.68 MiB 33.80 MiB +124.00 KiB (+0.36%)
NAPI (Linux x64) gzip -9 13.08 MiB 13.13 MiB +50.43 KiB (+0.38%)
vp (macOS ARM64) Binary 7.87 MiB 7.95 MiB +80.83 KiB (+1.00%)
vp (macOS ARM64) gzip -9 3.97 MiB 4.02 MiB +51.72 KiB (+1.27%)
NAPI (macOS ARM64) Binary 41.00 MiB 41.11 MiB +113.03 KiB (+0.27%)
NAPI (macOS ARM64) gzip -9 17.31 MiB 17.35 MiB +44.75 KiB (+0.25%)
vp (Windows x64) Binary 8.41 MiB 8.52 MiB +115.50 KiB (+1.34%)
vp (Windows x64) gzip -9 3.67 MiB 3.72 MiB +53.31 KiB (+1.42%)
NAPI (Windows x64) Binary 27.77 MiB 27.88 MiB +111.00 KiB (+0.39%)
NAPI (Windows x64) gzip -9 10.89 MiB 10.94 MiB +46.94 KiB (+0.42%)
Trampoline (Windows x64) Binary 205.00 KiB 205.00 KiB 0 B (0.00%)
Trampoline (Windows x64) gzip -9 99.00 KiB 99.00 KiB 0 B (0.00%)
Installer (Windows x64) Binary 4.45 MiB 4.45 MiB 0 B (0.00%)
Installer (Windows x64) gzip -9 2.09 MiB 2.09 MiB +2 B (+0.00%)

@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch 4 times, most recently from f63bac6 to 59b6626 Compare August 6, 2026 07:49
@fengmk2 fengmk2 changed the title feat(cli): add vp toolchain inspection command feat(cli): add vp toolchain command Aug 6, 2026
@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch 2 times, most recently from cef5191 to d3e4477 Compare August 9, 2026 12:40
@fengmk2

This comment was marked as resolved.

Comment thread crates/vp_toolchain/src/lib.rs Outdated
Comment thread crates/vp_global_cli/src/help.rs Outdated
chatgpt-codex-connector[bot]

This comment was marked as resolved.

@fengmk2

This comment was marked as resolved.

chatgpt-codex-connector[bot]

This comment was marked as resolved.

@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 3b63282 to bcb67cc Compare August 10, 2026 01:06
@fengmk2

This comment was marked as resolved.

@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 95b3c52 to f11b183 Compare August 10, 2026 03:35
chatgpt-codex-connector[bot]

This comment was marked as resolved.

@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from f11b183 to 44313d0 Compare August 10, 2026 03:53
@fengmk2

This comment was marked as resolved.

chatgpt-codex-connector[bot]

This comment was marked as resolved.

@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 44313d0 to a0f2f54 Compare August 10, 2026 04:12
@fengmk2

This comment was marked as resolved.

@fengmk2

fengmk2 commented Aug 10, 2026

Copy link
Copy Markdown
Member Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Breezy!

Reviewed commit: f46be24ec0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from f46be24 to e8cf7de Compare August 10, 2026 04:50
@fengmk2
fengmk2 marked this pull request as ready for review August 10, 2026 04:55
@fengmk2 fengmk2 added the preview-build Publish this PR's commits to the registry bridge as preview builds label Aug 10, 2026
@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from e8cf7de to 1f1a595 Compare August 10, 2026 06:02
@fengmk2 fengmk2 added test: e2e Auto run e2e tests test: install-e2e run vite install e2e test test: create-e2e Run `vp create` e2e tests test: sfw preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Aug 10, 2026
@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 1f1a595 to 0e6798d Compare August 10, 2026 07:31

@TheAlexLichter TheAlexLichter left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great start on this! in the future we could also warn if versions do not align for example?

@fengmk2

fengmk2 commented Aug 10, 2026

Copy link
Copy Markdown
Member Author

Great start on this! in the future we could also warn if versions do not align for example?

@TheAlexLichter Yes, we can prompt the user whether to upgrade.

@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 0e6798d to f689079 Compare August 10, 2026 08:34
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Aug 10, 2026
@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 01e1c5d to 1af2327 Compare August 10, 2026 16:11
@fengmk2 fengmk2 added preview-build Publish this PR's commits to the registry bridge as preview builds and removed preview-build Publish this PR's commits to the registry bridge as preview builds labels Aug 10, 2026
@fengmk2
fengmk2 force-pushed the rfc/toolchain-command branch from 1af2327 to 16c5cfc Compare August 10, 2026 16:45
@github-actions

Copy link
Copy Markdown
Contributor

Registry bridge build (1af2327)

This commit build is published to the registry bridge, which serves these as ordinary npm versions (every other package proxies to npmjs):

Package Version
vite-plus 0.0.0-commit.1af232781967a8d1c2b9667f185c2a333a8d74ab
@voidzero-dev/vite-plus-core 0.0.0-commit.1af232781967a8d1c2b9667f185c2a333a8d74ab

Install the Vite+ CLI built from this commit, then migrate a project:

# macOS / Linux
curl -fsSL https://vite.plus | VP_PR_VERSION=2111 bash
# Windows (PowerShell)
$env:VP_PR_VERSION="2111"; irm https://vite.plus/ps1 | iex

After installing, upgrade the current project's vite-plus to this test build with:

vp migrate

Or point your package manager at the bridge registry https://registry-bridge.viteplus.dev/:

Package manager Registry config
npm / pnpm / Bun .npmrc: registry=https://registry-bridge.viteplus.dev/
Yarn (v2+) .yarnrc.yml: npmRegistryServer: "https://registry-bridge.viteplus.dev/"

Then pin the build (vite aliases to vite-plus-core; pnpm can use a catalog, npm an overrides entry):

{
  "devDependencies": {
    "vite-plus": "0.0.0-commit.1af232781967a8d1c2b9667f185c2a333a8d74ab",
    "vite": "npm:@voidzero-dev/vite-plus-core@0.0.0-commit.1af232781967a8d1c2b9667f185c2a333a8d74ab"
  }
}

@github-actions

Copy link
Copy Markdown
Contributor

🐳 Docker preview image

Built from this PR's registry bridge build:

Image Compressed size
ghcr.io/voidzero-dev/vite-plus:pr-2111 236MB
# remove any stale local copy from a previous run, then pull fresh
docker rmi ghcr.io/voidzero-dev/vite-plus:pr-2111 2>/dev/null; docker pull ghcr.io/voidzero-dev/vite-plus:pr-2111

Quick check:

docker run --rm ghcr.io/voidzero-dev/vite-plus:pr-2111 vp --version

See docs/guide/docker.md for usage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

preview-build Publish this PR's commits to the registry bridge as preview builds test: create-e2e Run `vp create` e2e tests test: e2e Auto run e2e tests test: install-e2e run vite install e2e test test: sfw

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants