release: v0.3.1: manage package-manager versions with vp env - #2623
release: v0.3.1: manage package-manager versions with vp env#2623voidzero-guard[bot] wants to merge 3 commits into
Conversation
✅ Deploy Preview for viteplus-preview canceled.
|
🚀 Deploying Preview to Cloudflare 🚀Preview URL: https://release-v0-3-1-viteplus-dev.voidzero-docs.workers.dev (commit 8c38fc8)This URL reflects your latest Preview deploymentPreview Deployments by commit
|
CLI artifact sizes (
|
| Artifact | Format | Base | PR | Change |
|---|---|---|---|---|
packages/cli/dist |
Directory total | 2.14 MiB | 2.14 MiB | 0 B (0.00%) |
packages/core/dist |
Directory total | 3.92 MiB | 3.92 MiB | 0 B (0.00%) |
| Combined package dist | Directory total | 6.06 MiB | 6.06 MiB | 0 B (0.00%) |
vp (Linux x64) |
Binary | 10.99 MiB | 10.99 MiB | 0 B (0.00%) |
vp (Linux x64) |
gzip -9 | 4.76 MiB | 4.76 MiB | +1.30 KiB (+0.03%) |
| NAPI (Linux x64) | Binary | 31.93 MiB | 31.93 MiB | 0 B (0.00%) |
| NAPI (Linux x64) | gzip -9 | 12.61 MiB | 12.61 MiB | +1.15 KiB (+0.01%) |
vp (macOS ARM64) |
Binary | 8.19 MiB | 8.19 MiB | 0 B (0.00%) |
vp (macOS ARM64) |
gzip -9 | 4.15 MiB | 4.15 MiB | -1.09 KiB (-0.03%) |
| NAPI (macOS ARM64) | Binary | 39.55 MiB | 39.55 MiB | 0 B (0.00%) |
| NAPI (macOS ARM64) | gzip -9 | 16.93 MiB | 16.92 MiB | -5.16 KiB (-0.03%) |
vp (Windows x64) |
Binary | 8.86 MiB | 8.86 MiB | 0 B (0.00%) |
vp (Windows x64) |
gzip -9 | 3.88 MiB | 3.88 MiB | -424 B (-0.01%) |
| NAPI (Windows x64) | Binary | 26.81 MiB | 26.81 MiB | 0 B (0.00%) |
| NAPI (Windows x64) | gzip -9 | 10.70 MiB | 10.70 MiB | -155 B (-0.00%) |
| Trampoline (Windows x64) | Binary | 14.00 KiB | 14.00 KiB | 0 B (0.00%) |
| Trampoline (Windows x64) | gzip -9 | 7.09 KiB | 7.09 KiB | -1 B (-0.01%) |
| Installer (Windows x64) | Binary | 4.50 MiB | 4.50 MiB | 0 B (0.00%) |
| Installer (Windows x64) | gzip -9 | 2.11 MiB | 2.11 MiB | 0 B (0.00%) |
Registry bridge build (
|
| Package | Version |
|---|---|
vite-plus |
0.0.0-commit.6d65e1780791e2b24b27cf7deb63f57a420e78de |
@voidzero-dev/vite-plus-core |
0.0.0-commit.6d65e1780791e2b24b27cf7deb63f57a420e78de |
Install the Vite+ CLI built from this commit, then migrate a project:
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/voidzero-dev/vite-plus/6d65e1780791e2b24b27cf7deb63f57a420e78de/packages/cli/install.sh | VP_PR_VERSION=2623 bash# Windows (PowerShell)
$env:VP_PR_VERSION="2623"; irm https://raw.githubusercontent.com/voidzero-dev/vite-plus/6d65e1780791e2b24b27cf7deb63f57a420e78de/packages/cli/install.ps1 | iexOr download the standalone Windows installer built from this commit:
| Architecture | Installer |
|---|---|
| x64 | vp-setup-x86_64-pc-windows-msvc.exe |
| Arm64 | vp-setup-aarch64-pc-windows-msvc.exe |
GitHub requires you to sign in and downloads each installer as a ZIP artifact. Extract vp-setup.exe, then run it against this preview build:
.\vp-setup.exe --version "0.0.0-commit.6d65e1780791e2b24b27cf7deb63f57a420e78de" --registry "https://registry-bridge.viteplus.dev/"After installing, upgrade the current project's vite-plus to this test build with:
vp migrateOr 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.6d65e1780791e2b24b27cf7deb63f57a420e78de",
"vite": "npm:@voidzero-dev/vite-plus-core@0.0.0-commit.6d65e1780791e2b24b27cf7deb63f57a420e78de"
}
}
🐳 Docker preview imageBuilt from this PR's registry bridge build:
# remove any stale local copy from a previous run, then pull fresh
docker rmi ghcr.io/voidzero-dev/vite-plus:pr-2623 2>/dev/null; docker pull ghcr.io/voidzero-dev/vite-plus:pr-2623Quick check: docker run --rm ghcr.io/voidzero-dev/vite-plus:pr-2623 vp --versionSee docs/guide/docker.md for usage. |
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.
…kill Adds a registry-visibility gate after npm publish. A green Release job only means the registry accepted the request; v0.3.0 shipped with vite-plus on latest depending on a core version that stayed invisible for about 35 minutes, breaking every install and failing the Docker and docs jobs. Also drops the PR-title opener from the body template, records that Docs covers the published site rather than contributor files, keeps resolution logic out of entries, requires a migration path on breaking changes, and stops posting the Discord draft to the release PR. (cherry picked from commit 54f70dd)
6d65e17 to
8c38fc8
Compare
vp envnow manages Node.js and package-manager versions together. This release also fixes TanStack Start routing and stale Vitest aliases.Breaking Changes
Vite+ replaces Corepack with managed
npm,pnpm,yarn, andbuncommands. It removes thecorepackshim and legacy global package-manager installations (#2391), by @liangmiQwQ.corepack enablevp env setupvp install -g pnpm@<version>vp env default pnpm@<version>vp install -g yarn@<version>vp env default yarn@<version>vp install -g bun@<version>vp env default bun@<version>vp install -g corepackUpdate Corepack setup commands in shell profiles, CI jobs, and Dockerfiles. Use
vp env pin <manager>@<version>for a project version.Unscoped
vp envcommands now operate on Node.js and package managers. Addnodefor Node.js-only operations, such asvp env off nodeorvp env unpin node. Bare versions, such asvp env default 22.19.0, still select Node.js. Package managers support independent defaults, project pins, session overrides, and installation commands (#2398), by @liangmiQwQ.Update scripts that read
vp envJSON output.current --jsonnow returnsnodeandpackage_managerobjects.list --jsonandlist-remote --jsonreturnnodeandpackage_managersgroups. See the environment guide.vp packnow usestsdown0.23, which removes deprecated options and changes defaults. Runvp migrateto update supported static configurations and package scripts, including existing Vite+ projects (#2614), by @fengmk2.bundle: falseunbundle: trueoutExtensionoutExtensionspublicDir/--public-dircopy/--copyremoveNodeProtocol: truenodeProtocol: 'strip'injectStylecss.injectinlineOnly/deps.onlyAllowBundledeps.onlyBundlenoExternaldeps.alwaysBundleskipNodeModulesBundle: true/deps.skipNodeModulesBundle: truedeps.neverBundle: truedts.tsgo: true/dts.oxc: truedts.generator: 'tsgo'/dts.generator: 'oxc'Dynamic configurations, such as arrays built with
.map(), require manual updates. Check these configurations even when migration reports no warning.Check migration warnings in
vite.config.*,tsdown.config.*, andpackage.json, then runvp pack. Migration preserves the previous dependency-resolution and ATTW defaults. Node.js25is no longer supported bytsdown; use^22.18.0,^24.11.0, or>=26.0.0. Programmaticbuild()now returns{ bundles, watch }. See the complete migration guide for declaration and TypeScript module-resolution changes.vp staged,vp config,vp hooks,vp migrate, andvp createnow reject unsupported options and extra positional arguments (#2523), by @fengmk2.Remove unsupported arguments from scripts. For example, replace
vp config --hooks-onlywithvp config --no-agent.Highlights
404responses caused by separate Vite runtime copies (#2617), by @fengmk2.vp migraterepair stalevitestaliases that previously prevented the CLI from starting (#2605), by @fengmk2.vp check --quietto hide lint warning diagnostics while retaining errors and summary counts (#2593), by @RSS1102.Features
vp sync-versions --jsonso automation can request dependency alignment plans from manifest snapshots without changing project files (#2600), by @afonsojramos.vp create --gitsuggest an initial commit command after Git initialization (#2581), by @fengmk2.vp migratereplace frozenvoidzero-dev/setup-vp@v1workflow references with the supported version pin (#2540), by @fengmk2.rolldownfrom1.2.5to1.2.7,tsdownfrom0.22.14to0.23.0, and Oxc from0.146.0to0.148.0. Upgradeoxlintfrom1.79.0to1.81.0andoxfmtfrom0.64.0to0.66.0. These versions can flag code that passed before. Runvp fmtafter upgrading if CI runsvp check(#2580, #2613), by @voidzero-guard[bot].Fixes & Enhancements
package.json. Usevp env pinorvp env unpinto change project declarations explicitly (#2399), by @liangmiQwQ.vp-shim.exesize from214 KiBto14 KiB(#2466), by @fengmk2.4.xmajor (#2612), by @fengmk2.tsdownoption from the prompts package build (#2597), by @jong-kyung.Refactor
whichdependency to resolve relativePATHentries (#2583), by @RSS1102.async-traitannotation fromJsRuntimeProvider(#2538), by @jong-kyung.Docs
runtimeOnFailsetting (#2620), by @liangmiQwQ.Chore
vinextfixture to an upstream fix (#2571), by @jong-kyung.tempfiledependencies, an unused runtime helper, and unused error variants. Update theunit_bindingslint name (#2555, #2558, #2566, #2567), by @jong-kyung.actions/setup-nodev7(#2544, #2545, #2582, #2618), by @renovate[bot].crate-ci/typosthroughv1.50.1(#2584, #2589, #2609), by @renovate[bot].11.24.0(#2590), by @renovate[bot].voidzero-dev/setup-vptov1.19.0(#2619), by @renovate[bot].Bundled Versions
vite8.2.2de1111arolldown1.2.726b4c6etsdown0.23.0vitest4.1.11oxlint1.81.0oxlint-tsgolint7.0.2001oxfmt0.66.0Upgrade
New Contributors
@afonsojramos, @joschuba
Full Changelog: v0.3.0...v0.3.1
Merging this PR will trigger the release workflow.