chore(deps): migrate apps/web to Vite 8 (#48) - #49
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Upgrades
apps/webfrom Vite 6.4 to Vite 8.3 together with@vitejs/plugin-react4.7 → 6.1. The two have to move in one change:@vitejs/plugin-react4 only accepts Vite 4–7, which is why Dependabot's single-package bumps (#21, #32) failnpm ciwith ERESOLVE.Closes #48
Supersedes #32.
Why now:
Architecture summary
apps/web/package.jsonandpackage-lock.jsonchange.vite.config.ts,postcss.config.jsand the Tailwind 3 setup are unchanged. The config uses none of the options Vite 8 renamed or removed (build.rollupOptions,esbuild,manualChunks), andreact()is called without options.vite ^6 || ^7 || ^8.Security considerations
npm ls --allshows only unmet optional dependencies (per-OS native bindings and optional peers): 52 lines, down from 73 onmain.Testing evidence
npm cisucceeds. This is the step that failed for chore(deps): bump vite from 6.4.3 to 8.0.16 in /apps/web #21 and chore(deps): bump vite from 6.4.3 to 8.1.0 in /apps/web #32.tsc --noEmit, vitest (17/17, no warnings) andvite buildall pass.Bundle, Vite 6.4.3 → Vite 8.3.0:
CSS before/after, compared on both builds: the same 95 class selectors, 53
--tw-*properties, 18 theme variables and 2@mediablocks. The only prefixed declaration that disappears is-moz-tab-size, which Firefox 114+ doesn't need.In the browser:
vite preview) and the nginx container image both redirect/dashboard→/loginand render the same styles as before (button, heading, inputs checked with computed styles)./@react-refreshpreamble is injected and modules register with$RefreshReg$.Known limitations
vite dev/vite previewlog a 404 for/favicon.icobecauseindex.htmldeclares no favicon. This predates the upgrade; nginx answers it withindex.html.Follow-up issues
Checklist
main; this PR targetsmain.make verifypasses locally.git diff --checkis clean.