feat(wasm): add SSR support for .wasm?init#21102
Conversation
sapphi-red
left a comment
There was a problem hiding this comment.
Thanks, but this isn't working for build.
When I run vite build --ssr src/app.js in playground/ssr-wasm, I expect the wasm files to be copied (or inlined depending on the option) to dist. But that didn't happen.
|
@sapphi-red Thanks for your review! I have looked into the issue, and now build should be working correctly. The test should now be covering the build case properly as well, and I've add some tests to verify the build result. Also I have done some manual testing locally and confirmed that it works the way I'd expect. |
|
Hi @sapphi-red, it has been a week since the last update of this PR, would you mind taking another look at it? Is there anything I can do to help moving it forward? |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
|
@sapphi-red I updated the PR to handle wasm init specially via replacing the asset placeholder with a different placeholder, and replace it as part of |
I assume that the current CI failures are from this. I checked |
|
@upsuper Would you enable "Allow edits from maintainers" so that I and other can add changes? |
I'd like to, but unfortunately I can't, because this is forked under an org I use to park all my forks, and GitHub doesn't support "Allow edits from maintainers" for a repo owned by an org. I've instead invited you as an admin of my fork project. Hope that helps. |
|
Thanks! I was able to add the changes. |
|
@upsuper Could you grant me access to this repository so I can make some updates? |
Thanks! I was able to add the changes. |
Related to vitejs/vite#21566 This is because vitejs/vite#21102 will refactor the logic around `wasmHelperPlugin`, and `nativeWasmHelperPlugin` is not aligned with the `fileToUrl` behavior. So I plan to remove it for now and re-port it when it’s needed again later.
sapphi-red
left a comment
There was a problem hiding this comment.
Thanks for your patience 💚
…e the workaround
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [vite](https://vite.dev) ([source](https://github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`^7.3.1` → `^8.0.0`](https://renovatebot.com/diffs/npm/vite/7.3.1/8.0.0) |  |  | --- ### Release Notes <details> <summary>vitejs/vite (vite)</summary> ### [`v8.0.0`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12) [Compare Source](vitejs/vite@v7.3.1...v8.0.0)  Today, we're thrilled to announce the release of the next Vite major: - **[Vite 8.0 announcement blog post](https://vite.dev/blog/announcing-vite8.html)** - [Docs](https://vite.dev/) (translations: [简体中文](https://cn.vite.dev/), [日本語](https://ja.vite.dev/), [Español](https://es.vite.dev/), [Português](https://pt.vite.dev/), [한국어](https://ko.vite.dev/), [Deutsch](https://de.vite.dev/), [فارسی](https://fa.vite.dev/)) - [Migration Guide](https://vite.dev/guide/migration.html) ##### ⚠ BREAKING CHANGES - remove `import.meta.hot.accept` resolution fallback ([#​21382](vitejs/vite#21382)) - update default browser target ([#​21193](vitejs/vite#21193)) - the epic `rolldown-vite` merge ([#​21189](vitejs/vite#21189)) ##### Features - update rolldown to 1.0.0-rc.9 ([#​21813](vitejs/vite#21813)) ([f05be0e](vitejs/vite@f05be0e)) - warn when `vite-tsconfig-paths` plugin is detected ([#​21781](vitejs/vite#21781)) ([ada493e](vitejs/vite@ada493e)) - **css:** support es2025 build target for lightningcss ([#​21769](vitejs/vite#21769)) ([08906e7](vitejs/vite@08906e7)) - forward browser console logs and errors to dev server terminal ([#​20916](vitejs/vite#20916)) ([2540ed0](vitejs/vite@2540ed0)) - update rolldown to 1.0.0-rc.8 ([#​21790](vitejs/vite#21790)) ([a0c950e](vitejs/vite@a0c950e)) - export `Visitor` and `ESTree` from `rolldown/utils` ([#​21664](vitejs/vite#21664)) ([45de31e](vitejs/vite@45de31e)) - update rolldown to 1.0.0-rc.6 ([#​21714](vitejs/vite#21714)) ([37a65f8](vitejs/vite@37a65f8)) - use util.inspect for CLI error display ([#​21668](vitejs/vite#21668)) ([5f425a9](vitejs/vite@5f425a9)) - update rolldown to 1.0.0-rc.5 ([#​21660](vitejs/vite#21660)) ([b3ddbc5](vitejs/vite@b3ddbc5)) - update rolldown to 1.0.0-rc.4 ([#​21617](vitejs/vite#21617)) ([1ee5c7f](vitejs/vite@1ee5c7f)) - **wasm:** add SSR support for `.wasm?init` ([#​21102](vitejs/vite#21102)) ([216a3b5](vitejs/vite@216a3b5)) - integrate devtools ([#​21331](vitejs/vite#21331)) ([acbf507](vitejs/vite@acbf507)) - update rolldown to 1.0.0-rc.3 ([#​21554](vitejs/vite#21554)) ([43358e9](vitejs/vite@43358e9)) - **manifest:** add `assets` field for standalone CSS entry points ([#​21015](vitejs/vite#21015)) ([f289b9b](vitejs/vite@f289b9b)) - update rolldown to 1.0.0-rc.2 ([#​21512](vitejs/vite#21512)) ([fa136a9](vitejs/vite@fa136a9)) - **bundled-dev:** support worker in initial bundle ([#​21415](vitejs/vite#21415)) ([f3d3149](vitejs/vite@f3d3149)) - **dev:** detect port conflicts on wildcard hosts ([#​21381](vitejs/vite#21381)) ([b0dd5a9](vitejs/vite@b0dd5a9)) - shortcuts case insensitive ([#​21224](vitejs/vite#21224)) ([7796ade](vitejs/vite@7796ade)) - update rolldown to 1.0.0-rc.1 ([#​21463](vitejs/vite#21463)) ([ff9dd7f](vitejs/vite@ff9dd7f)) - warn if `envPrefix` contains spaces ([#​21292](vitejs/vite#21292)) ([9fcde3c](vitejs/vite@9fcde3c)) - update rolldown to 1.0.0-beta.60 ([#​21408](vitejs/vite#21408)) ([c33aa7c](vitejs/vite@c33aa7c)) - update rolldown to 1.0.0-beta.59 ([#​21374](vitejs/vite#21374)) ([0037943](vitejs/vite@0037943)) - add `ignoreOutdatedRequests` option to `optimizeDeps` ([#​21364](vitejs/vite#21364)) ([b2e75aa](vitejs/vite@b2e75aa)) - add ios to default esbuild targets ([#​21342](vitejs/vite#21342)) ([daae6e9](vitejs/vite@daae6e9)) - update rolldown to 1.0.0-beta.58 ([#​21354](vitejs/vite#21354)) ([ba40cef](vitejs/vite@ba40cef)) - update rolldown to 1.0.0-beta.57 ([#​21335](vitejs/vite#21335)) ([d5412ef](vitejs/vite@d5412ef)) - **css:** support es2024 build target for lightningcss ([#​21294](vitejs/vite#21294)) ([bd33b8e](vitejs/vite@bd33b8e)) - update rolldown to 1.0.0-beta.56 ([#​21323](vitejs/vite#21323)) ([9847a63](vitejs/vite@9847a63)) - introduce v2 native plugins and enable it by default ([#​21268](vitejs/vite#21268)) ([42f2ab3](vitejs/vite@42f2ab3)) - **ssr:** avoid errors when rewriting already rewritten stacktrace ([#​21269](vitejs/vite#21269)) ([98d9a33](vitejs/vite@98d9a33)) - update rolldown to 1.0.0-beta.55 ([#​21300](vitejs/vite#21300)) ([2c8db85](vitejs/vite@2c8db85)) - update rolldown to 1.0.0-beta.54 ([#​21267](vitejs/vite#21267)) ([c751172](vitejs/vite@c751172)) - add a warning that is output when a plugin sets esbuild related options ([#​21218](vitejs/vite#21218)) ([200646b](vitejs/vite@200646b)) - highly experimental full bundle mode ([#​21235](vitejs/vite#21235)) ([83d8c99](vitejs/vite@83d8c99)) - print esbuild options when both esbuild and oxc options are set ([#​21216](vitejs/vite#21216)) ([08ae87b](vitejs/vite@08ae87b)) - update default browser target ([#​21193](vitejs/vite#21193)) ([8c3dd06](vitejs/vite@8c3dd06)) - the epic `rolldown-vite` merge ([#​21189](vitejs/vite#21189)) ([4a7f8d4](vitejs/vite@4a7f8d4)) ##### Bug Fixes - **deps:** update all non-major dependencies ([#​21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352)) - use `watch.watcher` instead of `watch.notify` ([#​21793](vitejs/vite#21793)) ([88953b3](vitejs/vite@88953b3)) - **css:** apply `server.origin` to public file URLs in CSS (fix [#​18457](vitejs/vite#18457)) ([#​21697](vitejs/vite#21697)) ([c967f48](vitejs/vite@c967f48)) - **deps:** update all non-major dependencies ([#​21732](vitejs/vite#21732)) ([5c921ca](vitejs/vite@5c921ca)) - **dev:** disable extglobs for consistency ([#​21745](vitejs/vite#21745)) ([1958eeb](vitejs/vite@1958eeb)) - **lib:** keep annotation comments for es output ([#​21740](vitejs/vite#21740)) ([dd3c4f4](vitejs/vite@dd3c4f4)) - **optimizer:** avoid error happening with a package with asset entrypoint ([#​21766](vitejs/vite#21766)) ([f7e1d07](vitejs/vite@f7e1d07)) - **ssr:** throw friendly error when calling `ssrLoadModule` with non-runnable ssr env ([#​21739](vitejs/vite#21739)) ([1fa736e](vitejs/vite@1fa736e)) - **types:** remove extends ImportMeta from ModuleRunnerImportMeta ([#​21710](vitejs/vite#21710)) ([0176d45](vitejs/vite@0176d45)) - **wasm:** reset assetUrlRE.lastIndex before .test() in SSR builds ([#​21780](vitejs/vite#21780)) ([3a0d8d9](vitejs/vite@3a0d8d9)) - **deps:** update all non-major dependencies ([#​21691](vitejs/vite#21691)) ([521fdc0](vitejs/vite@521fdc0)) - **optimizer:** avoid duplicate modules when `preserveSymlinks` is enabled ([#​21720](vitejs/vite#21720)) ([72165e0](vitejs/vite@72165e0)) - **dev:** only treat EADDRINUSE as port conflict in wildcard pre-check ([#​21642](vitejs/vite#21642)) ([e54e25f](vitejs/vite@e54e25f)) - **dev:** prevent concurrent server restarts ([#​21636](vitejs/vite#21636)) ([8ce23a3](vitejs/vite@8ce23a3)) - **dev:** return "502 Bad Gateway" on proxy failures instead of 500 ([#​21652](vitejs/vite#21652)) ([e240df2](vitejs/vite@e240df2)) - clear tsconfig cache only when tsconfig.json is cached ([#​21622](vitejs/vite#21622)) ([50c9675](vitejs/vite@50c9675)) - **deps:** update all non-major dependencies ([#​21594](vitejs/vite#21594)) ([becdc5d](vitejs/vite@becdc5d)) - **lib:** CSS injection point error with nested name IIFE output ([#​21606](vitejs/vite#21606)) ([5003de6](vitejs/vite@5003de6)) - **module-runner:** incorrect column with `sourcemapInterceptor: "prepareStackTrace"` ([#​21562](vitejs/vite#21562)) ([416c095](vitejs/vite@416c095)) - **module-runner:** prevent crash on negative column in stacktrace ([#​21585](vitejs/vite#21585)) ([a075590](vitejs/vite@a075590)) - rolldownOptions/rollupOptions merging at environment level ([#​21612](vitejs/vite#21612)) ([db2ecc7](vitejs/vite@db2ecc7)) - **scanner:** respect tsconfig.json ([#​21547](vitejs/vite#21547)) ([c6c04db](vitejs/vite@c6c04db)) - avoid registering customization hook for import meta resolver multiple times ([#​21518](vitejs/vite#21518)) ([8bb3203](vitejs/vite@8bb3203)) - **config:** avoid watching rolldown runtime virtual module ([#​21545](vitejs/vite#21545)) ([d18b139](vitejs/vite@d18b139)) - **deps:** update all non-major dependencies ([#​21540](vitejs/vite#21540)) ([9ebaeaa](vitejs/vite@9ebaeaa)) - populate originalFileNames when resolving CSS asset paths ([#​21542](vitejs/vite#21542)) ([8b47ff7](vitejs/vite@8b47ff7)) - **deps:** update all non-major dependencies ([#​21488](vitejs/vite#21488)) ([2b32ca2](vitejs/vite@2b32ca2)) - disable `tsconfig` option when loading config ([#​21517](vitejs/vite#21517)) ([5025c35](vitejs/vite@5025c35)) - **optimizer:** map relative `new URL` paths to correct relative file location ([#​21434](vitejs/vite#21434)) ([ca96cbc](vitejs/vite@ca96cbc)) - avoid using deprecated `output.inlineDynamicImport` option ([#​21464](vitejs/vite#21464)) ([471ce62](vitejs/vite@471ce62)) - use separate hook object for each environment ([#​21472](vitejs/vite#21472)) ([66347f6](vitejs/vite@66347f6)) - **deps:** update all non-major dependencies ([#​21440](vitejs/vite#21440)) ([1835995](vitejs/vite@1835995)) - **dev:** avoid event emitter leak caused by `server.listen` callback ([#​21451](vitejs/vite#21451)) ([602d786](vitejs/vite@602d786)) - lazy hook filter should work ([#​21443](vitejs/vite#21443)) ([bc0c207](vitejs/vite@bc0c207)) - **optimizer:** skip `rolldownCjsExternalPlugin` for `platform: neutral` ([#​21452](vitejs/vite#21452)) ([d2fc4be](vitejs/vite@d2fc4be)) - **deps:** update all non-major dependencies ([#​21389](vitejs/vite#21389)) ([30f48df](vitejs/vite@30f48df)) - **deps:** update esbuild peerDependency version ([#​21398](vitejs/vite#21398)) ([4266c97](vitejs/vite@4266c97)) - **hmr:** trigger prune event when last import is removed ([#​20781](vitejs/vite#20781)) ([#​21093](vitejs/vite#21093)) ([7576735](vitejs/vite@7576735)) - **module-runner:** use `process.getBuiltinModule` instead of `import('node:module')` ([#​21402](vitejs/vite#21402)) ([6633bcb](vitejs/vite@6633bcb)) - support .env file mounts (FIFOs) ([#​21365](vitejs/vite#21365)) ([6e6f82a](vitejs/vite@6e6f82a)) - **css:** stylus Evaluator support ([#​21376](vitejs/vite#21376)) ([cf9ace1](vitejs/vite@cf9ace1)) - **deps:** update all non-major dependencies ([#​21321](vitejs/vite#21321)) ([9bc7c2e](vitejs/vite@9bc7c2e)) - **import-analysis:** avoid cjs interop for built browser external module ([#​21333](vitejs/vite#21333)) ([dc5a2fb](vitejs/vite@dc5a2fb)) - **worker:** handle `new Worker(..., new URL(import.meta.url))` with trailing comma ([#​21325](vitejs/vite#21325)) ([4a47241](vitejs/vite@4a47241)) - detect `import.meta.resolve` when formatted across multiple lines ([#​21312](vitejs/vite#21312)) ([130e718](vitejs/vite@130e718)) - allow no-cors requests for non-script tag requests ([#​21299](vitejs/vite#21299)) ([ef3d596](vitejs/vite@ef3d596)) - **deps:** update all non-major dependencies ([#​21285](vitejs/vite#21285)) ([4635b2e](vitejs/vite@4635b2e)) - unreachable error when building with `experimental.bundledDev` is enabled ([#​21296](vitejs/vite#21296)) ([e81c183](vitejs/vite@e81c183)) - **deps:** update all non-major dependencies ([#​21231](vitejs/vite#21231)) ([859789c](vitejs/vite@859789c)) - don't strip base from imports ([#​21221](vitejs/vite#21221)) ([7da742b](vitejs/vite@7da742b)) - allow exiting process before optimizer cleanup is done ([#​21170](vitejs/vite#21170)) ([55ceffc](vitejs/vite@55ceffc)) - plugin shortcut support ([#​21211](vitejs/vite#21211)) ([6a3aca0](vitejs/vite@6a3aca0)) ##### Performance Improvements - **ssr:** skip circular import check for already-evaluated modules ([#​21632](vitejs/vite#21632)) ([235140b](vitejs/vite@235140b)) - use tsconfig cache for oxc transform in dev ([#​21643](vitejs/vite#21643)) ([57ff177](vitejs/vite@57ff177)) ##### Documentation - bulk of typo fixes ([#​21507](vitejs/vite#21507)) ([80755da](vitejs/vite@80755da)) - update `build.dynamicImportVarsOptions` ([#​21477](vitejs/vite#21477)) ([54ce2ed](vitejs/vite@54ce2ed)) - clarify the pronunciation of `vite` in IPA symbols ([#​21238](vitejs/vite#21238)) ([9b1d4d6](vitejs/vite@9b1d4d6)) - ensure https links ([#​21266](vitejs/vite#21266)) ([2eb259a](vitejs/vite@2eb259a)) ##### Miscellaneous Chores - **deps-dev:** bump rollup from 4.57.1 to 4.59.0 ([#​21717](vitejs/vite#21717)) ([25227bb](vitejs/vite@25227bb)) - **deps:** update dependency cac to v7 ([#​21788](vitejs/vite#21788)) ([44e33ae](vitejs/vite@44e33ae)) - **deps:** update dependency rolldown-plugin-dts to ^0.22.2 ([#​21731](vitejs/vite#21731)) ([d8ea652](vitejs/vite@d8ea652)) - **deps:** remove `fdir` and `@rollup/plugin-commonjs` ([#​21639](vitejs/vite#21639)) ([5abffd5](vitejs/vite@5abffd5)) - **deps:** update dependency [@​rollup/plugin-alias](https://github.com/rollup/plugin-alias) to v6 ([#​21097](vitejs/vite#21097)) ([44b5bdf](vitejs/vite@44b5bdf)) - fix broken link for future deprecations ([#​21603](vitejs/vite#21603)) ([25f4501](vitejs/vite@25f4501)) - update `customResolver` deprecation message to mention `enforce: 'pre'` ([#​21576](vitejs/vite#21576)) ([2ce34d5](vitejs/vite@2ce34d5)) - update rolldown-plugin-dts to 0.22.1 ([#​21559](vitejs/vite#21559)) ([77aab4b](vitejs/vite@77aab4b)) - **deps:** update dependency rolldown-plugin-dts to ^0.21.8 ([#​21539](vitejs/vite#21539)) ([33881cb](vitejs/vite@33881cb)) - add missing versions to changelog ([#​21515](vitejs/vite#21515)) ([4bfb239](vitejs/vite@4bfb239)) - **deps:** update rolldown-related dependencies ([#​21487](vitejs/vite#21487)) ([5863e51](vitejs/vite@5863e51)) - **deps:** update rolldown-related dependencies ([#​21390](vitejs/vite#21390)) ([be9dd4e](vitejs/vite@be9dd4e)) - fix typo in plugin.ts comment ([#​21435](vitejs/vite#21435)) ([d31fc66](vitejs/vite@d31fc66)) - replace caniuse link for ES2024 ([#​21355](vitejs/vite#21355)) ([2ba4e99](vitejs/vite@2ba4e99)) - cleanup changelog ([#​21202](vitejs/vite#21202)) ([8c8c56e](vitejs/vite@8c8c56e)) - **deps:** update rolldown-related dependencies ([#​21230](vitejs/vite#21230)) ([9349446](vitejs/vite@9349446)) - fix spelling error ([#​21223](vitejs/vite#21223)) ([cc10e20](vitejs/vite@cc10e20)) ##### Code Refactoring - don't add `optimization.inlineConst: { mode: 'smart' }` as it's enabled by default ([#​21794](vitejs/vite#21794)) ([22b3d11](vitejs/vite@22b3d11)) - enable some native plugins even with enable native plugin false ([#​21744](vitejs/vite#21744)) ([fc46c79](vitejs/vite@fc46c79)) - avoid deprecated `legalComments` option ([#​21721](vitejs/vite#21721)) ([e06496e](vitejs/vite@e06496e)) - use `ESTree` types from `rolldown/utils` ([#​21719](vitejs/vite#21719)) ([9239750](vitejs/vite@9239750)) - deprecate `customResolver` in `resolve.alias` ([#​21476](vitejs/vite#21476)) ([81275c9](vitejs/vite@81275c9)) - remove unnecessary `@rolldown/pluginutils` ([#​21560](vitejs/vite#21560)) ([c367b62](vitejs/vite@c367b62)) - enable some native plugins even with enable native plugin false ([#​21608](vitejs/vite#21608)) ([5a4f692](vitejs/vite@5a4f692)) - use `rolldown/utils` ([#​21577](vitejs/vite#21577)) ([e56103f](vitejs/vite@e56103f)) - use internal devtools config ([#​21609](vitejs/vite#21609)) ([9aea20f](vitejs/vite@9aea20f)) - use parseEnv ([#​21586](vitejs/vite#21586)) ([f859d2c](vitejs/vite@f859d2c)) - **wasm:** remove native wasm helper plugin usage ([#​21566](vitejs/vite#21566)) ([71a86be](vitejs/vite@71a86be)) - enable some native plugins even with enable native plugin false ([#​21511](vitejs/vite#21511)) ([b40292c](vitejs/vite@b40292c)) - remove `experimental.enableNativePlugin: 'resolver'` ([#​21510](vitejs/vite#21510)) ([f9d9213](vitejs/vite@f9d9213)) - use `import.meta.dirname` everywhere ([#​21509](vitejs/vite#21509)) ([7becf5f](vitejs/vite@7becf5f)) - **optimizer:** simplify `rolldownCjsExternalPlugin` ([#​21450](vitejs/vite#21450)) ([ebda8fd](vitejs/vite@ebda8fd)) - remove `import.meta.hot.accept` resolution fallback ([#​21382](vitejs/vite#21382)) ([71d0797](vitejs/vite@71d0797)) - **optimizer:** remove dead code ([#​21334](vitejs/vite#21334)) ([e9a2cdb](vitejs/vite@e9a2cdb)) ##### Tests - **ssr:** incorrect `handleInvoke` was called in server-worker-runner.invoke test ([#​21751](vitejs/vite#21751)) ([b95ca22](vitejs/vite@b95ca22)) - add more type tests for `defineConfig` ([#​21698](vitejs/vite#21698)) ([4fedbbd](vitejs/vite@4fedbbd)) - test case for catching invalid package resolution error ([#​21601](vitejs/vite#21601)) ([c9b9359](vitejs/vite@c9b9359)) - **bundled-dev:** add worker test cases ([#​21557](vitejs/vite#21557)) ([569bc98](vitejs/vite@569bc98)) ##### Beta Changelogs ##### [8.0.0-beta.18](vitejs/vite@v8.0.0-beta.17...v8.0.0-beta.18) (2026-03-09) See [8.0.0-beta.18 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.18/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.17](vitejs/vite@v8.0.0-beta.16...v8.0.0-beta.17) (2026-03-09) See [8.0.0-beta.17 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.17/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.16](vitejs/vite@v8.0.0-beta.15...v8.0.0-beta.16) (2026-02-27) See [8.0.0-beta.16 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.16/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.15](vitejs/vite@v8.0.0-beta.14...v8.0.0-beta.15) (2026-02-19) See [8.0.0-beta.15 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.15/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.14](vitejs/vite@v8.0.0-beta.13...v8.0.0-beta.14) (2026-02-12) See [8.0.0-beta.14 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.14/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.13](vitejs/vite@v8.0.0-beta.12...v8.0.0-beta.13) (2026-02-05) See [8.0.0-beta.13 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.13/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.12](vitejs/vite@v8.0.0-beta.11...v8.0.0-beta.12) (2026-02-03) See [8.0.0-beta.12 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.12/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.11](vitejs/vite@v8.0.0-beta.10...v8.0.0-beta.11) (2026-01-29) See [8.0.0-beta.11 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.11/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.10](vitejs/vite@v8.0.0-beta.9...v8.0.0-beta.10) (2026-01-24) See [8.0.0-beta.10 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.10/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.9](vitejs/vite@v8.0.0-beta.8...v8.0.0-beta.9) (2026-01-22) See [8.0.0-beta.9 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.9/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.8](vitejs/vite@v8.0.0-beta.7...v8.0.0-beta.8) (2026-01-15) See [8.0.0-beta.8 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.8/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.7](vitejs/vite@v8.0.0-beta.6...v8.0.0-beta.7) (2026-01-08) See [8.0.0-beta.7 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.7/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.6](vitejs/vite@v8.0.0-beta.5...v8.0.0-beta.6) (2026-01-07) See [8.0.0-beta.6 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.6/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.5](vitejs/vite@v8.0.0-beta.4...v8.0.0-beta.5) (2025-12-25) See [8.0.0-beta.5 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.5/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.4](vitejs/vite@v8.0.0-beta.3...v8.0.0-beta.4) (2025-12-22) See [8.0.0-beta.4 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.4/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.3](vitejs/vite@v8.0.0-beta.2...v8.0.0-beta.3) (2025-12-18) See [8.0.0-beta.3 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.3/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.2](vitejs/vite@v8.0.0-beta.1...v8.0.0-beta.2) (2025-12-12) See [8.0.0-beta.2 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.2/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.1](vitejs/vite@v8.0.0-beta.0...v8.0.0-beta.1) (2025-12-08) See [8.0.0-beta.1 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.1/packages/vite/CHANGELOG.md) ##### [8.0.0-beta.0](vitejs/vite@v7.2.4...v8.0.0-beta.0) (2025-12-03) See [8.0.0-beta.0 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.0/packages/vite/CHANGELOG.md) ##### Rolldown-Vite changelogs See [rolldown-vite changelog](https://github.com/vitejs/rolldown-vite/blob/v7.2.10/packages/vite/CHANGELOG.md) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My42Ni41IiwidXBkYXRlZEluVmVyIjoiNDMuNzYuMiIsInRhcmdldEJyYW5jaCI6Im5leHQiLCJsYWJlbHMiOltdfQ==--> Reviewed-on: https://git.valverde.cloud/Thilawyn/effect-fc/pulls/37 Co-authored-by: Renovate Bot <renovate-bot@valverde.cloud> Co-committed-by: Renovate Bot <renovate-bot@valverde.cloud>
This PR contains the following updates:
| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [vite](https://vite.dev) ([source](https://github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`^7.0.0` → `^8.0.0`](https://renovatebot.com/diffs/npm/vite/7.3.5/8.0.16) |  |  |
---
> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/3) for more information.
---
### Release Notes
<details>
<summary>vitejs/vite (vite)</summary>
### [`v8.0.16`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8016-2026-06-01-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.15...v8.0.16)
##### Bug Fixes
- **deps:** reject UNC paths for launch-editor-middleware ([#​22571](https://github.com/vitejs/vite/issues/22571)) ([50b9512](https://github.com/vitejs/vite/commit/50b951225bbf6151eb84a3ad5a454908ab4a76c9))
- reject windows alternate paths ([#​22572](https://github.com/vitejs/vite/issues/22572)) ([dc245c7](https://github.com/vitejs/vite/commit/dc245c71e5007ea4d891a025e2d69ac96c736546))
### [`v8.0.15`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8015-2026-06-01-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.14...v8.0.15)
##### Features
- send 408 on request timeout ([#​22476](https://github.com/vitejs/vite/issues/22476)) ([c85c9ee](https://github.com/vitejs/vite/commit/c85c9eeb9aaf41f477b48b057146887bd5620797))
- update rolldown to 1.0.3 ([#​22538](https://github.com/vitejs/vite/issues/22538)) ([646dbed](https://github.com/vitejs/vite/commit/646dbedd2870f8ec48df0321177d8aa64bbd1575))
##### Bug Fixes
- capitalize error messages and remove spurious space in parse error ([#​22488](https://github.com/vitejs/vite/issues/22488)) ([85a0eff](https://github.com/vitejs/vite/commit/85a0eff1c82bbb7c99a0fe8e63704316578a40d3))
- **deps:** update all non-major dependencies ([#​22511](https://github.com/vitejs/vite/issues/22511)) ([2686d7d](https://github.com/vitejs/vite/commit/2686d7d0b722402204d3bcc687a87adea1bcf9fa))
- **dev:** fix html-proxy cache key mismatch for /@​fs/ HTML paths ([#​21762](https://github.com/vitejs/vite/issues/21762)) ([47c4213](https://github.com/vitejs/vite/commit/47c4213f134f562c41ed7c031e4788510cf7e31e))
- **glob:** error on relative glob in virtual module when no files match ([#​22497](https://github.com/vitejs/vite/issues/22497)) ([5c8e98f](https://github.com/vitejs/vite/commit/5c8e98f8b584ac5d42f0f9b8580c49792213b13c))
- **optimizer:** close the rolldown bundle when write() rejects ([#​22528](https://github.com/vitejs/vite/issues/22528)) ([e3cfb9d](https://github.com/vitejs/vite/commit/e3cfb9deecff563550fa1b8abd27656b8b292815))
- **resolve:** provide onWarn for viteResolvePlugin in JS plugin containers ([#​22509](https://github.com/vitejs/vite/issues/22509)) ([40985f1](https://github.com/vitejs/vite/commit/40985f1c09b7696e594e6c5695fbc315d2da2c83))
##### Miscellaneous Chores
- **deps:** update rolldown-related dependencies ([#​22566](https://github.com/vitejs/vite/issues/22566)) ([3052a67](https://github.com/vitejs/vite/commit/3052a67d9350f4c5076ab1c222c4a21a589cbcdd))
##### Code Refactoring
- correct logic in `collectAllModules` function ([#​22562](https://github.com/vitejs/vite/issues/22562)) ([6978a9c](https://github.com/vitejs/vite/commit/6978a9ceb942c4f5e211d52b8a1e569f8a65c80c))
### [`v8.0.14`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8014-2026-05-21-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.13...v8.0.14)
##### Features
- update rolldown to 1.0.2 ([#​22484](https://github.com/vitejs/vite/issues/22484)) ([96efc88](https://github.com/vitejs/vite/commit/96efc88570b6a6ddf1a910f106920cbac07b3cf0))
##### Bug Fixes
- **deps:** update all non-major dependencies ([#​22471](https://github.com/vitejs/vite/issues/22471)) ([98b8163](https://github.com/vitejs/vite/commit/98b81632139d51820f82036e58d6fbbf122b77b3))
- **dev:** handle errors when sending messages to vite server ([#​22450](https://github.com/vitejs/vite/issues/22450)) ([e8e9a34](https://github.com/vitejs/vite/commit/e8e9a34dcf2540139de558a10187630884d10217))
- **html:** handle trailing slash paths in transformIndexHtml ([#​22480](https://github.com/vitejs/vite/issues/22480)) ([5d94d1b](https://github.com/vitejs/vite/commit/5d94d1bffdb2a15de9341194d89baec86ce1f693))
- **optimizer:** pass oxc jsx options to transformSync in dependency scan ([#​22342](https://github.com/vitejs/vite/issues/22342)) ([b3132da](https://github.com/vitejs/vite/commit/b3132dacea9c6e0cf526cd9f0f09d850f577c262))
##### Miscellaneous Chores
- **deps:** update rolldown-related dependencies ([#​22470](https://github.com/vitejs/vite/issues/22470)) ([7cb728e](https://github.com/vitejs/vite/commit/7cb728eb629cc677661f1bc52a044ffc0b87fc7f))
- remove irrelevant commits from changelog ([2c69495](https://github.com/vitejs/vite/commit/2c69495f250edf01132d4a20128de19dbe836086))
##### Code Refactoring
- **glob:** do not rewrite import path for absolute base ([#​22310](https://github.com/vitejs/vite/issues/22310)) ([0ae2844](https://github.com/vitejs/vite/commit/0ae2844ab6d6d1ccf78a2975b8132769fc35b302))
##### Tests
- **css:** sass does not use main field ([#​22449](https://github.com/vitejs/vite/issues/22449)) ([ebf39a0](https://github.com/vitejs/vite/commit/ebf39a04329ddc6ba765e006a5d463680a952270))
### [`v8.0.13`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8013-2026-05-14-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.12...v8.0.13)
##### Features
- **bundled-dev:** add lazy bundling support ([#​21406](https://github.com/vitejs/vite/issues/21406)) ([4f0949f](https://github.com/vitejs/vite/commit/4f0949f3f13e4b2b34d32bf7b2b4de5f26bea192))
- **optimizer:** improve the esbuild plugin converter to pass some properties of build result to `onEnd` ([#​22357](https://github.com/vitejs/vite/issues/22357)) ([47071ce](https://github.com/vitejs/vite/commit/47071ce53f21726cf39e999c4407c4828ecbe957))
- update rolldown to 1.0.1 ([#​22444](https://github.com/vitejs/vite/issues/22444)) ([8c766a6](https://github.com/vitejs/vite/commit/8c766a6c5ee014969c4e32f29cc265e8e2c96e18))
##### Bug Fixes
- **build:** copy public directory after building same environment with `write=false` ([#​22328](https://github.com/vitejs/vite/issues/22328)) ([158e8ae](https://github.com/vitejs/vite/commit/158e8ae8efdf7075ab295727e36b5ff68da3243e))
- **css:** await sass/less/styl worker disposal on teardown (fix [#​22274](https://github.com/vitejs/vite/issues/22274)) ([#​22275](https://github.com/vitejs/vite/issues/22275)) ([b7edcb7](https://github.com/vitejs/vite/commit/b7edcb7d0dd17ddfeef4ace78d610c099216dade))
- **css:** keep deprecated `name`/`originalFileName` in synthetic `assetFileNames` call ([#​22439](https://github.com/vitejs/vite/issues/22439)) ([8e59c97](https://github.com/vitejs/vite/commit/8e59c97a44d923c4c06f67287a793c9aa5a4ebaa))
- make `isBundled` per environment ([#​22257](https://github.com/vitejs/vite/issues/22257)) ([a576326](https://github.com/vitejs/vite/commit/a5763266170f8606836da5c6f987b4b2fd6ddc55))
- **ssr:** avoid rewriting labels that collide with imports ([#​22451](https://github.com/vitejs/vite/issues/22451)) ([d9b18e0](https://github.com/vitejs/vite/commit/d9b18e0387a253628d3d834288e79c5f7e85d566))
##### Miscellaneous Chores
- remove irrelevant commits from changelog ([#​22430](https://github.com/vitejs/vite/issues/22430)) ([6ea3838](https://github.com/vitejs/vite/commit/6ea383859aaf0ef8e673b458f164e84aeb6ff51d))
- update changelog ([#​22413](https://github.com/vitejs/vite/issues/22413)) ([fcdc87c](https://github.com/vitejs/vite/commit/fcdc87cc6799857e2bab0f44f333a681694fff74))
### [`v8.0.12`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8012-2026-05-11-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.11...v8.0.12)
##### Features
- update rolldown to 1.0.0 ([#​22401](https://github.com/vitejs/vite/issues/22401)) ([cf0ff41](https://github.com/vitejs/vite/commit/cf0ff4154b26cffbf18541ade1a50818842731d3))
##### Bug Fixes
- **deps:** update all non-major dependencies ([#​22420](https://github.com/vitejs/vite/issues/22420)) ([2be6000](https://github.com/vitejs/vite/commit/2be6000130e3ae2160acc301baa4f7913fbc1f6e))
- **module-runner:** prevent partial-exports race on concurrent imports of in-flight invalidated re-export chains ([#​22369](https://github.com/vitejs/vite/issues/22369)) ([f5a22e6](https://github.com/vitejs/vite/commit/f5a22e62ada75286138b7ceb3825e43958ef00e1))
- refer to `rolldownOptions` instead of deprecated `rollupOptions` in messages ([#​22400](https://github.com/vitejs/vite/issues/22400)) ([b675c7b](https://github.com/vitejs/vite/commit/b675c7b6697423275ad9dd521d3ce7c8679761a0))
- **worker:** apply `build.target` to worker bundle ([#​22404](https://github.com/vitejs/vite/issues/22404)) ([3c93fde](https://github.com/vitejs/vite/commit/3c93fde21f07d44db7669ca7484f4e7a8767afe5))
- **worker:** forward define to worker bundle transform ([#​22408](https://github.com/vitejs/vite/issues/22408)) ([d4838a0](https://github.com/vitejs/vite/commit/d4838a0358d9f04a980d4d2ac7263f21a6b28ee2))
##### Miscellaneous Chores
- **deps:** update dependency eslint-plugin-n to v18 ([#​22423](https://github.com/vitejs/vite/issues/22423)) ([2fe7bd2](https://github.com/vitejs/vite/commit/2fe7bd2d73beb697a3d149e943ac74b768c9d27f))
- **deps:** update rolldown-related dependencies ([#​22421](https://github.com/vitejs/vite/issues/22421)) ([66b9eb3](https://github.com/vitejs/vite/commit/66b9eb35188007e0e9a1bd03b4be820016cad60b))
### [`v8.0.11`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8011-2026-05-07-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.10...v8.0.11)
##### Features
- update rolldown to 1.0.0-rc.18 ([#​22360](https://github.com/vitejs/vite/issues/22360)) ([3f80524](https://github.com/vitejs/vite/commit/3f80524aa1fa40bfa831f1a1bf2641c3979ba396))
##### Bug Fixes
- **deps:** update all non-major dependencies ([#​22334](https://github.com/vitejs/vite/issues/22334)) ([672c962](https://github.com/vitejs/vite/commit/672c96288fd5440bbecddc65551e713edeb8d403))
- **deps:** update all non-major dependencies ([#​22382](https://github.com/vitejs/vite/issues/22382)) ([5c0cfcb](https://github.com/vitejs/vite/commit/5c0cfcb83dde2c6e25b6c3215dd622956bf29631))
- **glob:** align hmr matcher options with glob enumeration ([#​22306](https://github.com/vitejs/vite/issues/22306)) ([30028f9](https://github.com/vitejs/vite/commit/30028f94516fa06dd0212567373169b3b3f6e393))
- make separate object instance for each environment ([#​22276](https://github.com/vitejs/vite/issues/22276)) ([7c2aa3b](https://github.com/vitejs/vite/commit/7c2aa3b40ba00ce1299e4f31932c7929f179a80a))
##### Documentation
- **create-vite:** list react-compiler templates in README ([#​22347](https://github.com/vitejs/vite/issues/22347)) ([7c3a61f](https://github.com/vitejs/vite/commit/7c3a61f42da6445904e93f0e29e9a2a838fa684a))
- explain mergeConfig skips null/undefined ([#​22325](https://github.com/vitejs/vite/issues/22325)) ([2151f70](https://github.com/vitejs/vite/commit/2151f701dc98270c905c540b209fb6d23d53d3ad))
- mention native config loader in CLI options ([#​22348](https://github.com/vitejs/vite/issues/22348)) ([0420c5d](https://github.com/vitejs/vite/commit/0420c5d37b6049476b6e6c16662be372575dd683))
- update evan's x handle ([640202a](https://github.com/vitejs/vite/commit/640202a2167b0c19b94e4d3b8ff87309ae1f44d0))
##### Miscellaneous Chores
- **deps:** update dependency tsdown to ^0.21.10 ([#​22333](https://github.com/vitejs/vite/issues/22333)) ([3b51e05](https://github.com/vitejs/vite/commit/3b51e050214c5a817c163838ab8643fe34c7d0c3))
- **deps:** update rolldown-related dependencies ([#​22383](https://github.com/vitejs/vite/issues/22383)) ([555ff36](https://github.com/vitejs/vite/commit/555ff36de70a43b3b3dc22f958bf78fe75e11d67))
- **deps:** update transitive packages to fix npm audit alerts ([#​22316](https://github.com/vitejs/vite/issues/22316)) ([86aee62](https://github.com/vitejs/vite/commit/86aee6268aa879d74f68a890392c1dee973ebf05))
##### Code Refactoring
- devtools integration ([#​22312](https://github.com/vitejs/vite/issues/22312)) ([3c8bf06](https://github.com/vitejs/vite/commit/3c8bf064ec76e311f2d8be3a37dcfdcdd4e4253c))
- remove unnecessary async ([#​22296](https://github.com/vitejs/vite/issues/22296)) ([b31fd35](https://github.com/vitejs/vite/commit/b31fd355d93eb166573362bd09c07745b9f76755))
- show direct path type in bad character warning ([#​22339](https://github.com/vitejs/vite/issues/22339)) ([0c162e9](https://github.com/vitejs/vite/commit/0c162e96a6545c93808e7338b9adeca2636596fa))
##### Tests
- **create-vite:** use short help alias ([#​22389](https://github.com/vitejs/vite/issues/22389)) ([994ab66](https://github.com/vitejs/vite/commit/994ab66bc4dc872278d8353d710ffc4bbd881f8d))
### [`v8.0.10`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.9...v8.0.10)
##### Features
- update rolldown to 1.0.0-rc.17 ([#​22299](https://github.com/vitejs/vite/issues/22299)) ([a4d06d9](https://github.com/vitejs/vite/commit/a4d06d9015167d30fe8ac63d1ce2edc146cdca31))
##### Bug Fixes
- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#​22147](https://github.com/vitejs/vite/issues/22147)) ([a4d828f](https://github.com/vitejs/vite/commit/a4d828f2d5ed85440bc0774eab342e6f9a5e5f62))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#​22292](https://github.com/vitejs/vite/issues/22292)) ([83f0a78](https://github.com/vitejs/vite/commit/83f0a785a2ae48d6761fb69f4b0523a24ae9342c))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#​22273](https://github.com/vitejs/vite/issues/22273)) ([5c7cec6](https://github.com/vitejs/vite/commit/5c7cec69b637544ab16009d8758df7dbbf7f2674))
- remove format sniffing module resolution from JS resolver ([#​22297](https://github.com/vitejs/vite/issues/22297)) ([b8a21cc](https://github.com/vitejs/vite/commit/b8a21cc821c1434ac9d2b85ec53005df9edc306b))
##### Code Refactoring
- enable some typecheck rules ([#​22278](https://github.com/vitejs/vite/issues/22278)) ([9437518](https://github.com/vitejs/vite/commit/943751801f70057ae94f9092e349c8f3fd9ccdf2))
- typecheck client directory ([#​22284](https://github.com/vitejs/vite/issues/22284)) ([40a0847](https://github.com/vitejs/vite/commit/40a0847276502b33a3942b3cfab04b20218f3543))
### [`v8.0.9`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.8...v8.0.9)
##### Features
- update rolldown to 1.0.0-rc.16 ([#​22248](https://github.com/vitejs/vite/issues/22248)) ([2947edd](https://github.com/vitejs/vite/commit/2947edd57ceb64a0b4dc43269743e8e44e68c09b))
##### Bug Fixes
- allow binding when strictPort is set but wildcard port is in use ([#​22150](https://github.com/vitejs/vite/issues/22150)) ([dfc8aa5](https://github.com/vitejs/vite/commit/dfc8aa5057dd8ec2b1223980d1e2eeb946ac3384))
- **build:** emptyOutDir should happen for watch rebuilds ([#​22207](https://github.com/vitejs/vite/issues/22207)) ([ee52267](https://github.com/vitejs/vite/commit/ee522672bb374c7ff95a347f14732491121b1cd6))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#​22269](https://github.com/vitejs/vite/issues/22269)) ([868f141](https://github.com/vitejs/vite/commit/868f1411a6f474baa4417f2d6524692dd452f760))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#​22039](https://github.com/vitejs/vite/issues/22039)) ([374bb5d](https://github.com/vitejs/vite/commit/374bb5d597fcd0485e929565c698d8ed219136f8))
- **deps:** update all non-major dependencies ([#​22219](https://github.com/vitejs/vite/issues/22219)) ([4cd0d67](https://github.com/vitejs/vite/commit/4cd0d6760edd5fb0841abe86538de3c225e880a1))
- **deps:** update all non-major dependencies ([#​22268](https://github.com/vitejs/vite/issues/22268)) ([c28e9c1](https://github.com/vitejs/vite/commit/c28e9c12a849f80e6fdc93f42283ad2863ab9dbc))
- detect Deno workspace root (fix [#​22237](https://github.com/vitejs/vite/issues/22237)) ([#​22238](https://github.com/vitejs/vite/issues/22238)) ([1b793c0](https://github.com/vitejs/vite/commit/1b793c0e1726467fffd06ffad9bc81c61a840188))
- **dev:** handle errors in `watchChange` hook ([#​22188](https://github.com/vitejs/vite/issues/22188)) ([fc08bda](https://github.com/vitejs/vite/commit/fc08bdab9bba871b03689f2f6997c3a4ba4351da))
- **optimizer:** handle more chars that will be sanitized ([#​22208](https://github.com/vitejs/vite/issues/22208)) ([3f24533](https://github.com/vitejs/vite/commit/3f24533ac4845ed22547279d1721bd82a35345e3))
- skip fallback sourcemap generation for `?raw` imports ([#​22148](https://github.com/vitejs/vite/issues/22148)) ([3ec9cda](https://github.com/vitejs/vite/commit/3ec9cdaac7936ca32d0956c4cb1eb6e172945996))
##### Documentation
- align the descriptions in READMEs ([#​22231](https://github.com/vitejs/vite/issues/22231)) ([44c42b9](https://github.com/vitejs/vite/commit/44c42b97639bb6ad777e66d752b2829cccb9a27a))
- fix reuses wording in dev environment comment ([#​22173](https://github.com/vitejs/vite/issues/22173)) ([9163412](https://github.com/vitejs/vite/commit/9163412fdfec7fb1656529713326a5b5c5e986ea))
- fix wording in sass error comment ([#​22214](https://github.com/vitejs/vite/issues/22214)) ([bc5c6a7](https://github.com/vitejs/vite/commit/bc5c6a7a498845dff20dc410c395355b79a4b753))
- update build CLI defaults ([#​22261](https://github.com/vitejs/vite/issues/22261)) ([605bb97](https://github.com/vitejs/vite/commit/605bb97994678a1bb70a8de9a85c29d5f5d48c5a))
##### Miscellaneous Chores
- **deps:** update dependency dotenv-expand to v13 ([#​22271](https://github.com/vitejs/vite/issues/22271)) ([0a3887d](https://github.com/vitejs/vite/commit/0a3887da18812cacb254c616e4dd35631e776fda))
### [`v8.0.8`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.7...v8.0.8)
##### Features
- update rolldown to 1.0.0-rc.15 ([#​22201](https://github.com/vitejs/vite/issues/22201)) ([6baf587](https://github.com/vitejs/vite/commit/6baf587255936e91348cbe624caefd10e8c607ab))
##### Bug Fixes
- avoid `dns.getDefaultResultOrder` temporary ([#​22202](https://github.com/vitejs/vite/issues/22202)) ([15f1c15](https://github.com/vitejs/vite/commit/15f1c15ac9be343ee4f317fd025c3d67f0c7bd53))
- **ssr:** class property keys hoisting matching imports ([#​22199](https://github.com/vitejs/vite/issues/22199)) ([e137601](https://github.com/vitejs/vite/commit/e1376018cd516d6970534fce495e24f9ee683ce3))
### [`v8.0.7`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.6...v8.0.7)
##### Bug Fixes
- use sync dns.getDefaultResultOrder instead of dns.promises ([#​22185](https://github.com/vitejs/vite/issues/22185)) ([5c05b04](https://github.com/vitejs/vite/commit/5c05b04db6f3f64af60ff6525eb5f04bc330fbb5))
### [`v8.0.6`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.5...v8.0.6)
##### Features
- update rolldown to 1.0.0-rc.13 ([#​22097](https://github.com/vitejs/vite/issues/22097)) ([51d3e48](https://github.com/vitejs/vite/commit/51d3e48980bf3e352d31ecde49d1aa56859918e0))
##### Bug Fixes
- **css:** avoid mutating sass error multiple times ([#​22115](https://github.com/vitejs/vite/issues/22115)) ([d5081c2](https://github.com/vitejs/vite/commit/d5081c2f3e73f3fc06956d8cf5f2cf06463c2325))
- **optimize-deps:** hoist CJS interop assignment ([#​22156](https://github.com/vitejs/vite/issues/22156)) ([17a8f9e](https://github.com/vitejs/vite/commit/17a8f9edfcd3b9344668120a84e3328aeada3c97))
##### Performance Improvements
- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#​22151](https://github.com/vitejs/vite/issues/22151)) ([56ec256](https://github.com/vitejs/vite/commit/56ec25613dba6cc71911f7af6e545ebcb77ec012))
##### Miscellaneous Chores
- **create-vite:** remove unnecessary DOM.Iterable ([#​22168](https://github.com/vitejs/vite/issues/22168)) ([bdc53ab](https://github.com/vitejs/vite/commit/bdc53ab1e67f7e2e000112eeed9c85413ddb0e9e))
- replace remaining prettier script ([#​22179](https://github.com/vitejs/vite/issues/22179)) ([af71fb2](https://github.com/vitejs/vite/commit/af71fb26dd15098b9523efc3d8ed04f27553174b))
### [`v8.0.5`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.4...v8.0.5)
##### Bug Fixes
- apply server.fs check to env transport ([#​22159](https://github.com/vitejs/vite/issues/22159)) ([f02d9fd](https://github.com/vitejs/vite/commit/f02d9fde0b195afe3ea2944414186962fbbe41e0))
- avoid path traversal with optimize deps sourcemap handler ([#​22161](https://github.com/vitejs/vite/issues/22161)) ([79f002f](https://github.com/vitejs/vite/commit/79f002f2286c03c88c7b74c511c7f9fc6dc46694))
- check `server.fs` after stripping query as well ([#​22160](https://github.com/vitejs/vite/issues/22160)) ([a9a3df2](https://github.com/vitejs/vite/commit/a9a3df299378d9cbc5f069e3536a369f8188c8ff))
- disallow referencing files outside the package from sourcemap ([#​22158](https://github.com/vitejs/vite/issues/22158)) ([f05f501](https://github.com/vitejs/vite/commit/f05f50173461789e0f1323fe06b51f18ca41c132))
### [`v8.0.4`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.3...v8.0.4)
##### Features
- allow esbuild 0.28 as peer deps ([#​22155](https://github.com/vitejs/vite/issues/22155)) ([b0da973](https://github.com/vitejs/vite/commit/b0da97372f5dba73e78035d1cc7680466ff6cf7f))
- **hmr:** truncate list of files on hmr update ([#​21535](https://github.com/vitejs/vite/issues/21535)) ([d00e806](https://github.com/vitejs/vite/commit/d00e806d7be15ebbfe7875e9244963d80ee8b142))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#​21797](https://github.com/vitejs/vite/issues/21797)) ([f61a1ab](https://github.com/vitejs/vite/commit/f61a1ab33b05dc6f6a7eda6e8bc9c4c5b9aab133))
##### Bug Fixes
- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#​22043](https://github.com/vitejs/vite/issues/22043)) ([99897d2](https://github.com/vitejs/vite/commit/99897d27b44dd73307fa03e2f11f0baa1a1dc939))
- add types for `vite/modulepreload-polyfill` ([#​22126](https://github.com/vitejs/vite/issues/22126)) ([17330d2](https://github.com/vitejs/vite/commit/17330d2b9e132460f194d6d4b547cfee7e25c788))
- **deps:** update all non-major dependencies ([#​22073](https://github.com/vitejs/vite/issues/22073)) ([6daa10f](https://github.com/vitejs/vite/commit/6daa10ff1e8d15a90f49d8dd909ff208da85d6d8))
- **deps:** update all non-major dependencies ([#​22143](https://github.com/vitejs/vite/issues/22143)) ([22b0166](https://github.com/vitejs/vite/commit/22b016612703320db45c64a2fe44472051ef5ec5))
- **resolve:** resolve tsconfig paths starting with `#` ([#​22038](https://github.com/vitejs/vite/issues/22038)) ([3460fc5](https://github.com/vitejs/vite/commit/3460fc55aa89aef4103d2c05ac2e446032511a6d))
- **ssr:** use browser platform for webworker SSR builds (fix [#​21969](https://github.com/vitejs/vite/issues/21969)) ([#​21963](https://github.com/vitejs/vite/issues/21963)) ([364c227](https://github.com/vitejs/vite/commit/364c2273a121dad4d93ec3b9ec87ffbe0d6e860b))
##### Documentation
- add `environment.fetchModule` documentation ([#​22035](https://github.com/vitejs/vite/issues/22035)) ([54229e7](https://github.com/vitejs/vite/commit/54229e78631ebf10d1db767b51ea85f3cf06718a))
##### Miscellaneous Chores
- **deps:** update rolldown-related dependencies ([#​21989](https://github.com/vitejs/vite/issues/21989)) ([0ded627](https://github.com/vitejs/vite/commit/0ded6274579e8bda6b22a7ba93b15d15b4c28b78))
##### Code Refactoring
- upgrade to typescript 6 ([#​22110](https://github.com/vitejs/vite/issues/22110)) ([cc41398](https://github.com/vitejs/vite/commit/cc41398c2cf0bb5061cf0ca5dc3b408ae7e41191))
### [`v8.0.3`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.2...v8.0.3)
##### Features
- update rolldown to 1.0.0-rc.12 ([#​22024](https://github.com/vitejs/vite/issues/22024)) ([84164ef](https://github.com/vitejs/vite/commit/84164ef47b24b1de114f1c29446a9e650825d4ea))
##### Bug Fixes
- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#​22017](https://github.com/vitejs/vite/issues/22017)) ([5464190](https://github.com/vitejs/vite/commit/5464190a3ee8f23db20004e7818186fbcc32b0e5))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#​21985](https://github.com/vitejs/vite/issues/21985)) ([77c95bf](https://github.com/vitejs/vite/commit/77c95bff834c43f8be9fe513c10b5393805a7487))
- **module-runner:** skip re-import if the runner is closed ([#​22020](https://github.com/vitejs/vite/issues/22020)) ([ee2c2cd](https://github.com/vitejs/vite/commit/ee2c2cd2c2ce3f53088bd2313fa23e9d52a49b4f))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#​22018](https://github.com/vitejs/vite/issues/22018)) ([ddfe20d](https://github.com/vitejs/vite/commit/ddfe20d19e95a323fa3c8d2c19a02c4e02f93824))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#​22019](https://github.com/vitejs/vite/issues/22019)) ([cff5f0c](https://github.com/vitejs/vite/commit/cff5f0cca5f08c2ce50f233441485e10b6e115e9))
##### Miscellaneous Chores
- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#​22027](https://github.com/vitejs/vite/issues/22027)) ([7e56003](https://github.com/vitejs/vite/commit/7e56003fec3e1b94a20516a901580198a51da614))
##### Tests
- **html:** add tests for `getCssFilesForChunk` ([#​22016](https://github.com/vitejs/vite/issues/22016)) ([43fbbf9](https://github.com/vitejs/vite/commit/43fbbf9a09dfd17456ae0611d034c366fcb38998))
### [`v8.0.2`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.1...v8.0.2)
##### Features
- update rolldown to 1.0.0-rc.11 ([#​21998](https://github.com/vitejs/vite/issues/21998)) ([ff91c31](https://github.com/vitejs/vite/commit/ff91c319facd602dc5eea81ed7e7d79ae7dadb95))
##### Bug Fixes
- **deps:** update all non-major dependencies ([#​21988](https://github.com/vitejs/vite/issues/21988)) ([9b7d150](https://github.com/vitejs/vite/commit/9b7d15002a75474421bc5636238336d88c7fe2f3))
##### Miscellaneous Chores
- **deps:** update dependency [@​vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#​21992](https://github.com/vitejs/vite/issues/21992)) ([b2dd65b](https://github.com/vitejs/vite/commit/b2dd65bf2f113719b72450f2e19696213fd9e255))
### [`v8.0.1`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8016-2026-06-01-small)
[Compare Source](https://github.com/vitejs/vite/compare/v8.0.0...v8.0.1)
##### Bug Fixes
- **deps:** reject UNC paths for launch-editor-middleware ([#​22571](https://github.com/vitejs/vite/issues/22571)) ([50b9512](https://github.com/vitejs/vite/commit/50b951225bbf6151eb84a3ad5a454908ab4a76c9))
- reject windows alternate paths ([#​22572](https://github.com/vitejs/vite/issues/22572)) ([dc245c7](https://github.com/vitejs/vite/commit/dc245c71e5007ea4d891a025e2d69ac96c736546))
### [`v8.0.0`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)
[Compare Source](https://github.com/vitejs/vite/compare/v7.3.5...v8.0.0)

Today, we're thrilled to announce the release of the next Vite major:
- **[Vite 8.0 announcement blog post](https://vite.dev/blog/announcing-vite8.html)**
- [Docs](https://vite.dev/) (translations: [简体中文](https://cn.vite.dev/), [日本語](https://ja.vite.dev/), [Español](https://es.vite.dev/), [Português](https://pt.vite.dev/), [한국어](https://ko.vite.dev/), [Deutsch](https://de.vite.dev/), [فارسی](https://fa.vite.dev/))
- [Migration Guide](https://vite.dev/guide/migration.html)
##### ⚠ BREAKING CHANGES
- remove `import.meta.hot.accept` resolution fallback ([#​21382](https://github.com/vitejs/vite/issues/21382)) ([71d0797](https://github.com/vitejs/vite/commit/71d0797a719440f2a09b3364bfcf18576c2b67fb))
- update default browser target ([#​21193](https://github.com/vitejs/vite/issues/21193)) ([8c3dd06](https://github.com/vitejs/vite/commit/8c3dd06bd9903bf0e6bc51f3554eea8cb6b26903))
- the epic `rolldown-vite` merge ([#​21189](https://github.com/vitejs/vite/issues/21189)) ([4a7f8d4](https://github.com/vitejs/vite/commit/4a7f8d43e6b14b89fef278c3ea86f9e3f64b7fc2))
##### Features
- update rolldown to 1.0.0-rc.9 ([#​21813](https://github.com/vitejs/vite/issues/21813)) ([f05be0e](https://github.com/vitejs/vite/commit/f05be0eabf5c045b8892d463081da3c8fbf5a5ae))
- warn when `vite-tsconfig-paths` plugin is detected ([#​21781](https://github.com/vitejs/vite/issues/21781)) ([ada493e](https://github.com/vitejs/vite/commit/ada493e4214ef2028b96583550443a386be2e2ae))
- **css:** support es2025 build target for lightningcss ([#​21769](https://github.com/vitejs/vite/issues/21769)) ([08906e7](https://github.com/vitejs/vite/commit/08906e76f2fc0e55c8aea6243f6203ce0c78f106))
- forward browser console logs and errors to dev server terminal ([#​20916](https://github.com/vitejs/vite/issues/20916)) ([2540ed0](https://github.com/vitejs/vite/commit/2540ed06d0b6f93829d2d764b6a02f7dbfd14923))
- update rolldown to 1.0.0-rc.8 ([#​21790](https://github.com/vitejs/vite/issues/21790)) ([a0c950e](https://github.com/vitejs/vite/commit/a0c950e30945cc97fb2381a2affac086730fa31e))
- export `Visitor` and `ESTree` from `rolldown/utils` ([#​21664](https://github.com/vitejs/vite/issues/21664)) ([45de31e](https://github.com/vitejs/vite/commit/45de31e5ffcc514832aec96fa6e09a189c26d684))
- update rolldown to 1.0.0-rc.6 ([#​21714](https://github.com/vitejs/vite/issues/21714)) ([37a65f8](https://github.com/vitejs/vite/commit/37a65f8c31b5baeb4dadecfd4da98f81bae4202e))
- use util.inspect for CLI error display ([#​21668](https://github.com/vitejs/vite/issues/21668)) ([5f425a9](https://github.com/vitejs/vite/commit/5f425a9126ad1a483f482970bef8c29a0e721a3c))
- update rolldown to 1.0.0-rc.5 ([#​21660](https://github.com/vitejs/vite/issues/21660)) ([b3ddbc5](https://github.com/vitejs/vite/commit/b3ddbc54ee5b836852b09811c8e920b2b2cde7cb))
- update rolldown to 1.0.0-rc.4 ([#​21617](https://github.com/vitejs/vite/issues/21617)) ([1ee5c7f](https://github.com/vitejs/vite/commit/1ee5c7f796c24d7319fbd5258bbdce4968859efe))
- **wasm:** add SSR support for `.wasm?init` ([#​21102](https://github.com/vitejs/vite/issues/21102)) ([216a3b5](https://github.com/vitejs/vite/commit/216a3b53c610918027a7713a0d5495628f77d306))
- integrate devtools ([#​21331](https://github.com/vitejs/vite/issues/21331)) ([acbf507](https://github.com/vitejs/vite/commit/acbf507bcb05f9cd9525c765431b3e0ed97328e4))
- update rolldown to 1.0.0-rc.3 ([#​21554](https://github.com/vitejs/vite/issues/21554)) ([43358e9](https://github.com/vitejs/vite/commit/43358e97cd6485513f25ee11133333cba05841e3))
- **manifest:** add `assets` field for standalone CSS entry points ([#​21015](https://github.com/vitejs/vite/issues/21015)) ([f289b9b](https://github.com/vitejs/vite/commit/f289b9b0ce7821b1554b878d083c426e7a695b59))
- update rolldown to 1.0.0-rc.2 ([#​21512](https://github.com/vitejs/vite/issues/21512)) ([fa136a9](https://github.com/vitejs/vite/commit/fa136a9e68921f3ca396e0870193fe805fbfb7b4))
- **bundled-dev:** support worker in initial bundle ([#​21415](https://github.com/vitejs/vite/issues/21415)) ([f3d3149](https://github.com/vitejs/vite/commit/f3d31499c714fe5c5acf8355520624c662f9d79f))
- **dev:** detect port conflicts on wildcard hosts ([#​21381](https://github.com/vitejs/vite/issues/21381)) ([b0dd5a9](https://github.com/vitejs/vite/commit/b0dd5a993fd2f95c8cb2190a3ca4296bc9e06359))
- shortcuts case insensitive ([#​21224](https://github.com/vitejs/vite/issues/21224)) ([7796ade](https://github.com/vitejs/vite/commit/7796aded764bca987abfec8ab0ad0438c5a5e7eb))
- update rolldown to 1.0.0-rc.1 ([#​21463](https://github.com/vitejs/vite/issues/21463)) ([ff9dd7f](https://github.com/vitejs/vite/commit/ff9dd7fef0d3c898e317fca84a629828f3e28936))
- warn if `envPrefix` contains spaces ([#​21292](https://github.com/vitejs/vite/issues/21292)) ([9fcde3c](https://github.com/vitejs/vite/commit/9fcde3c870896a62fbca19be8ee14efab9393f4a))
- update rolldown to 1.0.0-beta.60 ([#​21408](https://github.com/vitejs/vite/issues/21408)) ([c33aa7c](https://github.com/vitejs/vite/commit/c33aa7cfd142a0dd38ed89589fc7b04cf8866791))
- update rolldown to 1.0.0-beta.59 ([#​21374](https://github.com/vitejs/vite/issues/21374)) ([0037943](https://github.com/vitejs/vite/commit/00379439fa62383460b056d587d0366597c19ab4))
- add `ignoreOutdatedRequests` option to `optimizeDeps` ([#​21364](https://github.com/vitejs/vite/issues/21364)) ([b2e75aa](https://github.com/vitejs/vite/commit/b2e75aabe93e3219f40fa5ad8755d53cdd2439b5))
- add ios to default esbuild targets ([#​21342](https://github.com/vitejs/vite/issues/21342)) ([daae6e9](https://github.com/vitejs/vite/commit/daae6e9f5dd223258a9e7a9a7fa22c8a4564902f))
- update rolldown to 1.0.0-beta.58 ([#​21354](https://github.com/vitejs/vite/issues/21354)) ([ba40cef](https://github.com/vitejs/vite/commit/ba40cef16d20590f7115d4d628d9b79fa0783473))
- update rolldown to 1.0.0-beta.57 ([#​21335](https://github.com/vitejs/vite/issues/21335)) ([d5412ef](https://github.com/vitejs/vite/commit/d5412ef4c472bc5fef4ed69cfee4ef4a929c6be9))
- **css:** support es2024 build target for lightningcss ([#​21294](https://github.com/vitejs/vite/issues/21294)) ([bd33b8e](https://github.com/vitejs/vite/commit/bd33b8e08768fdcef0b09e3eefa649fdcafdd397))
- update rolldown to 1.0.0-beta.56 ([#​21323](https://github.com/vitejs/vite/issues/21323)) ([9847a63](https://github.com/vitejs/vite/commit/9847a634cf36de2e6ac0043ffd22cefb1b5951bd))
- introduce v2 native plugins and enable it by default ([#​21268](https://github.com/vitejs/vite/issues/21268)) ([42f2ab3](https://github.com/vitejs/vite/commit/42f2ab3aec7cd0e03e195611b1e1ddabbedc9d61))
- **ssr:** avoid errors when rewriting already rewritten stacktrace ([#​21269](https://github.com/vitejs/vite/issues/21269)) ([98d9a33](https://github.com/vitejs/vite/commit/98d9a33274d9ac90780786afa612d916feddf2e3))
- update rolldown to 1.0.0-beta.55 ([#​21300](https://github.com/vitejs/vite/issues/21300)) ([2c8db85](https://github.com/vitejs/vite/commit/2c8db858d7081e898f63ce9569c3f19a91a10956))
- update rolldown to 1.0.0-beta.54 ([#​21267](https://github.com/vitejs/vite/issues/21267)) ([c751172](https://github.com/vitejs/vite/commit/c75117213cb1d2d13554fbc26a75e8df191c27eb))
- add a warning that is output when a plugin sets esbuild related options ([#​21218](https://github.com/vitejs/vite/issues/21218)) ([200646b](https://github.com/vitejs/vite/commit/200646b14397bfb80e9b29d2e4b33fcfc72d6b2c))
- highly experimental full bundle mode ([#​21235](https://github.com/vitejs/vite/issues/21235)) ([83d8c99](https://github.com/vitejs/vite/commit/83d8c99753d8bd5c1ea9b7a00e6998c865dad4e2))
- print esbuild options when both esbuild and oxc options are set ([#​21216](https://github.com/vitejs/vite/issues/21216)) ([08ae87b](https://github.com/vitejs/vite/commit/08ae87b14a3ce5f7cb3f1a382f497d36d0c2e01b))
- update default browser target ([#​21193](https://github.com/vitejs/vite/issues/21193)) ([8c3dd06](https://github.com/vitejs/vite/commit/8c3dd06bd9903bf0e6bc51f3554eea8cb6b26903))
- the epic `rolldown-vite` merge ([#​21189](https://github.com/vitejs/vite/issues/21189)) ([4a7f8d4](https://github.com/vitejs/vite/commit/4a7f8d43e6b14b89fef278c3ea86f9e3f64b7fc2))
##### Bug Fixes
- **deps:** update all non-major dependencies ([#​21786](https://github.com/vitejs/vite/issues/21786)) ([eaa4352](https://github.com/vitejs/vite/commit/eaa4352af8f8658e3a10a9945ad9c227fcb2f28a))
- use `watch.watcher` instead of `watch.notify` ([#​21793](https://github.com/vitejs/vite/issues/21793)) ([88953b3](https://github.com/vitejs/vite/commit/88953b331d6b6acf20dc1731745f27712b091fd9))
- **css:** apply `server.origin` to public file URLs in CSS (fix [#​18457](https://github.com/vitejs/vite/issues/18457)) ([#​21697](https://github.com/vitejs/vite/issues/21697)) ([c967f48](https://github.com/vitejs/vite/commit/c967f48b2e888585e977c3a8d829f7370eb40922))
- **deps:** update all non-major dependencies ([#​21732](https://github.com/vitejs/vite/issues/21732)) ([5c921ca](https://github.com/vitejs/vite/commit/5c921ca9bfe64327df82b04ae34ccfe0a7cfa297))
- **dev:** disable extglobs for consistency ([#​21745](https://github.com/vitejs/vite/issues/21745)) ([1958eeb](https://github.com/vitejs/vite/commit/1958eeb34f9eab93f106b785c1c2ddf97b5c3b3a))
- **lib:** keep annotation comments for es output ([#​21740](https://github.com/vitejs/vite/issues/21740)) ([dd3c4f4](https://github.com/vitejs/vite/commit/dd3c4f4cf0f9e665e56e6d9a9cb7007fc3ac0dc3))
- **optimizer:** avoid error happening with a package with asset entrypoint ([#​21766](https://github.com/vitejs/vite/issues/21766)) ([f7e1d07](https://github.com/vitejs/vite/commit/f7e1d0720e6b9f2ce5d358b6a23ebdb72c51be70))
- **ssr:** throw friendly error when calling `ssrLoadModule` with non-runnable ssr env ([#​21739](https://github.com/vitejs/vite/issues/21739)) ([1fa736e](https://github.com/vitejs/vite/commit/1fa736e802c3f0fa0eacdda1d5d1c976794459bd))
- **types:** remove extends ImportMeta from ModuleRunnerImportMeta ([#​21710](https://github.com/vitejs/vite/issues/21710)) ([0176d45](https://github.com/vitejs/vite/commit/0176d45deb29f5db1f551d20d828598c2130be36))
- **wasm:** reset assetUrlRE.lastIndex before .test() in SSR builds ([#​21780](https://github.com/vitejs/vite/issues/21780)) ([3a0d8d9](https://github.com/vitejs/vite/commit/3a0d8d94a8868f5e118c81bc35a657ef19ff7d82))
- **deps:** update all non-major dependencies ([#​21691](https://github.com/vitejs/vite/issues/21691)) ([521fdc0](https://github.com/vitejs/vite/commit/521fdc0ced51ddee7f728e6f891f36ebc6c0e1ce))
- **optimizer:** avoid duplicate modules when `preserveSymlinks` is enabled ([#​21720](https://github.com/vitejs/vite/issues/21720)) ([72165e0](https://github.com/vitejs/vite/commit/72165e0f58d49b894a366af25993cbffbd0ee986))
- **dev:** only treat EADDRINUSE as port conflict in wildcard pre-check ([#​21642](https://github.com/vitejs/vite/issues/21642)) ([e54e25f](https://github.com/vitejs/vite/commit/e54e25fbb9b721b2c655d17e35706e070c92ff70))
- **dev:** prevent concurrent server restarts ([#​21636](https://github.com/vitejs/vite/issues/21636)) ([8ce23a3](https://github.com/vitejs/vite/commit/8ce23a3b6e1eb86eef2b50c1bfbad072bbf9a03a))
- **dev:** return "502 Bad Gateway" on proxy failures instead of 500 ([#​21652](https://github.com/vitejs/vite/issues/21652)) ([e240df2](https://github.com/vitejs/vite/commit/e240df2ea4accd11631aac0f361e846a2e3140b0))
- clear tsconfig cache only when tsconfig.json is cached ([#​21622](https://github.com/vitejs/vite/issues/21622)) ([50c9675](https://github.com/vitejs/vite/commit/50c9675aa6c488b9887b7849a3397b7b29d1bd74))
- **deps:** update all non-major dependencies ([#​21594](https://github.com/vitejs/vite/issues/21594)) ([becdc5d](https://github.com/vitejs/vite/commit/becdc5dcc49efa3769c92e9929fb2280fd776206))
- **lib:** CSS injection point error with nested name IIFE output ([#​21606](https://github.com/vitejs/vite/issues/21606)) ([5003de6](https://github.com/vitejs/vite/commit/5003de6253ffdb23d1a52b1b5e06281d34f3a6ec))
- **module-runner:** incorrect column with `sourcemapInterceptor: "prepareStackTrace"` ([#​21562](https://github.com/vitejs/vite/issues/21562)) ([416c095](https://github.com/vitejs/vite/commit/416c0959ebd63db622c6579b53065e95f09c63f8))
- **module-runner:** prevent crash on negative column in stacktrace ([#​21585](https://github.com/vitejs/vite/issues/21585)) ([a075590](https://github.com/vitejs/vite/commit/a075590c4091240a6f0caca6b052500fd122f041))
- rolldownOptions/rollupOptions merging at environment level ([#​21612](https://github.com/vitejs/vite/issues/21612)) ([db2ecc7](https://github.com/vitejs/vite/commit/db2ecc7675c3932fc9e127b726ab8b0cab25f75c))
- **scanner:** respect tsconfig.json ([#​21547](https://github.com/vitejs/vite/issues/21547)) ([c6c04db](https://github.com/vitejs/vite/commit/c6c04db9c67d1b390d40fd1fd026d49204957f8d))
- avoid registering customization hook for import meta resolver multiple times ([#​21518](https://github.com/vitejs/vite/issues/21518)) ([8bb3203](https://github.com/vitejs/vite/commit/8bb32036792a6f522f5c947112f3d688add755a0))
- **config:** avoid watching rolldown runtime virtual module ([#​21545](https://github.com/vitejs/vite/issues/21545)) ([d18b139](https://github.com/vitejs/vite/commit/d18b13957b3bec08eae5a9ff80340488c8150d46))
- **deps:** update all non-major dependencies ([#​21540](https://github.com/vitejs/vite/issues/21540)) ([9ebaeaa](https://github.com/vitejs/vite/commit/9ebaeaac094db996b1d12665052633c20ac8a9cf))
- populate originalFileNames when resolving CSS asset paths ([#​21542](https://github.com/vitejs/vite/issues/21542)) ([8b47ff7](https://github.com/vitejs/vite/commit/8b47ff76d28630b4dc39c77fbd2762b4c36ad23d))
- **deps:** update all non-major dependencies ([#​21488](https://github.com/vitejs/vite/issues/21488)) ([2b32ca2](https://github.com/vitejs/vite/commit/2b32ca24fe9d742901c2cb5c88e6b1fd734f8c73))
- disable `tsconfig` option when loading config ([#​21517](https://github.com/vitejs/vite/issues/21517)) ([5025c35](https://github.com/vitejs/vite/commit/5025c358d119aa0b60d0505f9dd705950ad897f6))
- **optimizer:** map relative `new URL` paths to correct relative file location ([#​21434](https://github.com/vitejs/vite/issues/21434)) ([ca96cbc](https://github.com/vitejs/vite/commit/ca96cbc8eff23091c288f9eaf1944af2de3c564f))
- avoid using deprecated `output.inlineDynamicImport` option ([#​21464](https://github.com/vitejs/vite/issues/21464)) ([471ce62](https://github.com/vitejs/vite/commit/471ce6275663f068afa241a55711fd646d482385))
- use separate hook object for each environment ([#​21472](https://github.com/vitejs/vite/issues/21472)) ([66347f6](https://github.com/vitejs/vite/commit/66347f6df0e723d9d03ea31ab41ab5b767ad15ba))
- **deps:** update all non-major dependencies ([#​21440](https://github.com/vitejs/vite/issues/21440)) ([1835995](https://github.com/vitejs/vite/commit/18359959cb2960a2fb2b9a340e5ae27d122a1501))
- **dev:** avoid event emitter leak caused by `server.listen` callback ([#​21451](https://github.com/vitejs/vite/issues/21451)) ([602d786](https://github.com/vitejs/vite/commit/602d7865db2b12835c8225f3e87076bef4e247b9))
- lazy hook filter should work ([#​21443](https://github.com/vitejs/vite/issues/21443)) ([bc0c207](https://github.com/vitejs/vite/commit/bc0c207f537789d10d55caa4ee3697aa923b8426))
- **optimizer:** skip `rolldownCjsExternalPlugin` for `platform: neutral` ([#​21452](https://github.com/vitejs/vite/issues/21452)) ([d2fc4be](https://github.com/vitejs/vite/commit/d2fc4be0447e384e18e557b70f7c345d5bcea941))
- **deps:** update all non-major dependencies ([#​21389](https://github.com/vitejs/vite/issues/21389)) ([30f48df](https://github.com/vitejs/vite/commit/30f48df33ec9e9bd0b8164461eede5574398370b))
- **deps:** update esbuild peerDependency version ([#​21398](https://github.com/vitejs/vite/issues/21398)) ([4266c97](https://github.com/vitejs/vite/commit/4266c978083b3afa8d09ac3d3a110ee79f8efde2))
- **hmr:** trigger prune event when last import is removed ([#​20781](https://github.com/vitejs/vite/issues/20781)) ([#​21093](https://github.com/vitejs/vite/issues/21093)) ([7576735](https://github.com/vitejs/vite/commit/757673528c64945b77aee4a8e01669ccd0644973))
- **module-runner:** use `process.getBuiltinModule` instead of `import('node:module')` ([#​21402](https://github.com/vitejs/vite/issues/21402)) ([6633bcb](https://github.com/vitejs/vite/commit/6633bcb94149a2923cb6419aa481c5384bcf9310))
- support .env file mounts (FIFOs) ([#​21365](https://github.com/vitejs/vite/issues/21365)) ([6e6f82a](https://github.com/vitejs/vite/commit/6e6f82a067acc6e158be3b82edb3d7d2888f9af2))
- **css:** stylus Evaluator support ([#​21376](https://github.com/vitejs/vite/issues/21376)) ([cf9ace1](https://github.com/vitejs/vite/commit/cf9ace1b40b2767b9b9cbbabb084fe2e32afc535))
- **deps:** update all non-major dependencies ([#​21321](https://github.com/vitejs/vite/issues/21321)) ([9bc7c2e](https://github.com/vitejs/vite/commit/9bc7c2ed4f387fb982b84d1988a26af8990096f7))
- **import-analysis:** avoid cjs interop for built browser external module ([#​21333](https://github.com/vitejs/vite/issues/21333)) ([dc5a2fb](https://github.com/vitejs/vite/commit/dc5a2fb86f10c69b0ba6bc1831d9a29c79754ba2))
- **worker:** handle `new Worker(..., new URL(import.meta.url))` with trailing comma ([#​21325](https://github.com/vitejs/vite/issues/21325)) ([4a47241](https://github.com/vitejs/vite/commit/4a472418c02a0821900678778752c2d361bae3bd))
- detect `import.meta.resolve` when formatted across multiple lines ([#​21312](https://github.com/vitejs/vite/issues/21312)) ([130e718](https://github.com/vitejs/vite/commit/130e7181a55c524383c63bbfb1749d0ff7185cad))
- allow no-cors requests for non-script tag requests ([#​21299](https://github.com/vitejs/vite/issues/21299)) ([ef3d596](https://github.com/vitejs/vite/commit/ef3d59648fd9dd3f9b3118d09d216dc0afcb8c33))
- **deps:** update all non-major dependencies ([#​21285](https://github.com/vitejs/vite/issues/21285)) ([4635b2e](https://github.com/vitejs/vite/commit/4635b2e90f833d1048d76381e20208c0e0841e97))
- unreachable error when building with `experimental.bundledDev` is enabled ([#​21296](https://github.com/vitejs/vite/issues/21296)) ([e81c183](https://github.com/vitejs/vite/commit/e81c183f8c8ccaf7774ef0d0ee125bf63dbf30b4))
- **deps:** update all non-major dependencies ([#​21231](https://github.com/vitejs/vite/issues/21231)) ([859789c](https://github.com/vitejs/vite/commit/859789c856412dfa67969232ddda1df754febf40))
- don't strip base from imports ([#​21221](https://github.com/vitejs/vite/issues/21221)) ([7da742b](https://github.com/vitejs/vite/commit/7da742b478d2309c7d8de4cb55614a6476f350b4))
- allow exiting process before optimizer cleanup is done ([#​21170](https://github.com/vitejs/vite/issues/21170)) ([55ceffc](https://github.com/vitejs/vite/commit/55ceffc8976b8bb8c819f5b47419f8499ba3f843))
- plugin shortcut support ([#​21211](https://github.com/vitejs/vite/issues/21211)) ([6a3aca0](https://github.com/vitejs/vite/commit/6a3aca084356316811ff62cbedb5a410a249e789))
##### Performance Improvements
- **ssr:** skip circular import check for already-evaluated modules ([#​21632](https://github.com/vitejs/vite/issues/21632)) ([235140b](https://github.com/vitejs/vite/commit/235140b2d519e866fc28f88fe8155a5091630daf))
- use tsconfig cache for oxc transform in dev ([#​21643](https://github.com/vitejs/vite/issues/21643)) ([57ff177](https://github.com/vitejs/vite/commit/57ff177575bef6bee81a250e853d2c99affa0015))
##### Documentation
- bulk of typo fixes ([#​21507](https://github.com/vitejs/vite/issues/21507)) ([80755da](https://github.com/vitejs/vite/commit/80755dacab296cd2083fef29e09280ceb810a943))
- update `build.dynamicImportVarsOptions` ([#​21477](https://github.com/vitejs/vite/issues/21477)) ([54ce2ed](https://github.com/vitejs/vite/commit/54ce2ed15a95619bd18ac6609b7d7b5f42b4965d))
- clarify the pronunciation of `vite` in IPA symbols ([#​21238](https://github.com/vitejs/vite/issues/21238)) ([9b1d4d6](https://github.com/vitejs/vite/commit/9b1d4d6f348c8899bd7651bd802f583e99b901ee))
- ensure https links ([#​21266](https://github.com/vitejs/vite/issues/21266)) ([2eb259a](https://github.com/vitejs/vite/commit/2eb259a84859c7656718258afed08eb80670f530))
##### Miscellaneous Chores
- **deps-dev:** bump rollup from 4.57.1 to 4.59.0 ([#​21717](https://github.com/vitejs/vite/issues/21717)) ([25227bb](https://github.com/vitejs/vite/commit/25227bbdc7de0ed07cf7bdc9a1a733e3a9a132bc))
- **deps:** update dependency cac to v7 ([#​21788](https://github.com/vitejs/vite/issues/21788)) ([44e33ae](https://github.com/vitejs/vite/commit/44e33ae6a7b64130831f08b2a20d04cbd106898d))
- **deps:** update dependency rolldown-plugin-dts to ^0.22.2 ([#​21731](https://github.com/vitejs/vite/issues/21731)) ([d8ea652](https://github.com/vitejs/vite/commit/d8ea652a8b295d9e012ac7ea607d813c69f77791))
- **deps:** remove `fdir` and `@rollup/plugin-commonjs` ([#​21639](https://github.com/vitejs/vite/issues/21639)) ([5abffd5](https://github.com/vitejs/vite/commit/5abffd5d04bf586a60970588a14d7e3b79445093))
- **deps:** update dependency [@​rollup/plugin-alias](https://github.com/rollup/plugin-alias) to v6 ([#​21097](https://github.com/vitejs/vite/issues/21097)) ([44b5bdf](https://github.com/vitejs/vite/commit/44b5bdfcf2b2c1b73563ed0526c48584b756360f))
- fix broken link for future deprecations ([#​21603](https://github.com/vitejs/vite/issues/21603)) ([25f4501](https://github.com/vitejs/vite/commit/25f45013b94e50acc5c3e476691aa2210b33cae4))
- update `customResolver` deprecation message to mention `enforce: 'pre'` ([#​21576](https://github.com/vitejs/vite/issues/21576)) ([2ce34d5](https://github.com/vitejs/vite/commit/2ce34d5580ed118db6361696e6283c1fea74e685))
- update rolldown-plugin-dts to 0.22.1 ([#​21559](https://github.com/vitejs/vite/issues/21559)) ([77aab4b](https://github.com/vitejs/vite/commit/77aab4b7f1e3a2131477659c909a3fbe02faa0a0))
- **deps:** update dependency rolldown-plugin-dts to ^0.21.8 ([#​21539](https://github.com/vitejs/vite/issues/21539)) ([33881cb](https://github.com/vitejs/vite/commit/33881cb34f4587919713975d13ce255ef744472d))
- add missing versions to changelog ([#​21515](https://github.com/vitejs/vite/issues/21515)) ([4bfb239](https://github.com/vitejs/vite/commit/4bfb239686a17343bc46c0d7c968e28b0d64041f))
- **deps:** update rolldown-related dependencies ([#​21487](https://github.com/vitejs/vite/issues/21487)) ([5863e51](https://github.com/vitejs/vite/commit/5863e513fab6b481cfb42da86202f9db728c077d))
- **deps:** update rolldown-related dependencies ([#​21390](https://github.com/vitejs/vite/issues/21390)) ([be9dd4e](https://github.com/vitejs/vite/commit/be9dd4e08d899f9ed27f2bdcb81bf27d018377a6))
- fix typo in plugin.ts comment ([#​21435](https://github.com/vitejs/vite/issues/21435)) ([d31fc66](https://github.com/vitejs/vite/commit/d31fc6685b4dde33062bf4dfe46e0502de4e1449))
- replace caniuse link for ES2024 ([#​21355](https://github.com/vitejs/vite/issues/21355)) ([2ba4e99](https://github.com/vitejs/vite/commit/2ba4e990192845e01c733aa186c9599cdb5bb8fe))
- cleanup changelog ([#​21202](https://github.com/vitejs/vite/issues/21202)) ([8c8c56e](https://github.com/vitejs/vite/commit/8c8c56e1eb465e6dcd0c1b40f187228edc0e2be4))
- **deps:** update rolldown-related dependencies ([#​21230](https://github.com/vitejs/vite/issues/21230)) ([9349446](https://github.com/vitejs/vite/commit/9349446e9344bd81ccfb37af482f479cd1b59bbc))
- fix spelling error ([#​21223](https://github.com/vitejs/vite/issues/21223)) ([cc10e20](https://github.com/vitejs/vite/commit/cc10e207ae87ac122fc1efbb5ab01b516eb9cce8))
##### Code Refactoring
- don't add `optimization.inlineConst: { mode: 'smart' }` as it's enabled by default ([#​21794](https://github.com/vitejs/vite/issues/21794)) ([22b3d11](https://github.com/vitejs/vite/commit/22b3d111c38deb76d3c07010bf9903e3ee1befc1))
- enable some native plugins even with enable native plugin false ([#​21744](https://github.com/vitejs/vite/issues/21744)) ([fc46c79](https://github.com/vitejs/vite/commit/fc46c79797e9ec22a5a4fb1999f6268f72d586f8))
- avoid deprecated `legalComments` option ([#​21721](https://github.com/vitejs/vite/issues/21721)) ([e06496e](https://github.com/vitejs/vite/commit/e06496ef259015b5a89f33a9965be25f8bea0624))
- use `ESTree` types from `rolldown/utils` ([#​21719](https://github.com/vitejs/vite/issues/21719)) ([9239750](https://github.com/vitejs/vite/commit/9239750e619afba03243d6d583eaca55b510ddfe))
- deprecate `customResolver` in `resolve.alias` ([#​21476](https://github.com/vitejs/vite/issues/21476)) ([81275c9](https://github.com/vitejs/vite/commit/81275c907211ac766013e6232c2cdf559534bed1))
- remove unnecessary `@rolldown/pluginutils` ([#​21560](https://github.com/vitejs/vite/issues/21560)) ([c367b62](https://github.com/vitejs/vite/commit/c367b62693f19040e64d14915877f0b05b8ac7ae))
- enable some native plugins even with enable native plugin false ([#​21608](https://github.com/vitejs/vite/issues/21608)) ([5a4f692](https://github.com/vitejs/vite/commit/5a4f6924260ef0f2683177a99935160badea3f3b))
- use `rolldown/utils` ([#​21577](https://github.com/vitejs/vite/issues/21577)) ([e56103f](https://github.com/vitejs/vite/commit/e56103f180216306de738769303f31ad4c078b26))
- use internal devtools config ([#​21609](https://github.com/vitejs/vite/issues/21609)) ([9aea20f](https://github.com/vitejs/vite/commit/9aea20f4a190e0e1c7edc656361d636cd6ce642f))
- use parseEnv ([#​21586](https://github.com/vitejs/vite/issues/21586)) ([f859d2c](https://github.com/vitejs/vite/commit/f859d2cdfcc18f139775c208be068461a91602e5))
- **wasm:** remove native wasm helper plugin usage ([#​21566](https://github.com/vitejs/vite/issues/21566)) ([71a86be](https://github.com/vitejs/vite/commit/71a86be6d9b9ea0329e92f20671f4db1f020874d))
- enable some native plugins even with enable native plugin false ([#​21511](https://github.com/vitejs/vite/issues/21511)) ([b40292c](https://github.com/vitejs/vite/commit/b40292ce6a7dbbbbac9c6dae5f126b7f44c3e1b7))
- remove `experimental.enableNativePlugin: 'resolver'` ([#​21510](https://github.com/vitejs/vite/issues/21510)) ([f9d9213](https://github.com/vitejs/vite/commit/f9d92130fa79c638f77a3a8e6e55506f185d5a49))
- use `import.meta.dirname` everywhere ([#​21509](https://github.com/vitejs/vite/issues/21509)) ([7becf5f](https://github.com/vitejs/vite/commit/7becf5f8fe9041cff60f495ef975faaba68f9eb2))
- **optimizer:** simplify `rolldownCjsExternalPlugin` ([#​21450](https://github.com/vitejs/vite/issues/21450)) ([ebda8fd](https://github.com/vitejs/vite/commit/ebda8fd3c14f60e63d13d22102cb3d79a12f47a9))
- remove `import.meta.hot.accept` resolution fallback ([#​21382](https://github.com/vitejs/vite/issues/21382)) ([71d0797](https://github.com/vitejs/vite/commit/71d0797a719440f2a09b3364bfcf18576c2b67fb))
- **optimizer:** remove dead code ([#​21334](https://github.com/vitejs/vite/issues/21334)) ([e9a2cdb](https://github.com/vitejs/vite/commit/e9a2cdbb7d96a3f8e15d25774708d4f4ab626bb9))
##### Tests
- **ssr:** incorrect `handleInvoke` was called in server-worker-runner.invoke test ([#​21751](https://github.com/vitejs/vite/issues/21751)) ([b95ca22](https://github.com/vitejs/vite/commit/b95ca22460fe39fc862444f8c642fd6a0794c87c))
- add more type tests for `defineConfig` ([#​21698](https://github.com/vitejs/vite/issues/21698)) ([4fedbbd](https://github.com/vitejs/vite/commit/4fedbbdd9178a3f92e491233f44d49b3ac095c69))
- test case for catching invalid package resolution error ([#​21601](https://github.com/vitejs/vite/issues/21601)) ([c9b9359](https://github.com/vitejs/vite/commit/c9b9359fe88fc4b8a69a0d5c5a7eed8961fb6e57))
- **bundled-dev:** add worker test cases ([#​21557](https://github.com/vitejs/vite/issues/21557)) ([569bc98](https://github.com/vitejs/vite/commit/569bc98d6bc42fbd1835c1c24a493776030b6cb4))
##### Beta Changelogs
##### [8.0.0-beta.18](https://github.com/vitejs/vite/compare/v8.0.0-beta.17...v8.0.0-beta.18) (2026-03-09)
See [8.0.0-beta.18 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.18/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.17](https://github.com/vitejs/vite/compare/v8.0.0-beta.16...v8.0.0-beta.17) (2026-03-09)
See [8.0.0-beta.17 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.17/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.16](https://github.com/vitejs/vite/compare/v8.0.0-beta.15...v8.0.0-beta.16) (2026-02-27)
See [8.0.0-beta.16 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.16/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.15](https://github.com/vitejs/vite/compare/v8.0.0-beta.14...v8.0.0-beta.15) (2026-02-19)
See [8.0.0-beta.15 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.15/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.14](https://github.com/vitejs/vite/compare/v8.0.0-beta.13...v8.0.0-beta.14) (2026-02-12)
See [8.0.0-beta.14 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.14/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.13](https://github.com/vitejs/vite/compare/v8.0.0-beta.12...v8.0.0-beta.13) (2026-02-05)
See [8.0.0-beta.13 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.13/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.12](https://github.com/vitejs/vite/compare/v8.0.0-beta.11...v8.0.0-beta.12) (2026-02-03)
See [8.0.0-beta.12 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.12/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.11](https://github.com/vitejs/vite/compare/v8.0.0-beta.10...v8.0.0-beta.11) (2026-01-29)
See [8.0.0-beta.11 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.11/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.10](https://github.com/vitejs/vite/compare/v8.0.0-beta.9...v8.0.0-beta.10) (2026-01-24)
See [8.0.0-beta.10 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.10/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.9](https://github.com/vitejs/vite/compare/v8.0.0-beta.8...v8.0.0-beta.9) (2026-01-22)
See [8.0.0-beta.9 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.9/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.8](https://github.com/vitejs/vite/compare/v8.0.0-beta.7...v8.0.0-beta.8) (2026-01-15)
See [8.0.0-beta.8 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.8/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.7](https://github.com/vitejs/vite/compare/v8.0.0-beta.6...v8.0.0-beta.7) (2026-01-08)
See [8.0.0-beta.7 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.7/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.6](https://github.com/vitejs/vite/compare/v8.0.0-beta.5...v8.0.0-beta.6) (2026-01-07)
See [8.0.0-beta.6 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.6/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.5](https://github.com/vitejs/vite/compare/v8.0.0-beta.4...v8.0.0-beta.5) (2025-12-25)
See [8.0.0-beta.5 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.5/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.4](https://github.com/vitejs/vite/compare/v8.0.0-beta.3...v8.0.0-beta.4) (2025-12-22)
See [8.0.0-beta.4 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.4/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.3](https://github.com/vitejs/vite/compare/v8.0.0-beta.2...v8.0.0-beta.3) (2025-12-18)
See [8.0.0-beta.3 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.3/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.2](https://github.com/vitejs/vite/compare/v8.0.0-beta.1...v8.0.0-beta.2) (2025-12-12)
See [8.0.0-beta.2 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.2/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.1](https://github.com/vitejs/vite/compare/v8.0.0-beta.0...v8.0.0-beta.1) (2025-12-08)
See [8.0.0-beta.1 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.1/packages/vite/CHANGELOG.md)
##### [8.0.0-beta.0](https://github.com/vitejs/vite/compare/v7.2.4...v8.0.0-beta.0) (2025-12-03)
See [8.0.0-beta.0 changelog](https://github.com/vitejs/vite/blob/v8.0.0-beta.0/packages/vite/CHANGELOG.md)
##### Rolldown-Vite changelogs
See [rolldown-vite changelog](https://github.com/vitejs/rolldown-vite/blob/v7.2.10/packages/vite/CHANGELOG.md)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - Between 12:00 AM and 03:59 AM, only on Monday ( * 0-3 * * 1 ) (UTC), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEwMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
Reviewed-on: https://git.erwanleboucher.dev/eleboucher/memini/pulls/34
This PR intends to add WASM support for Vitest and SSR. It should fix #8882 as well as vitest-dev/vitest#6723.
Implementation
The main changes are in the wasm plugin, that provide different helper code based on whether the consumer is server or client. As I'm new to this project, it's not clear to me whether this is the right approach.
I also looked into
vite-plugin-wasmfor how it handles SSR and vitest. What it does is:This approach doesn't feel great to me.
Testing
There are two tests I added:
ssr-wasmwhich serves SSR with WASM loaded.wasme2e test that checks that WASM can be imported and run within tests.It's not clear to me whether those tests are in the right location. Please let me know if there are better places for them.
Regarding Vitest
Checking
consumeractually doesn't seem to be a reliable way to work in Vitest. Vitest'senvironmentcan specifyviteEnvironment. Within its builtin environments,jsdomandhappy-domspecifiesclientas their vite environment which, on the Vite side, usesconsumer: 'client', even though the tests are still running in Node.js.I'm going to leave it there given that Vitest's default environment is
node, so this mechanism should just work most of the time, and also because I failed to find a way to add test for this behavior.I tried adding
// @vitest-environment jsdomto a spec file, but esbuild complains aboutwhich is probably because jsdom doesn't have the proper implementation for it currently. So I'm not going to dig deeper on this rabbit hole for now.
One trick I found is that some plugins like
vite-plugin-solidimplicitly changes the test environment, which could potentially cause confusion.If someone wants to address this part in the future, one possible approach is from
vite-plugin-wasmthat goes through plugins to findvitest, then combine it with the consumer check to decide which way the file is passed and obtained. It's hacky but I can confirm it works locally.