From 1fed87d4b205d925a700c35a5212d60c058f506a Mon Sep 17 00:00:00 2001 From: "voidzero-guard[bot]" <278573678+voidzero-guard[bot]@users.noreply.github.com> Date: Tue, 19 May 2026 15:37:24 +0000 Subject: [PATCH 1/6] release: v0.1.22 --- Cargo.lock | 4 ++-- crates/vite_global_cli/Cargo.toml | 2 +- packages/cli/binding/Cargo.toml | 2 +- packages/cli/package.json | 2 +- packages/core/package.json | 2 +- packages/test/package.json | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 42bdc791ff..35d888b470 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -7454,7 +7454,7 @@ dependencies = [ [[package]] name = "vite-plus-cli" -version = "0.0.0" +version = "0.1.22" dependencies = [ "anyhow", "async-trait", @@ -7538,7 +7538,7 @@ dependencies = [ [[package]] name = "vite_global_cli" -version = "0.0.0" +version = "0.1.22" dependencies = [ "chrono", "clap", diff --git a/crates/vite_global_cli/Cargo.toml b/crates/vite_global_cli/Cargo.toml index d1fdb3f08c..ab914d5911 100644 --- a/crates/vite_global_cli/Cargo.toml +++ b/crates/vite_global_cli/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "vite_global_cli" -version = "0.0.0" +version = "0.1.22" authors.workspace = true edition.workspace = true license.workspace = true diff --git a/packages/cli/binding/Cargo.toml b/packages/cli/binding/Cargo.toml index 77d50be468..056b1c9bb6 100644 --- a/packages/cli/binding/Cargo.toml +++ b/packages/cli/binding/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "vite-plus-cli" -version = "0.0.0" +version = "0.1.22" authors.workspace = true edition.workspace = true license.workspace = true diff --git a/packages/cli/package.json b/packages/cli/package.json index 6dfcf73ff3..1c93c5e3f4 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -1,6 +1,6 @@ { "name": "vite-plus", - "version": "0.0.0", + "version": "0.1.22", "description": "The Unified Toolchain for the Web", "homepage": "https://viteplus.dev/guide", "bugs": { diff --git a/packages/core/package.json b/packages/core/package.json index 083193d55b..70228f7845 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@voidzero-dev/vite-plus-core", - "version": "0.0.0", + "version": "0.1.22", "description": "The Unified Toolchain for the Web", "homepage": "https://viteplus.dev/guide", "bugs": { diff --git a/packages/test/package.json b/packages/test/package.json index 43ac5a593f..7bc76b2b1d 100644 --- a/packages/test/package.json +++ b/packages/test/package.json @@ -1,6 +1,6 @@ { "name": "@voidzero-dev/vite-plus-test", - "version": "0.0.0", + "version": "0.1.22", "description": "The Unified Toolchain for the Web", "homepage": "https://viteplus.dev/guide", "bugs": { From 5cda47d1df3fd0a1be6641ea9cfa5b7ee8f08b48 Mon Sep 17 00:00:00 2001 From: MK Date: Wed, 20 May 2026 00:04:18 +0800 Subject: [PATCH 2/6] chore(release): sync binding/index.cjs version to 0.1.22 NAPI bakes the package.json version into binding/index.cjs version checks. The prepare_release workflow bumps package.json but does not regenerate this file, so the CI build's regeneration step produces a diff that the post-build no-unexpected-changes guard rejects. --- packages/cli/binding/index.cjs | 104 ++++++++++++++++----------------- 1 file changed, 52 insertions(+), 52 deletions(-) diff --git a/packages/cli/binding/index.cjs b/packages/cli/binding/index.cjs index 8abc4ebbef..58a8f9ee03 100644 --- a/packages/cli/binding/index.cjs +++ b/packages/cli/binding/index.cjs @@ -81,12 +81,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-android-arm64/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -104,12 +104,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-android-arm-eabi/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -135,12 +135,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-win32-x64-gnu/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -158,12 +158,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-win32-x64-msvc/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -182,12 +182,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-win32-ia32-msvc/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -205,12 +205,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-win32-arm64-msvc/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -231,12 +231,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-darwin-universal/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -254,12 +254,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-darwin-x64/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -277,12 +277,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-darwin-arm64/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -304,12 +304,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-freebsd-x64/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -327,12 +327,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-freebsd-arm64/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -355,12 +355,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-x64-musl/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -378,12 +378,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-x64-gnu/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -403,12 +403,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-arm64-musl/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -426,12 +426,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-arm64-gnu/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -451,12 +451,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-arm-musleabihf/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -474,12 +474,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-arm-gnueabihf/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -499,12 +499,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-loong64-musl/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -522,12 +522,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-loong64-gnu/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -547,12 +547,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-riscv64-musl/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -570,12 +570,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-riscv64-gnu/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -594,12 +594,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-ppc64-gnu/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -617,12 +617,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-linux-s390x-gnu/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -644,12 +644,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-openharmony-arm64/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -667,12 +667,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-openharmony-x64/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; @@ -690,12 +690,12 @@ function requireNative() { const bindingPackageVersion = require('@voidzero-dev/vite-plus-openharmony-arm/package.json').version; if ( - bindingPackageVersion !== '0.0.0' && + bindingPackageVersion !== '0.1.22' && process.env.NAPI_RS_ENFORCE_VERSION_CHECK && process.env.NAPI_RS_ENFORCE_VERSION_CHECK !== '0' ) { throw new Error( - `Native binding package version mismatch, expected 0.0.0 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, + `Native binding package version mismatch, expected 0.1.22 but got ${bindingPackageVersion}. You can reinstall dependencies to fix this issue.`, ); } return binding; From 28a85010e60adbf2035ef4315be60a93e9f43b16 Mon Sep 17 00:00:00 2001 From: MK Date: Wed, 20 May 2026 00:29:51 +0800 Subject: [PATCH 3/6] ci: resolve packed tgz paths dynamically instead of hardcoding 0.0.0 The e2e-test and test-vp-create workflows referenced tmp/tgz/vite-plus-0.0.0.tgz (and the voidzero-dev-vite-plus-{core,test} variants) by literal name. On main this works because package.json has version 0.0.0, but on release branches (e.g. release/v0.1.22) the prepare_release workflow bumps the version, so pnpm pack emits vite-plus-0.1.22.tgz and the install step fails with "tgz file not found". Resolve each tgz via shell glob and lift VP_VERSION / VP_OVERRIDE_PACKAGES into a step that writes the file: URLs to GITHUB_ENV. Also read the expected installed version from packages/cli/package.json so the "Verify local tgz packages installed" check stays in sync. --- .github/workflows/e2e-test.yml | 3 ++- .github/workflows/test-vp-create.yml | 22 ++++++++++++++++------ 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 03c3830ca3..6682475f38 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -392,7 +392,8 @@ jobs: cp tmp/tgz/vp target/release/vp 2>/dev/null || cp tmp/tgz/vp.exe target/release/vp.exe 2>/dev/null || true cp tmp/tgz/vp-shim.exe target/release/vp-shim.exe 2>/dev/null || true chmod +x target/release/vp 2>/dev/null || true - node $GITHUB_WORKSPACE/packages/tools/src/install-global-cli.ts --tgz $GITHUB_WORKSPACE/tmp/tgz/vite-plus-0.0.0.tgz + VP_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/vite-plus-*.tgz | head -n1) + node $GITHUB_WORKSPACE/packages/tools/src/install-global-cli.ts --tgz "$VP_TGZ" # Use USERPROFILE (native Windows path) instead of HOME (Git Bash path /c/Users/...) # so cmd.exe and Node.js execSync can resolve binaries in PATH echo "${USERPROFILE:-$HOME}/.vite-plus/bin" >> $GITHUB_PATH diff --git a/.github/workflows/test-vp-create.yml b/.github/workflows/test-vp-create.yml index 50fe50e4e0..4a295f245b 100644 --- a/.github/workflows/test-vp-create.yml +++ b/.github/workflows/test-vp-create.yml @@ -152,8 +152,6 @@ jobs: - yarn - bun env: - VP_OVERRIDE_PACKAGES: '{"vite":"file:${{ github.workspace }}/tmp/tgz/voidzero-dev-vite-plus-core-0.0.0.tgz","vitest":"file:${{ github.workspace }}/tmp/tgz/voidzero-dev-vite-plus-test-0.0.0.tgz","@voidzero-dev/vite-plus-core":"file:${{ github.workspace }}/tmp/tgz/voidzero-dev-vite-plus-core-0.0.0.tgz","@voidzero-dev/vite-plus-test":"file:${{ github.workspace }}/tmp/tgz/voidzero-dev-vite-plus-test-0.0.0.tgz"}' - VP_VERSION: 'file:${{ github.workspace }}/tmp/tgz/vite-plus-0.0.0.tgz' # Force full dependency rewriting so the library template's existing # vite-plus dep gets overridden with the local tgz VP_FORCE_MIGRATE: '1' @@ -170,12 +168,22 @@ jobs: name: vite-plus-packages path: tmp/tgz + - name: Resolve tgz paths + run: | + CLI_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/vite-plus-*.tgz | head -n1) + CORE_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/voidzero-dev-vite-plus-core-*.tgz | head -n1) + TEST_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/voidzero-dev-vite-plus-test-*.tgz | head -n1) + echo "CLI_TGZ=$CLI_TGZ" >> $GITHUB_ENV + echo "VP_VERSION=file:$CLI_TGZ" >> $GITHUB_ENV + printf 'VP_OVERRIDE_PACKAGES={"vite":"file:%s","vitest":"file:%s","@voidzero-dev/vite-plus-core":"file:%s","@voidzero-dev/vite-plus-test":"file:%s"}\n' \ + "$CORE_TGZ" "$TEST_TGZ" "$CORE_TGZ" "$TEST_TGZ" >> $GITHUB_ENV + - name: Install vp CLI run: | mkdir -p target/release cp tmp/tgz/vp target/release/vp chmod +x target/release/vp - node $GITHUB_WORKSPACE/packages/tools/src/install-global-cli.ts --tgz $GITHUB_WORKSPACE/tmp/tgz/vite-plus-0.0.0.tgz + node $GITHUB_WORKSPACE/packages/tools/src/install-global-cli.ts --tgz "$CLI_TGZ" echo "$HOME/.vite-plus/bin" >> $GITHUB_PATH - name: Verify vp installation @@ -256,11 +264,13 @@ jobs: - name: Verify local tgz packages installed working-directory: ${{ runner.temp }}/test-project run: | - node -e " + EXPECTED_VERSION=$(node -p "require('$GITHUB_WORKSPACE/packages/cli/package.json').version") + EXPECTED_VERSION="$EXPECTED_VERSION" node -e " const path = require('path'); + const expected = process.env.EXPECTED_VERSION; const pkg = require(path.resolve('node_modules/vite-plus/package.json')); - if (pkg.version !== '0.0.0') { - console.error('Expected vite-plus@0.0.0, got ' + pkg.version); + if (pkg.version !== expected) { + console.error('Expected vite-plus@' + expected + ', got ' + pkg.version); process.exit(1); } console.log('✓ vite-plus@' + pkg.version + ' installed correctly'); From d0609c1ce9faf9980fd65c590a3b8aa1db5daf80 Mon Sep 17 00:00:00 2001 From: MK Date: Wed, 20 May 2026 00:35:06 +0800 Subject: [PATCH 4/6] ci: simplify verify step and anchor tgz globs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Drop the shell-var → env-var → process.env round-trip in the "Verify local tgz packages installed" step; the node script can require() the cli package.json directly. - Anchor tgz globs to -[0-9]*.tgz so the vite-plus-*.tgz pattern cannot accidentally match a future sibling package without a version suffix. - Quote $GITHUB_WORKSPACE expansions. --- .github/workflows/e2e-test.yml | 4 ++-- .github/workflows/test-vp-create.yml | 11 +++++------ 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6682475f38..4c2ab8f3de 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -392,8 +392,8 @@ jobs: cp tmp/tgz/vp target/release/vp 2>/dev/null || cp tmp/tgz/vp.exe target/release/vp.exe 2>/dev/null || true cp tmp/tgz/vp-shim.exe target/release/vp-shim.exe 2>/dev/null || true chmod +x target/release/vp 2>/dev/null || true - VP_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/vite-plus-*.tgz | head -n1) - node $GITHUB_WORKSPACE/packages/tools/src/install-global-cli.ts --tgz "$VP_TGZ" + VP_TGZ=$(ls "$GITHUB_WORKSPACE"/tmp/tgz/vite-plus-[0-9]*.tgz | head -n1) + node "$GITHUB_WORKSPACE"/packages/tools/src/install-global-cli.ts --tgz "$VP_TGZ" # Use USERPROFILE (native Windows path) instead of HOME (Git Bash path /c/Users/...) # so cmd.exe and Node.js execSync can resolve binaries in PATH echo "${USERPROFILE:-$HOME}/.vite-plus/bin" >> $GITHUB_PATH diff --git a/.github/workflows/test-vp-create.yml b/.github/workflows/test-vp-create.yml index 4a295f245b..07c5a25554 100644 --- a/.github/workflows/test-vp-create.yml +++ b/.github/workflows/test-vp-create.yml @@ -170,9 +170,9 @@ jobs: - name: Resolve tgz paths run: | - CLI_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/vite-plus-*.tgz | head -n1) - CORE_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/voidzero-dev-vite-plus-core-*.tgz | head -n1) - TEST_TGZ=$(ls $GITHUB_WORKSPACE/tmp/tgz/voidzero-dev-vite-plus-test-*.tgz | head -n1) + CLI_TGZ=$(ls "$GITHUB_WORKSPACE"/tmp/tgz/vite-plus-[0-9]*.tgz | head -n1) + CORE_TGZ=$(ls "$GITHUB_WORKSPACE"/tmp/tgz/voidzero-dev-vite-plus-core-[0-9]*.tgz | head -n1) + TEST_TGZ=$(ls "$GITHUB_WORKSPACE"/tmp/tgz/voidzero-dev-vite-plus-test-[0-9]*.tgz | head -n1) echo "CLI_TGZ=$CLI_TGZ" >> $GITHUB_ENV echo "VP_VERSION=file:$CLI_TGZ" >> $GITHUB_ENV printf 'VP_OVERRIDE_PACKAGES={"vite":"file:%s","vitest":"file:%s","@voidzero-dev/vite-plus-core":"file:%s","@voidzero-dev/vite-plus-test":"file:%s"}\n' \ @@ -264,10 +264,9 @@ jobs: - name: Verify local tgz packages installed working-directory: ${{ runner.temp }}/test-project run: | - EXPECTED_VERSION=$(node -p "require('$GITHUB_WORKSPACE/packages/cli/package.json').version") - EXPECTED_VERSION="$EXPECTED_VERSION" node -e " + node -e " const path = require('path'); - const expected = process.env.EXPECTED_VERSION; + const expected = require('$GITHUB_WORKSPACE/packages/cli/package.json').version; const pkg = require(path.resolve('node_modules/vite-plus/package.json')); if (pkg.version !== expected) { console.error('Expected vite-plus@' + expected + ', got ' + pkg.version); From 9a45e6262f6a73ad57eb8104641657a950b2ca98 Mon Sep 17 00:00:00 2001 From: MK Date: Wed, 20 May 2026 00:37:02 +0800 Subject: [PATCH 5/6] ci(ecosystem): read vite-plus version from package.json instead of hardcoding 0.0.0 Both ecosystem-ci helpers hardcoded 0.0.0 in the tgz paths and the expected installed version. On a release branch (e.g. release/v0.1.22) those paths and that version mismatch the freshly packed artifacts, so the second `vp install` in the ecosystem job fails with ENOENT on vite-plus-0.0.0.tgz. Resolve the version once from packages/cli/package.json in each script. --- ecosystem-ci/patch-project.ts | 21 +++++++++++++++------ ecosystem-ci/verify-install.ts | 7 ++++++- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/ecosystem-ci/patch-project.ts b/ecosystem-ci/patch-project.ts index 636fc399f9..5c3ea73070 100644 --- a/ecosystem-ci/patch-project.ts +++ b/ecosystem-ci/patch-project.ts @@ -1,10 +1,19 @@ import { execSync } from 'node:child_process'; import { readFile, writeFile } from 'node:fs/promises'; -import { join } from 'node:path'; +import { dirname, join } from 'node:path'; +import { fileURLToPath } from 'node:url'; import { ecosystemCiDir, tgzDir } from './paths.ts'; import repos from './repo.json' with { type: 'json' }; +const cliPkg = JSON.parse( + await readFile( + join(dirname(fileURLToPath(import.meta.url)), '..', 'packages', 'cli', 'package.json'), + 'utf-8', + ), +) as { version: string }; +const vpVersion = cliPkg.version; + const projects = Object.keys(repos); const project = process.argv[2]; @@ -54,11 +63,11 @@ execSync(`${cli} migrate --no-agent --no-interactive`, { ...process.env, ...(forceFreshMigration ? { VP_FORCE_MIGRATE: '1' } : {}), VP_OVERRIDE_PACKAGES: JSON.stringify({ - vite: `file:${tgzDir}/voidzero-dev-vite-plus-core-0.0.0.tgz`, - vitest: `file:${tgzDir}/voidzero-dev-vite-plus-test-0.0.0.tgz`, - '@voidzero-dev/vite-plus-core': `file:${tgzDir}/voidzero-dev-vite-plus-core-0.0.0.tgz`, - '@voidzero-dev/vite-plus-test': `file:${tgzDir}/voidzero-dev-vite-plus-test-0.0.0.tgz`, + vite: `file:${tgzDir}/voidzero-dev-vite-plus-core-${vpVersion}.tgz`, + vitest: `file:${tgzDir}/voidzero-dev-vite-plus-test-${vpVersion}.tgz`, + '@voidzero-dev/vite-plus-core': `file:${tgzDir}/voidzero-dev-vite-plus-core-${vpVersion}.tgz`, + '@voidzero-dev/vite-plus-test': `file:${tgzDir}/voidzero-dev-vite-plus-test-${vpVersion}.tgz`, }), - VP_VERSION: `file:${tgzDir}/vite-plus-0.0.0.tgz`, + VP_VERSION: `file:${tgzDir}/vite-plus-${vpVersion}.tgz`, }, }); diff --git a/ecosystem-ci/verify-install.ts b/ecosystem-ci/verify-install.ts index 984994bded..0aac527d3d 100644 --- a/ecosystem-ci/verify-install.ts +++ b/ecosystem-ci/verify-install.ts @@ -1,8 +1,13 @@ import { createRequire } from 'node:module'; +import { dirname, join } from 'node:path'; +import { fileURLToPath } from 'node:url'; const require = createRequire(`${process.cwd()}/`); -const expectedVersion = '0.0.0'; +const cliPkg = require( + join(dirname(fileURLToPath(import.meta.url)), '..', 'packages', 'cli', 'package.json'), +) as { version: string }; +const expectedVersion = cliPkg.version; try { const pkg = require('vite-plus/package.json') as { version: string; name: string }; From 373a1a664289089a43e2feaa5617cde58fed9476 Mon Sep 17 00:00:00 2001 From: MK Date: Wed, 20 May 2026 00:39:57 +0800 Subject: [PATCH 6/6] refactor(ecosystem-ci): use JSON import attribute for cli package.json Replaces the readFile + JSON.parse + fileURLToPath path-resolution dance with `import cliPkg from '../packages/cli/package.json' with { type: 'json' }`, matching the existing `repo.json` import pattern in the same file. Drops three unused imports across both files and removes the top-level await in patch-project.ts. --- ecosystem-ci/patch-project.ts | 10 ++-------- ecosystem-ci/verify-install.ts | 7 ++----- 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/ecosystem-ci/patch-project.ts b/ecosystem-ci/patch-project.ts index 5c3ea73070..0f9276d5e1 100644 --- a/ecosystem-ci/patch-project.ts +++ b/ecosystem-ci/patch-project.ts @@ -1,17 +1,11 @@ import { execSync } from 'node:child_process'; import { readFile, writeFile } from 'node:fs/promises'; -import { dirname, join } from 'node:path'; -import { fileURLToPath } from 'node:url'; +import { join } from 'node:path'; +import cliPkg from '../packages/cli/package.json' with { type: 'json' }; import { ecosystemCiDir, tgzDir } from './paths.ts'; import repos from './repo.json' with { type: 'json' }; -const cliPkg = JSON.parse( - await readFile( - join(dirname(fileURLToPath(import.meta.url)), '..', 'packages', 'cli', 'package.json'), - 'utf-8', - ), -) as { version: string }; const vpVersion = cliPkg.version; const projects = Object.keys(repos); diff --git a/ecosystem-ci/verify-install.ts b/ecosystem-ci/verify-install.ts index 0aac527d3d..4c804c3dec 100644 --- a/ecosystem-ci/verify-install.ts +++ b/ecosystem-ci/verify-install.ts @@ -1,12 +1,9 @@ import { createRequire } from 'node:module'; -import { dirname, join } from 'node:path'; -import { fileURLToPath } from 'node:url'; + +import cliPkg from '../packages/cli/package.json' with { type: 'json' }; const require = createRequire(`${process.cwd()}/`); -const cliPkg = require( - join(dirname(fileURLToPath(import.meta.url)), '..', 'packages', 'cli', 'package.json'), -) as { version: string }; const expectedVersion = cliPkg.version; try {