feat(tools): install Vite+ releases - #7338
afonsojramos wants to merge 11 commits into
Conversation
## Summary Vite+ releases can now tell external automation how to align Vite+, Vite+ core, Vitest, and official Vitest packages without reading or changing the project itself. This provides the release-owned compatibility contract needed to prevent dependency bots from producing mixed toolchains. This is the first part of a three-repository integration. Containerbase installation and Renovate reconciliation follow after this contract ships in a Vite+ release. ## Design - `vp sync-versions --json` accepts bounded manifest snapshots over stdin and returns deterministic before/after replacements. - Planning updates only existing managed declarations. It preserves catalog protocols, JSON formatting, and YAML comments, quoting, indentation, and line endings. - The command does not load project configuration, run installs or lifecycle scripts, format source, or write to the repository. - Both the npm CLI and standalone archive expose the same protocol. Release archives include the self-contained planner, toolchain manifest, and checksums needed for verified installation. ## Validation - Planner, protocol, package-override, and migration suites: 395 tests passed. - Focused sync-version suites: 39 tests passed. - Global CLI Rust suite: 486 tests passed, 2 ignored. - CLI TypeScript build, optimized Rust build, npm entrypoint smoke test, and standalone archive-layout simulation passed. - Scoped formatting, lint, type checks, and `git diff --check` passed. Related: #2356 Downstream drafts: - containerbase/base#7338 - renovatebot/renovate#45630 --------- Co-authored-by: MK (fengmk2) <fengmk2@gmail.com>
|
Upstream update: voidzero-dev/vite-plus#2600 has merged. This draft is now waiting for a Vite+ release containing Once that ships, I'll validate |
Exercise Vite+ 0.3.1 installation and dependency alignment on both Linux architectures and in the distro test matrix. Check repeat execution and verify that project manifests and configuration remain unchanged.
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (6)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe change adds Vite+ ( ChangesVite+ support
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Feature Sequence Diagram(s)sequenceDiagram
participant VpInstallService
participant HttpService
participant CompressionService
VpInstallService->>HttpService: Check and download checksum manifest
VpInstallService->>HttpService: Download release archive
VpInstallService->>CompressionService: Extract archive into versioned bin directory
Merge Risk: ⚪ Minimal · up to The installer’s supported architectures and release layout match its expectations, and both container test stages include the required lockfile and script. No concrete merge-blocking issue was identified. Architecture SummaryArchitecture risk: 🔵 Low · up to The change affects 3 systems. Changed systems: Architecture concerns Review detailsSystems and components
Before / after behavior
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 7 functions across 8 files. (6 skipped: 6 unsupported.) ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Group Vite+ with its Node parent and keep planner smoke tests in the Node images. Use released download examples and assert the actual version-check command.
|
@viceice, can you take another look? Thanks 🙏 |
Address review feedback on containerbase#7338 with promises and execa. Bundle the fixture with the existing locked dependencies for both Node test images, and simplify the distro check to a direct versioned install.
|
@viceice Thanks for the review and clarification! The distro checks are installation-only and now use the simpler versioned install you suggested. The functional checks remain in the Node images. |
Code Review
|
| Auto-apply | Compact |
|
|
Important
Your trial ends in 3 days — upgrade now to keep code review, CI analysis, auto-apply, custom automations, and more.
Was this helpful? React with 👍 / 👎 | Gitar
Copy the source fixture into both Node images and install its locked execa dependency with npm ci. Keep fixture dependency updates enabled in Renovate without restoring the removed bundling step. Update the installer test pins and sample release URLs to Vite+ 1.0.0.
|
@viceice Fixed the Docker test setup that gitar-bot pointed out. It now runs the source directly and installs execa from a dedicated lockfile, without bundling. Also bumped Vite+ to 1.0.0 and enabled Renovate updates for the test dependencies. |
Summary
Containerbase can install an exact Vite+ release as
vp, giving downstream tools a verified way to run the compatibility planner owned by that release.This is the second part of the Vite+ dependency-alignment integration. The planner from voidzero-dev/vite-plus#2600 is now available in Vite+ 0.3.1. The downstream Renovate integration is in renovatebot/renovate#45630.
Design
vp-checksums.txt.vp, planner sidecar, and toolchain manifest retain the release layout expected by the global CLI.Validation
git diff --checkpassed.linux/amd64andlinux/arm64) installed Vite+ 0.3.1 and ran the bundledsync-versions --jsonplanner as a non-root user.Summary by CodeRabbit
New Features
vp), including architecture-specific downloads, checksum verification, linking, and version checks.vpto the Node.js integration test environments.Documentation
Tests