chore(deps): dedupe vite to @voidzero-dev/vite-plus-core#797
Conversation
Add `vite` as a direct devDependency aliased to @voidzero-dev/vite-plus-core so the Vite+ toolchain peers (vite-plus, vitest, @vitest/coverage-v8) dedupe onto it instead of pulling a redundant standalone vite@8.0.0. The pnpm-workspace `overrides` entry alone could not eliminate the real vite: `vite` was only ever declared as a peerDependency, and with autoInstallPeers pnpm resolves that peer straight from its `^6 || ^7 || ^8` range, bypassing the override. Declaring `vite` as a root devDependency gives the peers a provider to dedupe onto, and `peerDependencyRules.allowAny` relaxes the range check so vite-plus-core's 0.1.x version is accepted. Also simplify `minimumReleaseAgeExclude` to the `@voidzero-dev/*` glob plus `vite-plus` instead of enumerating every platform binary package.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis PR adds a ChangesVite-Plus-Core Toolchain Setup
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
commit: |
There was a problem hiding this comment.
Code Review
This pull request adds the 'vite' dependency mapped to 'npm:@voidzero-dev/vite-plus-core@^0.1.23' in package.json, simplifies the 'minimumReleaseAgeExclude' list in pnpm-workspace.yaml using a wildcard pattern for '@voidzero-dev/*', and updates the pnpm-lock.yaml file accordingly, which cleans up several unused transitive dependencies. There are no review comments, and I have no feedback to provide.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #797 +/- ##
=======================================
Coverage 94.65% 94.65%
=======================================
Files 10 10
Lines 730 730
Branches 228 228
=======================================
Hits 691 691
Misses 36 36
Partials 3 3 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Eliminates a redundant standalone vite@8.0.0 install by aliasing a root-level vite devDependency to @voidzero-dev/vite-plus-core, so peer resolution dedupes onto the Vite+ core package. Also simplifies the minimumReleaseAgeExclude list to a glob.
Changes:
- Add
vitedevDependency aliased to@voidzero-dev/vite-plus-core@^0.1.23inpackage.json. - Replace 10 enumerated
@voidzero-dev/*entries inpnpm-workspace.yaml'sminimumReleaseAgeExcludewith the@voidzero-dev/*glob. - Update
pnpm-lock.yamlto dedupe onto@voidzero-dev/vite-plus-core@0.1.23, removing the standalonevite@8.0.0,rolldown@1.0.0-rc.9,@emnapi/*,@rolldown/*, and related subtrees.
Reviewed changes
Copilot reviewed 2 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| package.json | Adds aliased vite devDependency pointing at vite-plus-core. |
| pnpm-workspace.yaml | Collapses per-package excludes into @voidzero-dev/* glob. |
| pnpm-lock.yaml | Re-resolves vite-plus / vitest peer deps onto vite-plus-core and drops the standalone vite/rolldown subtrees. |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Problem
A redundant standalone
vite@8.0.0was being installed even though the Vite+ toolchain bundles its own vite via@voidzero-dev/vite-plus-core.vp why viteshowed real vite pulled in by@voidzero-dev/vite-plus-test,vite-plus, and@vitest/coverage-v8.The existing
pnpm-workspace.yamloverridesentry could not eliminate it:viteis only ever declared as a peerDependency (^6 || ^7 || ^8) in this tree, and withautoInstallPeers: truepnpm resolves that peer straight from its range — bypassingoverrides, which only rewrite declared dependency edges.Fix
viteas a directdevDependencyaliased to@voidzero-dev/vite-plus-core. This gives the toolchain peers a root-levelviteprovider to dedupe onto, so no separate real vite is auto-installed.peerDependencyRules.allowAny: [vite, vitest]relaxes the^6||^7||^8vs0.1.xrange check so vite-plus-core is accepted.overridesentry is kept as a safety net for any future regular (non-peer) transitive dep onvite.Also simplifies
minimumReleaseAgeExcludefrom 11 enumerated entries to the@voidzero-dev/*glob plusvite-plus(pnpm supports glob patterns since 10.16).Verification
vp why vite→ resolves only to@voidzero-dev/vite-plus-core@0.1.23; no standalone vite in the graphgrep -c "vite@8.0.0" pnpm-lock.yaml→0(was a ~300-line subtree)node_modules/.pnpm/vite@8*directoryvp check(fmt + lint + typecheck): passtest/diagnostics_channel.test.ts: 5/5 passSummary by CodeRabbit