Skip to content

fix(css): use unique key for cssEntriesMap to prevent same-basename collision#22039

Merged
sapphi-red merged 5 commits into
vitejs:mainfrom
teee32:fix/css-entries-same-basename
Apr 17, 2026
Merged

fix(css): use unique key for cssEntriesMap to prevent same-basename collision#22039
sapphi-red merged 5 commits into
vitejs:mainfrom
teee32:fix/css-entries-same-basename

Conversation

@teee32
Copy link
Copy Markdown
Contributor

@teee32 teee32 commented Mar 26, 2026

Problem

When two or more CSS-only entry points in different directories share the same basename (e.g. store/skins/style.scss and store3/skins/style.scss), Vite's CSS post-processing incorrectly cross-links them in the build manifest. This causes both stylesheets to be loaded at runtime when only one was requested, leading to unintended style overrides.

Reported in #22013.

Root Cause

cssEntriesMap in packages/vite/src/node/plugins/css.ts uses chunk.name as the Map key. When entries share a basename, they share a chunk.name, so the second set() overwrites the first. Later in generateBundle, the lookup returns the wrong referenceId, causing one entry's CSS file to be transferred as a dependency of the other.

cssEntriesMap.set(chunk.name, referenceId)   // collision when basenames match
//                ^^^^^^^^^^

Change

Replace chunk.name with originalFileName (the normalized root-relative path produced by getChunkOriginalFileName, which is already computed in the same scope) as the Map key. This is always unique for distinct entry chunks. Falls back to chunk.name when facadeModuleId is unavailable.

The same key strategy is applied on both the write path (renderChunk) and the read path (generateBundle).

Why This Fix

  • originalFileName is derived from chunk.facadeModuleId via getChunkOriginalFileName, the same function used by the manifest plugin to identify chunks — so the key is consistent with existing naming conventions.
  • The change is minimal (2 locations in css.ts) and does not alter the module type or any public API.
  • cssEntriesMap is also consumed by manifest.ts, where the key is passed to Rolldown's nativeManifestPlugin as the CSS entry name. Changing from basename to relative path makes CSS entry naming consistent with JS chunk naming in the manifest.

Risk

  • Low. The fallback ?? chunk.name preserves existing behavior when facadeModuleId is absent.
  • No change to public API or plugin hook signatures.
  • The manifest name field for CSS entries changes from basename to relative path, which is consistent with how JS chunks are already named.

Validation

  • Added a regression test: two CSS entry files (a/index.css, b/index.css) sharing the basename index.css in different directories, each with a distinct asset. The test verifies the manifest does not cross-link their assets.
  • All 54 existing build tests pass.
  • Lint and prettier pass via pre-commit hooks.

Closes #22013

Co-Authored-By: Codex noreply@openai.com
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

…ollision

When multiple CSS-only entry points in different directories share the
same basename, `cssEntriesMap` used `chunk.name` as the Map key, causing
the second entry to overwrite the first. This led to incorrect CSS
cross-linking in the build manifest and spurious style loading at runtime.

Use `originalFileName` (the normalized relative path from
`getChunkOriginalFileName`) instead of `chunk.name` as the Map key,
which is always unique per entry. Falls back to `chunk.name` when
`facadeModuleId` is unavailable.

Fixes vitejs#22013

Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@teee32 teee32 force-pushed the fix/css-entries-same-basename branch from 9b38d08 to 166adde Compare March 26, 2026 12:01
@sapphi-red sapphi-red marked this pull request as draft April 10, 2026 08:14
@sapphi-red sapphi-red added p2-edge-case Bug, but has workaround or limited in scope (priority) feat: build labels Apr 10, 2026
@sapphi-red
Copy link
Copy Markdown
Member

I've updated the test to ensure isEntry is set and the test failed. To fix that, I made a change on the native plugin side: rolldown/rolldown#9059
I also changed the code to use chunk.filename instead of originalFileName as that will be simpler.

@sapphi-red
Copy link
Copy Markdown
Member

(I'll merge this once the next rolldown release is out)

shulaoda added a commit to rolldown/rolldown that referenced this pull request Apr 16, 2026
…CSS entries (#9059)

see vitejs/vite#22039 for the reason

Co-authored-by: dalaoshu <165626830+shulaoda@users.noreply.github.com>
@sapphi-red sapphi-red marked this pull request as ready for review April 17, 2026 05:35
@sapphi-red sapphi-red merged commit 374bb5d into vitejs:main Apr 17, 2026
15 checks passed
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Apr 30, 2026
| datasource | package | from  | to     |
| ---------- | ------- | ----- | ------ |
| npm        | vite    | 7.3.1 | 8.0.10 |


## [v8.0.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)

##### Features

- update rolldown to 1.0.0-rc.17 ([#22299](vitejs/vite#22299)) ([a4d06d9](vitejs/vite@a4d06d9))

##### Bug Fixes

- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#22147](vitejs/vite#22147)) ([a4d828f](vitejs/vite@a4d828f))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#22292](vitejs/vite#22292)) ([83f0a78](vitejs/vite@83f0a78))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#22273](vitejs/vite#22273)) ([5c7cec6](vitejs/vite@5c7cec6))
- remove format sniffing module resolution from JS resolver ([#22297](vitejs/vite#22297)) ([b8a21cc](vitejs/vite@b8a21cc))

##### Code Refactoring

- enable some typecheck rules ([#22278](vitejs/vite#22278)) ([9437518](vitejs/vite@9437518))
- typecheck client directory ([#22284](vitejs/vite#22284)) ([40a0847](vitejs/vite@40a0847))


## [v8.0.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)

##### Features

- update rolldown to 1.0.0-rc.16 ([#22248](vitejs/vite#22248)) ([2947edd](vitejs/vite@2947edd))

##### Bug Fixes

- allow binding when strictPort is set but wildcard port is in use ([#22150](vitejs/vite#22150)) ([dfc8aa5](vitejs/vite@dfc8aa5))
- **build:** emptyOutDir should happen for watch rebuilds ([#22207](vitejs/vite#22207)) ([ee52267](vitejs/vite@ee52267))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#22269](vitejs/vite#22269)) ([868f141](vitejs/vite@868f141))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#22039](vitejs/vite#22039)) ([374bb5d](vitejs/vite@374bb5d))
- **deps:** update all non-major dependencies ([#22219](vitejs/vite#22219)) ([4cd0d67](vitejs/vite@4cd0d67))
- **deps:** update all non-major dependencies ([#22268](vitejs/vite#22268)) ([c28e9c1](vitejs/vite@c28e9c1))
- detect Deno workspace root (fix [#22237](vitejs/vite#22237)) ([#22238](vitejs/vite#22238)) ([1b793c0](vitejs/vite@1b793c0))
- **dev:** handle errors in `watchChange` hook ([#22188](vitejs/vite#22188)) ([fc08bda](vitejs/vite@fc08bda))
- **optimizer:** handle more chars that will be sanitized ([#22208](vitejs/vite#22208)) ([3f24533](vitejs/vite@3f24533))
- skip fallback sourcemap generation for `?raw` imports ([#22148](vitejs/vite#22148)) ([3ec9cda](vitejs/vite@3ec9cda))

##### Documentation

- align the descriptions in READMEs ([#22231](vitejs/vite#22231)) ([44c42b9](vitejs/vite@44c42b9))
- fix reuses wording in dev environment comment ([#22173](vitejs/vite#22173)) ([9163412](vitejs/vite@9163412))
- fix wording in sass error comment ([#22214](vitejs/vite#22214)) ([bc5c6a7](vitejs/vite@bc5c6a7))
- update build CLI defaults ([#22261](vitejs/vite#22261)) ([605bb97](vitejs/vite@605bb97))

##### Miscellaneous Chores

- **deps:** update dependency dotenv-expand to v13 ([#22271](vitejs/vite#22271)) ([0a3887d](vitejs/vite@0a3887d))


## [v8.0.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)

##### Features

- update rolldown to 1.0.0-rc.15 ([#22201](vitejs/vite#22201)) ([6baf587](vitejs/vite@6baf587))

##### Bug Fixes

- avoid `dns.getDefaultResultOrder` temporary ([#22202](vitejs/vite#22202)) ([15f1c15](vitejs/vite@15f1c15))
- **ssr:** class property keys hoisting matching imports ([#22199](vitejs/vite#22199)) ([e137601](vitejs/vite@e137601))


## [v8.0.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)

##### Bug Fixes

- use sync dns.getDefaultResultOrder instead of dns.promises ([#22185](vitejs/vite#22185)) ([5c05b04](vitejs/vite@5c05b04))


## [v8.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)

##### Features

- update rolldown to 1.0.0-rc.13 ([#22097](vitejs/vite#22097)) ([51d3e48](vitejs/vite@51d3e48))

##### Bug Fixes

- **css:** avoid mutating sass error multiple times ([#22115](vitejs/vite#22115)) ([d5081c2](vitejs/vite@d5081c2))
- **optimize-deps:** hoist CJS interop assignment ([#22156](vitejs/vite#22156)) ([17a8f9e](vitejs/vite@17a8f9e))

##### Performance Improvements

- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#22151](vitejs/vite#22151)) ([56ec256](vitejs/vite@56ec256))

##### Miscellaneous Chores

- **create-vite:** remove unnecessary DOM.Iterable ([#22168](vitejs/vite#22168)) ([bdc53ab](vitejs/vite@bdc53ab))
- replace remaining prettier script ([#22179](vitejs/vite#22179)) ([af71fb2](vitejs/vite@af71fb2))


## [v8.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)

##### Bug Fixes

- apply server.fs check to env transport ([#22159](vitejs/vite#22159)) ([f02d9fd](vitejs/vite@f02d9fd))
- avoid path traversal with optimize deps sourcemap handler ([#22161](vitejs/vite#22161)) ([79f002f](vitejs/vite@79f002f))
- check `server.fs` after stripping query as well ([#22160](vitejs/vite#22160)) ([a9a3df2](vitejs/vite@a9a3df2))
- disallow referencing files outside the package from sourcemap ([#22158](vitejs/vite#22158)) ([f05f501](vitejs/vite@f05f501))


## [v8.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)

##### Features

- allow esbuild 0.28 as peer deps ([#22155](vitejs/vite#22155)) ([b0da973](vitejs/vite@b0da973))
- **hmr:** truncate list of files on hmr update ([#21535](vitejs/vite#21535)) ([d00e806](vitejs/vite@d00e806))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#21797](vitejs/vite#21797)) ([f61a1ab](vitejs/vite@f61a1ab))

##### Bug Fixes

- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#22043](vitejs/vite#22043)) ([99897d2](vitejs/vite@99897d2))
- add types for `vite/modulepreload-polyfill` ([#22126](vitejs/vite#22126)) ([17330d2](vitejs/vite@17330d2))
- **deps:** update all non-major dependencies ([#22073](vitejs/vite#22073)) ([6daa10f](vitejs/vite@6daa10f))
- **deps:** update all non-major dependencies ([#22143](vitejs/vite#22143)) ([22b0166](vitejs/vite@22b0166))
- **resolve:** resolve tsconfig paths starting with `#` ([#22038](vitejs/vite#22038)) ([3460fc5](vitejs/vite@3460fc5))
- **ssr:** use browser platform for webworker SSR builds (fix [#21969](vitejs/vite#21969)) ([#21963](vitejs/vite#21963)) ([364c227](vitejs/vite@364c227))

##### Documentation

- add `environment.fetchModule` documentation ([#22035](vitejs/vite#22035)) ([54229e7](vitejs/vite@54229e7))

##### Miscellaneous Chores

- **deps:** update rolldown-related dependencies ([#21989](vitejs/vite#21989)) ([0ded627](vitejs/vite@0ded627))

##### Code Refactoring

- upgrade to typescript 6 ([#22110](vitejs/vite#22110)) ([cc41398](vitejs/vite@cc41398))


## [v8.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)

##### Features

- update rolldown to 1.0.0-rc.12 ([#22024](vitejs/vite#22024)) ([84164ef](vitejs/vite@84164ef))

##### Bug Fixes

- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#22017](vitejs/vite#22017)) ([5464190](vitejs/vite@5464190))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#21985](vitejs/vite#21985)) ([77c95bf](vitejs/vite@77c95bf))
- **module-runner:** skip re-import if the runner is closed ([#22020](vitejs/vite#22020)) ([ee2c2cd](vitejs/vite@ee2c2cd))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#22018](vitejs/vite#22018)) ([ddfe20d](vitejs/vite@ddfe20d))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#22019](vitejs/vite#22019)) ([cff5f0c](vitejs/vite@cff5f0c))

##### Miscellaneous Chores

- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#22027](vitejs/vite#22027)) ([7e56003](vitejs/vite@7e56003))

##### Tests

- **html:** add tests for `getCssFilesForChunk` ([#22016](vitejs/vite#22016)) ([43fbbf9](vitejs/vite@43fbbf9))


## [v8.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)

##### Features

- update rolldown to 1.0.0-rc.11 ([#21998](vitejs/vite#21998)) ([ff91c31](vitejs/vite@ff91c31))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21988](vitejs/vite#21988)) ([9b7d150](vitejs/vite@9b7d150))

##### Miscellaneous Chores

- **deps:** update dependency [@vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#21992](vitejs/vite#21992)) ([b2dd65b](vitejs/vite@b2dd65b))


## [v8.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-801-2026-03-19-small)

##### Features

- update rolldown to 1.0.0-rc.10 ([#21932](vitejs/vite#21932)) ([b3c067d](vitejs/vite@b3c067d))

##### Bug Fixes

- **bundled-dev:** properly disable `inlineConst` optimization ([#21865](vitejs/vite#21865)) ([6d97142](vitejs/vite@6d97142))
- **css:** lightningcss minify failed when `build.target: 'es6'` ([#21933](vitejs/vite#21933)) ([5fcce46](vitejs/vite@5fcce46))
- **deps:** update all non-major dependencies ([#21878](vitejs/vite#21878)) ([6dbbd7f](vitejs/vite@6dbbd7f))
- **dev:** always use ESM Oxc runtime ([#21829](vitejs/vite#21829)) ([d323ed7](vitejs/vite@d323ed7))
- **dev:** handle concurrent restarts in `_createServer` ([#21810](vitejs/vite#21810)) ([40bc729](vitejs/vite@40bc729))
- handle `+` symbol in package subpath exports during dep optimization ([#21886](vitejs/vite#21886)) ([86db93d](vitejs/vite@86db93d))
- improve `no-cors` request block error ([#21902](vitejs/vite#21902)) ([5ba688b](vitejs/vite@5ba688b))
- use precise regexes for transform filter to avoid backtracking ([#21800](vitejs/vite#21800)) ([dbe41bd](vitejs/vite@dbe41bd))
- **worker:** `require(json)` result should not be wrapped ([#21847](vitejs/vite#21847)) ([0672fd2](vitejs/vite@0672fd2))
- **worker:** make worker output consistent with client and SSR ([#21871](vitejs/vite#21871)) ([69454d7](vitejs/vite@69454d7))

##### Miscellaneous Chores

- add changelog rearrange script ([#21835](vitejs/vite#21835)) ([efef073](vitejs/vite@efef073))
- **deps:** bump required `@vitejs/devtools` version to 0.1+ ([#21925](vitejs/vite#21925)) ([12932f5](vitejs/vite@12932f5))
- **deps:** update rolldown-related dependencies ([#21787](vitejs/vite#21787)) ([1af1d3a](vitejs/vite@1af1d3a))
- rearrange 8.0 changelog ([8e05b61](vitejs/vite@8e05b61))
- rearrange 8.0 changelog ([#21834](vitejs/vite#21834)) ([86edeee](vitejs/vite@86edeee))


## [v8.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)

##### 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))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352))


## [v7.3.2](https://github.com/vitejs/vite/releases/tag/v7.3.2)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) for details.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request May 2, 2026
| datasource | package | from  | to     |
| ---------- | ------- | ----- | ------ |
| npm        | vite    | 7.3.1 | 8.0.10 |


## [v8.0.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)

##### Features

- update rolldown to 1.0.0-rc.17 ([#22299](vitejs/vite#22299)) ([a4d06d9](vitejs/vite@a4d06d9))

##### Bug Fixes

- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#22147](vitejs/vite#22147)) ([a4d828f](vitejs/vite@a4d828f))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#22292](vitejs/vite#22292)) ([83f0a78](vitejs/vite@83f0a78))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#22273](vitejs/vite#22273)) ([5c7cec6](vitejs/vite@5c7cec6))
- remove format sniffing module resolution from JS resolver ([#22297](vitejs/vite#22297)) ([b8a21cc](vitejs/vite@b8a21cc))

##### Code Refactoring

- enable some typecheck rules ([#22278](vitejs/vite#22278)) ([9437518](vitejs/vite@9437518))
- typecheck client directory ([#22284](vitejs/vite#22284)) ([40a0847](vitejs/vite@40a0847))


## [v8.0.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)

##### Features

- update rolldown to 1.0.0-rc.16 ([#22248](vitejs/vite#22248)) ([2947edd](vitejs/vite@2947edd))

##### Bug Fixes

- allow binding when strictPort is set but wildcard port is in use ([#22150](vitejs/vite#22150)) ([dfc8aa5](vitejs/vite@dfc8aa5))
- **build:** emptyOutDir should happen for watch rebuilds ([#22207](vitejs/vite#22207)) ([ee52267](vitejs/vite@ee52267))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#22269](vitejs/vite#22269)) ([868f141](vitejs/vite@868f141))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#22039](vitejs/vite#22039)) ([374bb5d](vitejs/vite@374bb5d))
- **deps:** update all non-major dependencies ([#22219](vitejs/vite#22219)) ([4cd0d67](vitejs/vite@4cd0d67))
- **deps:** update all non-major dependencies ([#22268](vitejs/vite#22268)) ([c28e9c1](vitejs/vite@c28e9c1))
- detect Deno workspace root (fix [#22237](vitejs/vite#22237)) ([#22238](vitejs/vite#22238)) ([1b793c0](vitejs/vite@1b793c0))
- **dev:** handle errors in `watchChange` hook ([#22188](vitejs/vite#22188)) ([fc08bda](vitejs/vite@fc08bda))
- **optimizer:** handle more chars that will be sanitized ([#22208](vitejs/vite#22208)) ([3f24533](vitejs/vite@3f24533))
- skip fallback sourcemap generation for `?raw` imports ([#22148](vitejs/vite#22148)) ([3ec9cda](vitejs/vite@3ec9cda))

##### Documentation

- align the descriptions in READMEs ([#22231](vitejs/vite#22231)) ([44c42b9](vitejs/vite@44c42b9))
- fix reuses wording in dev environment comment ([#22173](vitejs/vite#22173)) ([9163412](vitejs/vite@9163412))
- fix wording in sass error comment ([#22214](vitejs/vite#22214)) ([bc5c6a7](vitejs/vite@bc5c6a7))
- update build CLI defaults ([#22261](vitejs/vite#22261)) ([605bb97](vitejs/vite@605bb97))

##### Miscellaneous Chores

- **deps:** update dependency dotenv-expand to v13 ([#22271](vitejs/vite#22271)) ([0a3887d](vitejs/vite@0a3887d))


## [v8.0.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)

##### Features

- update rolldown to 1.0.0-rc.15 ([#22201](vitejs/vite#22201)) ([6baf587](vitejs/vite@6baf587))

##### Bug Fixes

- avoid `dns.getDefaultResultOrder` temporary ([#22202](vitejs/vite#22202)) ([15f1c15](vitejs/vite@15f1c15))
- **ssr:** class property keys hoisting matching imports ([#22199](vitejs/vite#22199)) ([e137601](vitejs/vite@e137601))


## [v8.0.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)

##### Bug Fixes

- use sync dns.getDefaultResultOrder instead of dns.promises ([#22185](vitejs/vite#22185)) ([5c05b04](vitejs/vite@5c05b04))


## [v8.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)

##### Features

- update rolldown to 1.0.0-rc.13 ([#22097](vitejs/vite#22097)) ([51d3e48](vitejs/vite@51d3e48))

##### Bug Fixes

- **css:** avoid mutating sass error multiple times ([#22115](vitejs/vite#22115)) ([d5081c2](vitejs/vite@d5081c2))
- **optimize-deps:** hoist CJS interop assignment ([#22156](vitejs/vite#22156)) ([17a8f9e](vitejs/vite@17a8f9e))

##### Performance Improvements

- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#22151](vitejs/vite#22151)) ([56ec256](vitejs/vite@56ec256))

##### Miscellaneous Chores

- **create-vite:** remove unnecessary DOM.Iterable ([#22168](vitejs/vite#22168)) ([bdc53ab](vitejs/vite@bdc53ab))
- replace remaining prettier script ([#22179](vitejs/vite#22179)) ([af71fb2](vitejs/vite@af71fb2))


## [v8.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)

##### Bug Fixes

- apply server.fs check to env transport ([#22159](vitejs/vite#22159)) ([f02d9fd](vitejs/vite@f02d9fd))
- avoid path traversal with optimize deps sourcemap handler ([#22161](vitejs/vite#22161)) ([79f002f](vitejs/vite@79f002f))
- check `server.fs` after stripping query as well ([#22160](vitejs/vite#22160)) ([a9a3df2](vitejs/vite@a9a3df2))
- disallow referencing files outside the package from sourcemap ([#22158](vitejs/vite#22158)) ([f05f501](vitejs/vite@f05f501))


## [v8.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)

##### Features

- allow esbuild 0.28 as peer deps ([#22155](vitejs/vite#22155)) ([b0da973](vitejs/vite@b0da973))
- **hmr:** truncate list of files on hmr update ([#21535](vitejs/vite#21535)) ([d00e806](vitejs/vite@d00e806))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#21797](vitejs/vite#21797)) ([f61a1ab](vitejs/vite@f61a1ab))

##### Bug Fixes

- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#22043](vitejs/vite#22043)) ([99897d2](vitejs/vite@99897d2))
- add types for `vite/modulepreload-polyfill` ([#22126](vitejs/vite#22126)) ([17330d2](vitejs/vite@17330d2))
- **deps:** update all non-major dependencies ([#22073](vitejs/vite#22073)) ([6daa10f](vitejs/vite@6daa10f))
- **deps:** update all non-major dependencies ([#22143](vitejs/vite#22143)) ([22b0166](vitejs/vite@22b0166))
- **resolve:** resolve tsconfig paths starting with `#` ([#22038](vitejs/vite#22038)) ([3460fc5](vitejs/vite@3460fc5))
- **ssr:** use browser platform for webworker SSR builds (fix [#21969](vitejs/vite#21969)) ([#21963](vitejs/vite#21963)) ([364c227](vitejs/vite@364c227))

##### Documentation

- add `environment.fetchModule` documentation ([#22035](vitejs/vite#22035)) ([54229e7](vitejs/vite@54229e7))

##### Miscellaneous Chores

- **deps:** update rolldown-related dependencies ([#21989](vitejs/vite#21989)) ([0ded627](vitejs/vite@0ded627))

##### Code Refactoring

- upgrade to typescript 6 ([#22110](vitejs/vite#22110)) ([cc41398](vitejs/vite@cc41398))


## [v8.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)

##### Features

- update rolldown to 1.0.0-rc.12 ([#22024](vitejs/vite#22024)) ([84164ef](vitejs/vite@84164ef))

##### Bug Fixes

- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#22017](vitejs/vite#22017)) ([5464190](vitejs/vite@5464190))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#21985](vitejs/vite#21985)) ([77c95bf](vitejs/vite@77c95bf))
- **module-runner:** skip re-import if the runner is closed ([#22020](vitejs/vite#22020)) ([ee2c2cd](vitejs/vite@ee2c2cd))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#22018](vitejs/vite#22018)) ([ddfe20d](vitejs/vite@ddfe20d))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#22019](vitejs/vite#22019)) ([cff5f0c](vitejs/vite@cff5f0c))

##### Miscellaneous Chores

- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#22027](vitejs/vite#22027)) ([7e56003](vitejs/vite@7e56003))

##### Tests

- **html:** add tests for `getCssFilesForChunk` ([#22016](vitejs/vite#22016)) ([43fbbf9](vitejs/vite@43fbbf9))


## [v8.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)

##### Features

- update rolldown to 1.0.0-rc.11 ([#21998](vitejs/vite#21998)) ([ff91c31](vitejs/vite@ff91c31))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21988](vitejs/vite#21988)) ([9b7d150](vitejs/vite@9b7d150))

##### Miscellaneous Chores

- **deps:** update dependency [@vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#21992](vitejs/vite#21992)) ([b2dd65b](vitejs/vite@b2dd65b))


## [v8.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-801-2026-03-19-small)

##### Features

- update rolldown to 1.0.0-rc.10 ([#21932](vitejs/vite#21932)) ([b3c067d](vitejs/vite@b3c067d))

##### Bug Fixes

- **bundled-dev:** properly disable `inlineConst` optimization ([#21865](vitejs/vite#21865)) ([6d97142](vitejs/vite@6d97142))
- **css:** lightningcss minify failed when `build.target: 'es6'` ([#21933](vitejs/vite#21933)) ([5fcce46](vitejs/vite@5fcce46))
- **deps:** update all non-major dependencies ([#21878](vitejs/vite#21878)) ([6dbbd7f](vitejs/vite@6dbbd7f))
- **dev:** always use ESM Oxc runtime ([#21829](vitejs/vite#21829)) ([d323ed7](vitejs/vite@d323ed7))
- **dev:** handle concurrent restarts in `_createServer` ([#21810](vitejs/vite#21810)) ([40bc729](vitejs/vite@40bc729))
- handle `+` symbol in package subpath exports during dep optimization ([#21886](vitejs/vite#21886)) ([86db93d](vitejs/vite@86db93d))
- improve `no-cors` request block error ([#21902](vitejs/vite#21902)) ([5ba688b](vitejs/vite@5ba688b))
- use precise regexes for transform filter to avoid backtracking ([#21800](vitejs/vite#21800)) ([dbe41bd](vitejs/vite@dbe41bd))
- **worker:** `require(json)` result should not be wrapped ([#21847](vitejs/vite#21847)) ([0672fd2](vitejs/vite@0672fd2))
- **worker:** make worker output consistent with client and SSR ([#21871](vitejs/vite#21871)) ([69454d7](vitejs/vite@69454d7))

##### Miscellaneous Chores

- add changelog rearrange script ([#21835](vitejs/vite#21835)) ([efef073](vitejs/vite@efef073))
- **deps:** bump required `@vitejs/devtools` version to 0.1+ ([#21925](vitejs/vite#21925)) ([12932f5](vitejs/vite@12932f5))
- **deps:** update rolldown-related dependencies ([#21787](vitejs/vite#21787)) ([1af1d3a](vitejs/vite@1af1d3a))
- rearrange 8.0 changelog ([8e05b61](vitejs/vite@8e05b61))
- rearrange 8.0 changelog ([#21834](vitejs/vite#21834)) ([86edeee](vitejs/vite@86edeee))


## [v8.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)

##### 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))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352))


## [v7.3.2](https://github.com/vitejs/vite/releases/tag/v7.3.2)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) for details.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request May 3, 2026
| datasource | package | from  | to     |
| ---------- | ------- | ----- | ------ |
| npm        | vite    | 7.3.1 | 8.0.10 |


## [v8.0.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)

##### Features

- update rolldown to 1.0.0-rc.17 ([#22299](vitejs/vite#22299)) ([a4d06d9](vitejs/vite@a4d06d9))

##### Bug Fixes

- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#22147](vitejs/vite#22147)) ([a4d828f](vitejs/vite@a4d828f))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#22292](vitejs/vite#22292)) ([83f0a78](vitejs/vite@83f0a78))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#22273](vitejs/vite#22273)) ([5c7cec6](vitejs/vite@5c7cec6))
- remove format sniffing module resolution from JS resolver ([#22297](vitejs/vite#22297)) ([b8a21cc](vitejs/vite@b8a21cc))

##### Code Refactoring

- enable some typecheck rules ([#22278](vitejs/vite#22278)) ([9437518](vitejs/vite@9437518))
- typecheck client directory ([#22284](vitejs/vite#22284)) ([40a0847](vitejs/vite@40a0847))


## [v8.0.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)

##### Features

- update rolldown to 1.0.0-rc.16 ([#22248](vitejs/vite#22248)) ([2947edd](vitejs/vite@2947edd))

##### Bug Fixes

- allow binding when strictPort is set but wildcard port is in use ([#22150](vitejs/vite#22150)) ([dfc8aa5](vitejs/vite@dfc8aa5))
- **build:** emptyOutDir should happen for watch rebuilds ([#22207](vitejs/vite#22207)) ([ee52267](vitejs/vite@ee52267))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#22269](vitejs/vite#22269)) ([868f141](vitejs/vite@868f141))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#22039](vitejs/vite#22039)) ([374bb5d](vitejs/vite@374bb5d))
- **deps:** update all non-major dependencies ([#22219](vitejs/vite#22219)) ([4cd0d67](vitejs/vite@4cd0d67))
- **deps:** update all non-major dependencies ([#22268](vitejs/vite#22268)) ([c28e9c1](vitejs/vite@c28e9c1))
- detect Deno workspace root (fix [#22237](vitejs/vite#22237)) ([#22238](vitejs/vite#22238)) ([1b793c0](vitejs/vite@1b793c0))
- **dev:** handle errors in `watchChange` hook ([#22188](vitejs/vite#22188)) ([fc08bda](vitejs/vite@fc08bda))
- **optimizer:** handle more chars that will be sanitized ([#22208](vitejs/vite#22208)) ([3f24533](vitejs/vite@3f24533))
- skip fallback sourcemap generation for `?raw` imports ([#22148](vitejs/vite#22148)) ([3ec9cda](vitejs/vite@3ec9cda))

##### Documentation

- align the descriptions in READMEs ([#22231](vitejs/vite#22231)) ([44c42b9](vitejs/vite@44c42b9))
- fix reuses wording in dev environment comment ([#22173](vitejs/vite#22173)) ([9163412](vitejs/vite@9163412))
- fix wording in sass error comment ([#22214](vitejs/vite#22214)) ([bc5c6a7](vitejs/vite@bc5c6a7))
- update build CLI defaults ([#22261](vitejs/vite#22261)) ([605bb97](vitejs/vite@605bb97))

##### Miscellaneous Chores

- **deps:** update dependency dotenv-expand to v13 ([#22271](vitejs/vite#22271)) ([0a3887d](vitejs/vite@0a3887d))


## [v8.0.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)

##### Features

- update rolldown to 1.0.0-rc.15 ([#22201](vitejs/vite#22201)) ([6baf587](vitejs/vite@6baf587))

##### Bug Fixes

- avoid `dns.getDefaultResultOrder` temporary ([#22202](vitejs/vite#22202)) ([15f1c15](vitejs/vite@15f1c15))
- **ssr:** class property keys hoisting matching imports ([#22199](vitejs/vite#22199)) ([e137601](vitejs/vite@e137601))


## [v8.0.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)

##### Bug Fixes

- use sync dns.getDefaultResultOrder instead of dns.promises ([#22185](vitejs/vite#22185)) ([5c05b04](vitejs/vite@5c05b04))


## [v8.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)

##### Features

- update rolldown to 1.0.0-rc.13 ([#22097](vitejs/vite#22097)) ([51d3e48](vitejs/vite@51d3e48))

##### Bug Fixes

- **css:** avoid mutating sass error multiple times ([#22115](vitejs/vite#22115)) ([d5081c2](vitejs/vite@d5081c2))
- **optimize-deps:** hoist CJS interop assignment ([#22156](vitejs/vite#22156)) ([17a8f9e](vitejs/vite@17a8f9e))

##### Performance Improvements

- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#22151](vitejs/vite#22151)) ([56ec256](vitejs/vite@56ec256))

##### Miscellaneous Chores

- **create-vite:** remove unnecessary DOM.Iterable ([#22168](vitejs/vite#22168)) ([bdc53ab](vitejs/vite@bdc53ab))
- replace remaining prettier script ([#22179](vitejs/vite#22179)) ([af71fb2](vitejs/vite@af71fb2))


## [v8.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)

##### Bug Fixes

- apply server.fs check to env transport ([#22159](vitejs/vite#22159)) ([f02d9fd](vitejs/vite@f02d9fd))
- avoid path traversal with optimize deps sourcemap handler ([#22161](vitejs/vite#22161)) ([79f002f](vitejs/vite@79f002f))
- check `server.fs` after stripping query as well ([#22160](vitejs/vite#22160)) ([a9a3df2](vitejs/vite@a9a3df2))
- disallow referencing files outside the package from sourcemap ([#22158](vitejs/vite#22158)) ([f05f501](vitejs/vite@f05f501))


## [v8.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)

##### Features

- allow esbuild 0.28 as peer deps ([#22155](vitejs/vite#22155)) ([b0da973](vitejs/vite@b0da973))
- **hmr:** truncate list of files on hmr update ([#21535](vitejs/vite#21535)) ([d00e806](vitejs/vite@d00e806))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#21797](vitejs/vite#21797)) ([f61a1ab](vitejs/vite@f61a1ab))

##### Bug Fixes

- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#22043](vitejs/vite#22043)) ([99897d2](vitejs/vite@99897d2))
- add types for `vite/modulepreload-polyfill` ([#22126](vitejs/vite#22126)) ([17330d2](vitejs/vite@17330d2))
- **deps:** update all non-major dependencies ([#22073](vitejs/vite#22073)) ([6daa10f](vitejs/vite@6daa10f))
- **deps:** update all non-major dependencies ([#22143](vitejs/vite#22143)) ([22b0166](vitejs/vite@22b0166))
- **resolve:** resolve tsconfig paths starting with `#` ([#22038](vitejs/vite#22038)) ([3460fc5](vitejs/vite@3460fc5))
- **ssr:** use browser platform for webworker SSR builds (fix [#21969](vitejs/vite#21969)) ([#21963](vitejs/vite#21963)) ([364c227](vitejs/vite@364c227))

##### Documentation

- add `environment.fetchModule` documentation ([#22035](vitejs/vite#22035)) ([54229e7](vitejs/vite@54229e7))

##### Miscellaneous Chores

- **deps:** update rolldown-related dependencies ([#21989](vitejs/vite#21989)) ([0ded627](vitejs/vite@0ded627))

##### Code Refactoring

- upgrade to typescript 6 ([#22110](vitejs/vite#22110)) ([cc41398](vitejs/vite@cc41398))


## [v8.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)

##### Features

- update rolldown to 1.0.0-rc.12 ([#22024](vitejs/vite#22024)) ([84164ef](vitejs/vite@84164ef))

##### Bug Fixes

- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#22017](vitejs/vite#22017)) ([5464190](vitejs/vite@5464190))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#21985](vitejs/vite#21985)) ([77c95bf](vitejs/vite@77c95bf))
- **module-runner:** skip re-import if the runner is closed ([#22020](vitejs/vite#22020)) ([ee2c2cd](vitejs/vite@ee2c2cd))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#22018](vitejs/vite#22018)) ([ddfe20d](vitejs/vite@ddfe20d))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#22019](vitejs/vite#22019)) ([cff5f0c](vitejs/vite@cff5f0c))

##### Miscellaneous Chores

- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#22027](vitejs/vite#22027)) ([7e56003](vitejs/vite@7e56003))

##### Tests

- **html:** add tests for `getCssFilesForChunk` ([#22016](vitejs/vite#22016)) ([43fbbf9](vitejs/vite@43fbbf9))


## [v8.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)

##### Features

- update rolldown to 1.0.0-rc.11 ([#21998](vitejs/vite#21998)) ([ff91c31](vitejs/vite@ff91c31))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21988](vitejs/vite#21988)) ([9b7d150](vitejs/vite@9b7d150))

##### Miscellaneous Chores

- **deps:** update dependency [@vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#21992](vitejs/vite#21992)) ([b2dd65b](vitejs/vite@b2dd65b))


## [v8.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-801-2026-03-19-small)

##### Features

- update rolldown to 1.0.0-rc.10 ([#21932](vitejs/vite#21932)) ([b3c067d](vitejs/vite@b3c067d))

##### Bug Fixes

- **bundled-dev:** properly disable `inlineConst` optimization ([#21865](vitejs/vite#21865)) ([6d97142](vitejs/vite@6d97142))
- **css:** lightningcss minify failed when `build.target: 'es6'` ([#21933](vitejs/vite#21933)) ([5fcce46](vitejs/vite@5fcce46))
- **deps:** update all non-major dependencies ([#21878](vitejs/vite#21878)) ([6dbbd7f](vitejs/vite@6dbbd7f))
- **dev:** always use ESM Oxc runtime ([#21829](vitejs/vite#21829)) ([d323ed7](vitejs/vite@d323ed7))
- **dev:** handle concurrent restarts in `_createServer` ([#21810](vitejs/vite#21810)) ([40bc729](vitejs/vite@40bc729))
- handle `+` symbol in package subpath exports during dep optimization ([#21886](vitejs/vite#21886)) ([86db93d](vitejs/vite@86db93d))
- improve `no-cors` request block error ([#21902](vitejs/vite#21902)) ([5ba688b](vitejs/vite@5ba688b))
- use precise regexes for transform filter to avoid backtracking ([#21800](vitejs/vite#21800)) ([dbe41bd](vitejs/vite@dbe41bd))
- **worker:** `require(json)` result should not be wrapped ([#21847](vitejs/vite#21847)) ([0672fd2](vitejs/vite@0672fd2))
- **worker:** make worker output consistent with client and SSR ([#21871](vitejs/vite#21871)) ([69454d7](vitejs/vite@69454d7))

##### Miscellaneous Chores

- add changelog rearrange script ([#21835](vitejs/vite#21835)) ([efef073](vitejs/vite@efef073))
- **deps:** bump required `@vitejs/devtools` version to 0.1+ ([#21925](vitejs/vite#21925)) ([12932f5](vitejs/vite@12932f5))
- **deps:** update rolldown-related dependencies ([#21787](vitejs/vite#21787)) ([1af1d3a](vitejs/vite@1af1d3a))
- rearrange 8.0 changelog ([8e05b61](vitejs/vite@8e05b61))
- rearrange 8.0 changelog ([#21834](vitejs/vite#21834)) ([86edeee](vitejs/vite@86edeee))


## [v8.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)

##### 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))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352))


## [v7.3.2](https://github.com/vitejs/vite/releases/tag/v7.3.2)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) for details.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request May 6, 2026
| datasource | package | from  | to     |
| ---------- | ------- | ----- | ------ |
| npm        | vite    | 7.3.1 | 8.0.10 |


## [v8.0.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)

##### Features

- update rolldown to 1.0.0-rc.17 ([#22299](vitejs/vite#22299)) ([a4d06d9](vitejs/vite@a4d06d9))

##### Bug Fixes

- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#22147](vitejs/vite#22147)) ([a4d828f](vitejs/vite@a4d828f))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#22292](vitejs/vite#22292)) ([83f0a78](vitejs/vite@83f0a78))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#22273](vitejs/vite#22273)) ([5c7cec6](vitejs/vite@5c7cec6))
- remove format sniffing module resolution from JS resolver ([#22297](vitejs/vite#22297)) ([b8a21cc](vitejs/vite@b8a21cc))

##### Code Refactoring

- enable some typecheck rules ([#22278](vitejs/vite#22278)) ([9437518](vitejs/vite@9437518))
- typecheck client directory ([#22284](vitejs/vite#22284)) ([40a0847](vitejs/vite@40a0847))


## [v8.0.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)

##### Features

- update rolldown to 1.0.0-rc.16 ([#22248](vitejs/vite#22248)) ([2947edd](vitejs/vite@2947edd))

##### Bug Fixes

- allow binding when strictPort is set but wildcard port is in use ([#22150](vitejs/vite#22150)) ([dfc8aa5](vitejs/vite@dfc8aa5))
- **build:** emptyOutDir should happen for watch rebuilds ([#22207](vitejs/vite#22207)) ([ee52267](vitejs/vite@ee52267))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#22269](vitejs/vite#22269)) ([868f141](vitejs/vite@868f141))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#22039](vitejs/vite#22039)) ([374bb5d](vitejs/vite@374bb5d))
- **deps:** update all non-major dependencies ([#22219](vitejs/vite#22219)) ([4cd0d67](vitejs/vite@4cd0d67))
- **deps:** update all non-major dependencies ([#22268](vitejs/vite#22268)) ([c28e9c1](vitejs/vite@c28e9c1))
- detect Deno workspace root (fix [#22237](vitejs/vite#22237)) ([#22238](vitejs/vite#22238)) ([1b793c0](vitejs/vite@1b793c0))
- **dev:** handle errors in `watchChange` hook ([#22188](vitejs/vite#22188)) ([fc08bda](vitejs/vite@fc08bda))
- **optimizer:** handle more chars that will be sanitized ([#22208](vitejs/vite#22208)) ([3f24533](vitejs/vite@3f24533))
- skip fallback sourcemap generation for `?raw` imports ([#22148](vitejs/vite#22148)) ([3ec9cda](vitejs/vite@3ec9cda))

##### Documentation

- align the descriptions in READMEs ([#22231](vitejs/vite#22231)) ([44c42b9](vitejs/vite@44c42b9))
- fix reuses wording in dev environment comment ([#22173](vitejs/vite#22173)) ([9163412](vitejs/vite@9163412))
- fix wording in sass error comment ([#22214](vitejs/vite#22214)) ([bc5c6a7](vitejs/vite@bc5c6a7))
- update build CLI defaults ([#22261](vitejs/vite#22261)) ([605bb97](vitejs/vite@605bb97))

##### Miscellaneous Chores

- **deps:** update dependency dotenv-expand to v13 ([#22271](vitejs/vite#22271)) ([0a3887d](vitejs/vite@0a3887d))


## [v8.0.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)

##### Features

- update rolldown to 1.0.0-rc.15 ([#22201](vitejs/vite#22201)) ([6baf587](vitejs/vite@6baf587))

##### Bug Fixes

- avoid `dns.getDefaultResultOrder` temporary ([#22202](vitejs/vite#22202)) ([15f1c15](vitejs/vite@15f1c15))
- **ssr:** class property keys hoisting matching imports ([#22199](vitejs/vite#22199)) ([e137601](vitejs/vite@e137601))


## [v8.0.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)

##### Bug Fixes

- use sync dns.getDefaultResultOrder instead of dns.promises ([#22185](vitejs/vite#22185)) ([5c05b04](vitejs/vite@5c05b04))


## [v8.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)

##### Features

- update rolldown to 1.0.0-rc.13 ([#22097](vitejs/vite#22097)) ([51d3e48](vitejs/vite@51d3e48))

##### Bug Fixes

- **css:** avoid mutating sass error multiple times ([#22115](vitejs/vite#22115)) ([d5081c2](vitejs/vite@d5081c2))
- **optimize-deps:** hoist CJS interop assignment ([#22156](vitejs/vite#22156)) ([17a8f9e](vitejs/vite@17a8f9e))

##### Performance Improvements

- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#22151](vitejs/vite#22151)) ([56ec256](vitejs/vite@56ec256))

##### Miscellaneous Chores

- **create-vite:** remove unnecessary DOM.Iterable ([#22168](vitejs/vite#22168)) ([bdc53ab](vitejs/vite@bdc53ab))
- replace remaining prettier script ([#22179](vitejs/vite#22179)) ([af71fb2](vitejs/vite@af71fb2))


## [v8.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)

##### Bug Fixes

- apply server.fs check to env transport ([#22159](vitejs/vite#22159)) ([f02d9fd](vitejs/vite@f02d9fd))
- avoid path traversal with optimize deps sourcemap handler ([#22161](vitejs/vite#22161)) ([79f002f](vitejs/vite@79f002f))
- check `server.fs` after stripping query as well ([#22160](vitejs/vite#22160)) ([a9a3df2](vitejs/vite@a9a3df2))
- disallow referencing files outside the package from sourcemap ([#22158](vitejs/vite#22158)) ([f05f501](vitejs/vite@f05f501))


## [v8.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)

##### Features

- allow esbuild 0.28 as peer deps ([#22155](vitejs/vite#22155)) ([b0da973](vitejs/vite@b0da973))
- **hmr:** truncate list of files on hmr update ([#21535](vitejs/vite#21535)) ([d00e806](vitejs/vite@d00e806))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#21797](vitejs/vite#21797)) ([f61a1ab](vitejs/vite@f61a1ab))

##### Bug Fixes

- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#22043](vitejs/vite#22043)) ([99897d2](vitejs/vite@99897d2))
- add types for `vite/modulepreload-polyfill` ([#22126](vitejs/vite#22126)) ([17330d2](vitejs/vite@17330d2))
- **deps:** update all non-major dependencies ([#22073](vitejs/vite#22073)) ([6daa10f](vitejs/vite@6daa10f))
- **deps:** update all non-major dependencies ([#22143](vitejs/vite#22143)) ([22b0166](vitejs/vite@22b0166))
- **resolve:** resolve tsconfig paths starting with `#` ([#22038](vitejs/vite#22038)) ([3460fc5](vitejs/vite@3460fc5))
- **ssr:** use browser platform for webworker SSR builds (fix [#21969](vitejs/vite#21969)) ([#21963](vitejs/vite#21963)) ([364c227](vitejs/vite@364c227))

##### Documentation

- add `environment.fetchModule` documentation ([#22035](vitejs/vite#22035)) ([54229e7](vitejs/vite@54229e7))

##### Miscellaneous Chores

- **deps:** update rolldown-related dependencies ([#21989](vitejs/vite#21989)) ([0ded627](vitejs/vite@0ded627))

##### Code Refactoring

- upgrade to typescript 6 ([#22110](vitejs/vite#22110)) ([cc41398](vitejs/vite@cc41398))


## [v8.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)

##### Features

- update rolldown to 1.0.0-rc.12 ([#22024](vitejs/vite#22024)) ([84164ef](vitejs/vite@84164ef))

##### Bug Fixes

- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#22017](vitejs/vite#22017)) ([5464190](vitejs/vite@5464190))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#21985](vitejs/vite#21985)) ([77c95bf](vitejs/vite@77c95bf))
- **module-runner:** skip re-import if the runner is closed ([#22020](vitejs/vite#22020)) ([ee2c2cd](vitejs/vite@ee2c2cd))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#22018](vitejs/vite#22018)) ([ddfe20d](vitejs/vite@ddfe20d))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#22019](vitejs/vite#22019)) ([cff5f0c](vitejs/vite@cff5f0c))

##### Miscellaneous Chores

- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#22027](vitejs/vite#22027)) ([7e56003](vitejs/vite@7e56003))

##### Tests

- **html:** add tests for `getCssFilesForChunk` ([#22016](vitejs/vite#22016)) ([43fbbf9](vitejs/vite@43fbbf9))


## [v8.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)

##### Features

- update rolldown to 1.0.0-rc.11 ([#21998](vitejs/vite#21998)) ([ff91c31](vitejs/vite@ff91c31))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21988](vitejs/vite#21988)) ([9b7d150](vitejs/vite@9b7d150))

##### Miscellaneous Chores

- **deps:** update dependency [@vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#21992](vitejs/vite#21992)) ([b2dd65b](vitejs/vite@b2dd65b))


## [v8.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-801-2026-03-19-small)

##### Features

- update rolldown to 1.0.0-rc.10 ([#21932](vitejs/vite#21932)) ([b3c067d](vitejs/vite@b3c067d))

##### Bug Fixes

- **bundled-dev:** properly disable `inlineConst` optimization ([#21865](vitejs/vite#21865)) ([6d97142](vitejs/vite@6d97142))
- **css:** lightningcss minify failed when `build.target: 'es6'` ([#21933](vitejs/vite#21933)) ([5fcce46](vitejs/vite@5fcce46))
- **deps:** update all non-major dependencies ([#21878](vitejs/vite#21878)) ([6dbbd7f](vitejs/vite@6dbbd7f))
- **dev:** always use ESM Oxc runtime ([#21829](vitejs/vite#21829)) ([d323ed7](vitejs/vite@d323ed7))
- **dev:** handle concurrent restarts in `_createServer` ([#21810](vitejs/vite#21810)) ([40bc729](vitejs/vite@40bc729))
- handle `+` symbol in package subpath exports during dep optimization ([#21886](vitejs/vite#21886)) ([86db93d](vitejs/vite@86db93d))
- improve `no-cors` request block error ([#21902](vitejs/vite#21902)) ([5ba688b](vitejs/vite@5ba688b))
- use precise regexes for transform filter to avoid backtracking ([#21800](vitejs/vite#21800)) ([dbe41bd](vitejs/vite@dbe41bd))
- **worker:** `require(json)` result should not be wrapped ([#21847](vitejs/vite#21847)) ([0672fd2](vitejs/vite@0672fd2))
- **worker:** make worker output consistent with client and SSR ([#21871](vitejs/vite#21871)) ([69454d7](vitejs/vite@69454d7))

##### Miscellaneous Chores

- add changelog rearrange script ([#21835](vitejs/vite#21835)) ([efef073](vitejs/vite@efef073))
- **deps:** bump required `@vitejs/devtools` version to 0.1+ ([#21925](vitejs/vite#21925)) ([12932f5](vitejs/vite@12932f5))
- **deps:** update rolldown-related dependencies ([#21787](vitejs/vite#21787)) ([1af1d3a](vitejs/vite@1af1d3a))
- rearrange 8.0 changelog ([8e05b61](vitejs/vite@8e05b61))
- rearrange 8.0 changelog ([#21834](vitejs/vite#21834)) ([86edeee](vitejs/vite@86edeee))


## [v8.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)

##### 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))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352))


## [v7.3.2](https://github.com/vitejs/vite/releases/tag/v7.3.2)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) for details.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request May 6, 2026
| datasource | package | from  | to     |
| ---------- | ------- | ----- | ------ |
| npm        | vite    | 7.3.1 | 8.0.10 |


## [v8.0.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)

##### Features

- update rolldown to 1.0.0-rc.17 ([#22299](vitejs/vite#22299)) ([a4d06d9](vitejs/vite@a4d06d9))

##### Bug Fixes

- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#22147](vitejs/vite#22147)) ([a4d828f](vitejs/vite@a4d828f))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#22292](vitejs/vite#22292)) ([83f0a78](vitejs/vite@83f0a78))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#22273](vitejs/vite#22273)) ([5c7cec6](vitejs/vite@5c7cec6))
- remove format sniffing module resolution from JS resolver ([#22297](vitejs/vite#22297)) ([b8a21cc](vitejs/vite@b8a21cc))

##### Code Refactoring

- enable some typecheck rules ([#22278](vitejs/vite#22278)) ([9437518](vitejs/vite@9437518))
- typecheck client directory ([#22284](vitejs/vite#22284)) ([40a0847](vitejs/vite@40a0847))


## [v8.0.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)

##### Features

- update rolldown to 1.0.0-rc.16 ([#22248](vitejs/vite#22248)) ([2947edd](vitejs/vite@2947edd))

##### Bug Fixes

- allow binding when strictPort is set but wildcard port is in use ([#22150](vitejs/vite#22150)) ([dfc8aa5](vitejs/vite@dfc8aa5))
- **build:** emptyOutDir should happen for watch rebuilds ([#22207](vitejs/vite#22207)) ([ee52267](vitejs/vite@ee52267))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#22269](vitejs/vite#22269)) ([868f141](vitejs/vite@868f141))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#22039](vitejs/vite#22039)) ([374bb5d](vitejs/vite@374bb5d))
- **deps:** update all non-major dependencies ([#22219](vitejs/vite#22219)) ([4cd0d67](vitejs/vite@4cd0d67))
- **deps:** update all non-major dependencies ([#22268](vitejs/vite#22268)) ([c28e9c1](vitejs/vite@c28e9c1))
- detect Deno workspace root (fix [#22237](vitejs/vite#22237)) ([#22238](vitejs/vite#22238)) ([1b793c0](vitejs/vite@1b793c0))
- **dev:** handle errors in `watchChange` hook ([#22188](vitejs/vite#22188)) ([fc08bda](vitejs/vite@fc08bda))
- **optimizer:** handle more chars that will be sanitized ([#22208](vitejs/vite#22208)) ([3f24533](vitejs/vite@3f24533))
- skip fallback sourcemap generation for `?raw` imports ([#22148](vitejs/vite#22148)) ([3ec9cda](vitejs/vite@3ec9cda))

##### Documentation

- align the descriptions in READMEs ([#22231](vitejs/vite#22231)) ([44c42b9](vitejs/vite@44c42b9))
- fix reuses wording in dev environment comment ([#22173](vitejs/vite#22173)) ([9163412](vitejs/vite@9163412))
- fix wording in sass error comment ([#22214](vitejs/vite#22214)) ([bc5c6a7](vitejs/vite@bc5c6a7))
- update build CLI defaults ([#22261](vitejs/vite#22261)) ([605bb97](vitejs/vite@605bb97))

##### Miscellaneous Chores

- **deps:** update dependency dotenv-expand to v13 ([#22271](vitejs/vite#22271)) ([0a3887d](vitejs/vite@0a3887d))


## [v8.0.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)

##### Features

- update rolldown to 1.0.0-rc.15 ([#22201](vitejs/vite#22201)) ([6baf587](vitejs/vite@6baf587))

##### Bug Fixes

- avoid `dns.getDefaultResultOrder` temporary ([#22202](vitejs/vite#22202)) ([15f1c15](vitejs/vite@15f1c15))
- **ssr:** class property keys hoisting matching imports ([#22199](vitejs/vite#22199)) ([e137601](vitejs/vite@e137601))


## [v8.0.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)

##### Bug Fixes

- use sync dns.getDefaultResultOrder instead of dns.promises ([#22185](vitejs/vite#22185)) ([5c05b04](vitejs/vite@5c05b04))


## [v8.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)

##### Features

- update rolldown to 1.0.0-rc.13 ([#22097](vitejs/vite#22097)) ([51d3e48](vitejs/vite@51d3e48))

##### Bug Fixes

- **css:** avoid mutating sass error multiple times ([#22115](vitejs/vite#22115)) ([d5081c2](vitejs/vite@d5081c2))
- **optimize-deps:** hoist CJS interop assignment ([#22156](vitejs/vite#22156)) ([17a8f9e](vitejs/vite@17a8f9e))

##### Performance Improvements

- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#22151](vitejs/vite#22151)) ([56ec256](vitejs/vite@56ec256))

##### Miscellaneous Chores

- **create-vite:** remove unnecessary DOM.Iterable ([#22168](vitejs/vite#22168)) ([bdc53ab](vitejs/vite@bdc53ab))
- replace remaining prettier script ([#22179](vitejs/vite#22179)) ([af71fb2](vitejs/vite@af71fb2))


## [v8.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)

##### Bug Fixes

- apply server.fs check to env transport ([#22159](vitejs/vite#22159)) ([f02d9fd](vitejs/vite@f02d9fd))
- avoid path traversal with optimize deps sourcemap handler ([#22161](vitejs/vite#22161)) ([79f002f](vitejs/vite@79f002f))
- check `server.fs` after stripping query as well ([#22160](vitejs/vite#22160)) ([a9a3df2](vitejs/vite@a9a3df2))
- disallow referencing files outside the package from sourcemap ([#22158](vitejs/vite#22158)) ([f05f501](vitejs/vite@f05f501))


## [v8.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)

##### Features

- allow esbuild 0.28 as peer deps ([#22155](vitejs/vite#22155)) ([b0da973](vitejs/vite@b0da973))
- **hmr:** truncate list of files on hmr update ([#21535](vitejs/vite#21535)) ([d00e806](vitejs/vite@d00e806))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#21797](vitejs/vite#21797)) ([f61a1ab](vitejs/vite@f61a1ab))

##### Bug Fixes

- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#22043](vitejs/vite#22043)) ([99897d2](vitejs/vite@99897d2))
- add types for `vite/modulepreload-polyfill` ([#22126](vitejs/vite#22126)) ([17330d2](vitejs/vite@17330d2))
- **deps:** update all non-major dependencies ([#22073](vitejs/vite#22073)) ([6daa10f](vitejs/vite@6daa10f))
- **deps:** update all non-major dependencies ([#22143](vitejs/vite#22143)) ([22b0166](vitejs/vite@22b0166))
- **resolve:** resolve tsconfig paths starting with `#` ([#22038](vitejs/vite#22038)) ([3460fc5](vitejs/vite@3460fc5))
- **ssr:** use browser platform for webworker SSR builds (fix [#21969](vitejs/vite#21969)) ([#21963](vitejs/vite#21963)) ([364c227](vitejs/vite@364c227))

##### Documentation

- add `environment.fetchModule` documentation ([#22035](vitejs/vite#22035)) ([54229e7](vitejs/vite@54229e7))

##### Miscellaneous Chores

- **deps:** update rolldown-related dependencies ([#21989](vitejs/vite#21989)) ([0ded627](vitejs/vite@0ded627))

##### Code Refactoring

- upgrade to typescript 6 ([#22110](vitejs/vite#22110)) ([cc41398](vitejs/vite@cc41398))


## [v8.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)

##### Features

- update rolldown to 1.0.0-rc.12 ([#22024](vitejs/vite#22024)) ([84164ef](vitejs/vite@84164ef))

##### Bug Fixes

- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#22017](vitejs/vite#22017)) ([5464190](vitejs/vite@5464190))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#21985](vitejs/vite#21985)) ([77c95bf](vitejs/vite@77c95bf))
- **module-runner:** skip re-import if the runner is closed ([#22020](vitejs/vite#22020)) ([ee2c2cd](vitejs/vite@ee2c2cd))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#22018](vitejs/vite#22018)) ([ddfe20d](vitejs/vite@ddfe20d))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#22019](vitejs/vite#22019)) ([cff5f0c](vitejs/vite@cff5f0c))

##### Miscellaneous Chores

- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#22027](vitejs/vite#22027)) ([7e56003](vitejs/vite@7e56003))

##### Tests

- **html:** add tests for `getCssFilesForChunk` ([#22016](vitejs/vite#22016)) ([43fbbf9](vitejs/vite@43fbbf9))


## [v8.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)

##### Features

- update rolldown to 1.0.0-rc.11 ([#21998](vitejs/vite#21998)) ([ff91c31](vitejs/vite@ff91c31))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21988](vitejs/vite#21988)) ([9b7d150](vitejs/vite@9b7d150))

##### Miscellaneous Chores

- **deps:** update dependency [@vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#21992](vitejs/vite#21992)) ([b2dd65b](vitejs/vite@b2dd65b))


## [v8.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-801-2026-03-19-small)

##### Features

- update rolldown to 1.0.0-rc.10 ([#21932](vitejs/vite#21932)) ([b3c067d](vitejs/vite@b3c067d))

##### Bug Fixes

- **bundled-dev:** properly disable `inlineConst` optimization ([#21865](vitejs/vite#21865)) ([6d97142](vitejs/vite@6d97142))
- **css:** lightningcss minify failed when `build.target: 'es6'` ([#21933](vitejs/vite#21933)) ([5fcce46](vitejs/vite@5fcce46))
- **deps:** update all non-major dependencies ([#21878](vitejs/vite#21878)) ([6dbbd7f](vitejs/vite@6dbbd7f))
- **dev:** always use ESM Oxc runtime ([#21829](vitejs/vite#21829)) ([d323ed7](vitejs/vite@d323ed7))
- **dev:** handle concurrent restarts in `_createServer` ([#21810](vitejs/vite#21810)) ([40bc729](vitejs/vite@40bc729))
- handle `+` symbol in package subpath exports during dep optimization ([#21886](vitejs/vite#21886)) ([86db93d](vitejs/vite@86db93d))
- improve `no-cors` request block error ([#21902](vitejs/vite#21902)) ([5ba688b](vitejs/vite@5ba688b))
- use precise regexes for transform filter to avoid backtracking ([#21800](vitejs/vite#21800)) ([dbe41bd](vitejs/vite@dbe41bd))
- **worker:** `require(json)` result should not be wrapped ([#21847](vitejs/vite#21847)) ([0672fd2](vitejs/vite@0672fd2))
- **worker:** make worker output consistent with client and SSR ([#21871](vitejs/vite#21871)) ([69454d7](vitejs/vite@69454d7))

##### Miscellaneous Chores

- add changelog rearrange script ([#21835](vitejs/vite#21835)) ([efef073](vitejs/vite@efef073))
- **deps:** bump required `@vitejs/devtools` version to 0.1+ ([#21925](vitejs/vite#21925)) ([12932f5](vitejs/vite@12932f5))
- **deps:** update rolldown-related dependencies ([#21787](vitejs/vite#21787)) ([1af1d3a](vitejs/vite@1af1d3a))
- rearrange 8.0 changelog ([8e05b61](vitejs/vite@8e05b61))
- rearrange 8.0 changelog ([#21834](vitejs/vite#21834)) ([86edeee](vitejs/vite@86edeee))


## [v8.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)

##### 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))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352))


## [v7.3.2](https://github.com/vitejs/vite/releases/tag/v7.3.2)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) for details.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request May 7, 2026
| datasource | package | from  | to     |
| ---------- | ------- | ----- | ------ |
| npm        | vite    | 7.3.1 | 8.0.11 |


## [v8.0.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8011-2026-05-07-small)

##### Features

- update rolldown to 1.0.0-rc.18 ([#22360](vitejs/vite#22360)) ([3f80524](vitejs/vite@3f80524))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#22334](vitejs/vite#22334)) ([672c962](vitejs/vite@672c962))
- **deps:** update all non-major dependencies ([#22382](vitejs/vite#22382)) ([5c0cfcb](vitejs/vite@5c0cfcb))
- **glob:** align hmr matcher options with glob enumeration ([#22306](vitejs/vite#22306)) ([30028f9](vitejs/vite@30028f9))
- make separate object instance for each environment ([#22276](vitejs/vite#22276)) ([7c2aa3b](vitejs/vite@7c2aa3b))

##### Documentation

- **create-vite:** list react-compiler templates in README ([#22347](vitejs/vite#22347)) ([7c3a61f](vitejs/vite@7c3a61f))
- explain mergeConfig skips null/undefined ([#22325](vitejs/vite#22325)) ([2151f70](vitejs/vite@2151f70))
- mention native config loader in CLI options ([#22348](vitejs/vite#22348)) ([0420c5d](vitejs/vite@0420c5d))
- update evan's x handle ([640202a](vitejs/vite@640202a))

##### Miscellaneous Chores

- **deps:** update dependency tsdown to ^0.21.10 ([#22333](vitejs/vite#22333)) ([3b51e05](vitejs/vite@3b51e05))
- **deps:** update rolldown-related dependencies ([#22383](vitejs/vite#22383)) ([555ff36](vitejs/vite@555ff36))
- **deps:** update transitive packages to fix npm audit alerts ([#22316](vitejs/vite#22316)) ([86aee62](vitejs/vite@86aee62))

##### Code Refactoring

- devtools integration ([#22312](vitejs/vite#22312)) ([3c8bf06](vitejs/vite@3c8bf06))
- remove unnecessary async ([#22296](vitejs/vite#22296)) ([b31fd35](vitejs/vite@b31fd35))
- show direct path type in bad character warning ([#22339](vitejs/vite#22339)) ([0c162e9](vitejs/vite@0c162e9))

##### Tests

- **create-vite:** use short help alias ([#22389](vitejs/vite#22389)) ([994ab66](vitejs/vite@994ab66))


## [v8.0.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)

##### Features

- update rolldown to 1.0.0-rc.17 ([#22299](vitejs/vite#22299)) ([a4d06d9](vitejs/vite@a4d06d9))

##### Bug Fixes

- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#22147](vitejs/vite#22147)) ([a4d828f](vitejs/vite@a4d828f))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#22292](vitejs/vite#22292)) ([83f0a78](vitejs/vite@83f0a78))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#22273](vitejs/vite#22273)) ([5c7cec6](vitejs/vite@5c7cec6))
- remove format sniffing module resolution from JS resolver ([#22297](vitejs/vite#22297)) ([b8a21cc](vitejs/vite@b8a21cc))

##### Code Refactoring

- enable some typecheck rules ([#22278](vitejs/vite#22278)) ([9437518](vitejs/vite@9437518))
- typecheck client directory ([#22284](vitejs/vite#22284)) ([40a0847](vitejs/vite@40a0847))


## [v8.0.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)

##### Features

- update rolldown to 1.0.0-rc.16 ([#22248](vitejs/vite#22248)) ([2947edd](vitejs/vite@2947edd))

##### Bug Fixes

- allow binding when strictPort is set but wildcard port is in use ([#22150](vitejs/vite#22150)) ([dfc8aa5](vitejs/vite@dfc8aa5))
- **build:** emptyOutDir should happen for watch rebuilds ([#22207](vitejs/vite#22207)) ([ee52267](vitejs/vite@ee52267))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#22269](vitejs/vite#22269)) ([868f141](vitejs/vite@868f141))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#22039](vitejs/vite#22039)) ([374bb5d](vitejs/vite@374bb5d))
- **deps:** update all non-major dependencies ([#22219](vitejs/vite#22219)) ([4cd0d67](vitejs/vite@4cd0d67))
- **deps:** update all non-major dependencies ([#22268](vitejs/vite#22268)) ([c28e9c1](vitejs/vite@c28e9c1))
- detect Deno workspace root (fix [#22237](vitejs/vite#22237)) ([#22238](vitejs/vite#22238)) ([1b793c0](vitejs/vite@1b793c0))
- **dev:** handle errors in `watchChange` hook ([#22188](vitejs/vite#22188)) ([fc08bda](vitejs/vite@fc08bda))
- **optimizer:** handle more chars that will be sanitized ([#22208](vitejs/vite#22208)) ([3f24533](vitejs/vite@3f24533))
- skip fallback sourcemap generation for `?raw` imports ([#22148](vitejs/vite#22148)) ([3ec9cda](vitejs/vite@3ec9cda))

##### Documentation

- align the descriptions in READMEs ([#22231](vitejs/vite#22231)) ([44c42b9](vitejs/vite@44c42b9))
- fix reuses wording in dev environment comment ([#22173](vitejs/vite#22173)) ([9163412](vitejs/vite@9163412))
- fix wording in sass error comment ([#22214](vitejs/vite#22214)) ([bc5c6a7](vitejs/vite@bc5c6a7))
- update build CLI defaults ([#22261](vitejs/vite#22261)) ([605bb97](vitejs/vite@605bb97))

##### Miscellaneous Chores

- **deps:** update dependency dotenv-expand to v13 ([#22271](vitejs/vite#22271)) ([0a3887d](vitejs/vite@0a3887d))


## [v8.0.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)

##### Features

- update rolldown to 1.0.0-rc.15 ([#22201](vitejs/vite#22201)) ([6baf587](vitejs/vite@6baf587))

##### Bug Fixes

- avoid `dns.getDefaultResultOrder` temporary ([#22202](vitejs/vite#22202)) ([15f1c15](vitejs/vite@15f1c15))
- **ssr:** class property keys hoisting matching imports ([#22199](vitejs/vite#22199)) ([e137601](vitejs/vite@e137601))


## [v8.0.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)

##### Bug Fixes

- use sync dns.getDefaultResultOrder instead of dns.promises ([#22185](vitejs/vite#22185)) ([5c05b04](vitejs/vite@5c05b04))


## [v8.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)

##### Features

- update rolldown to 1.0.0-rc.13 ([#22097](vitejs/vite#22097)) ([51d3e48](vitejs/vite@51d3e48))

##### Bug Fixes

- **css:** avoid mutating sass error multiple times ([#22115](vitejs/vite#22115)) ([d5081c2](vitejs/vite@d5081c2))
- **optimize-deps:** hoist CJS interop assignment ([#22156](vitejs/vite#22156)) ([17a8f9e](vitejs/vite@17a8f9e))

##### Performance Improvements

- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#22151](vitejs/vite#22151)) ([56ec256](vitejs/vite@56ec256))

##### Miscellaneous Chores

- **create-vite:** remove unnecessary DOM.Iterable ([#22168](vitejs/vite#22168)) ([bdc53ab](vitejs/vite@bdc53ab))
- replace remaining prettier script ([#22179](vitejs/vite#22179)) ([af71fb2](vitejs/vite@af71fb2))


## [v8.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)

##### Bug Fixes

- apply server.fs check to env transport ([#22159](vitejs/vite#22159)) ([f02d9fd](vitejs/vite@f02d9fd))
- avoid path traversal with optimize deps sourcemap handler ([#22161](vitejs/vite#22161)) ([79f002f](vitejs/vite@79f002f))
- check `server.fs` after stripping query as well ([#22160](vitejs/vite#22160)) ([a9a3df2](vitejs/vite@a9a3df2))
- disallow referencing files outside the package from sourcemap ([#22158](vitejs/vite#22158)) ([f05f501](vitejs/vite@f05f501))


## [v8.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)

##### Features

- allow esbuild 0.28 as peer deps ([#22155](vitejs/vite#22155)) ([b0da973](vitejs/vite@b0da973))
- **hmr:** truncate list of files on hmr update ([#21535](vitejs/vite#21535)) ([d00e806](vitejs/vite@d00e806))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#21797](vitejs/vite#21797)) ([f61a1ab](vitejs/vite@f61a1ab))

##### Bug Fixes

- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#22043](vitejs/vite#22043)) ([99897d2](vitejs/vite@99897d2))
- add types for `vite/modulepreload-polyfill` ([#22126](vitejs/vite#22126)) ([17330d2](vitejs/vite@17330d2))
- **deps:** update all non-major dependencies ([#22073](vitejs/vite#22073)) ([6daa10f](vitejs/vite@6daa10f))
- **deps:** update all non-major dependencies ([#22143](vitejs/vite#22143)) ([22b0166](vitejs/vite@22b0166))
- **resolve:** resolve tsconfig paths starting with `#` ([#22038](vitejs/vite#22038)) ([3460fc5](vitejs/vite@3460fc5))
- **ssr:** use browser platform for webworker SSR builds (fix [#21969](vitejs/vite#21969)) ([#21963](vitejs/vite#21963)) ([364c227](vitejs/vite@364c227))

##### Documentation

- add `environment.fetchModule` documentation ([#22035](vitejs/vite#22035)) ([54229e7](vitejs/vite@54229e7))

##### Miscellaneous Chores

- **deps:** update rolldown-related dependencies ([#21989](vitejs/vite#21989)) ([0ded627](vitejs/vite@0ded627))

##### Code Refactoring

- upgrade to typescript 6 ([#22110](vitejs/vite#22110)) ([cc41398](vitejs/vite@cc41398))


## [v8.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)

##### Features

- update rolldown to 1.0.0-rc.12 ([#22024](vitejs/vite#22024)) ([84164ef](vitejs/vite@84164ef))

##### Bug Fixes

- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#22017](vitejs/vite#22017)) ([5464190](vitejs/vite@5464190))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#21985](vitejs/vite#21985)) ([77c95bf](vitejs/vite@77c95bf))
- **module-runner:** skip re-import if the runner is closed ([#22020](vitejs/vite#22020)) ([ee2c2cd](vitejs/vite@ee2c2cd))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#22018](vitejs/vite#22018)) ([ddfe20d](vitejs/vite@ddfe20d))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#22019](vitejs/vite#22019)) ([cff5f0c](vitejs/vite@cff5f0c))

##### Miscellaneous Chores

- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#22027](vitejs/vite#22027)) ([7e56003](vitejs/vite@7e56003))

##### Tests

- **html:** add tests for `getCssFilesForChunk` ([#22016](vitejs/vite#22016)) ([43fbbf9](vitejs/vite@43fbbf9))


## [v8.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)

##### Features

- update rolldown to 1.0.0-rc.11 ([#21998](vitejs/vite#21998)) ([ff91c31](vitejs/vite@ff91c31))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21988](vitejs/vite#21988)) ([9b7d150](vitejs/vite@9b7d150))

##### Miscellaneous Chores

- **deps:** update dependency [@vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#21992](vitejs/vite#21992)) ([b2dd65b](vitejs/vite@b2dd65b))


## [v8.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-801-2026-03-19-small)

##### Features

- update rolldown to 1.0.0-rc.10 ([#21932](vitejs/vite#21932)) ([b3c067d](vitejs/vite@b3c067d))

##### Bug Fixes

- **bundled-dev:** properly disable `inlineConst` optimization ([#21865](vitejs/vite#21865)) ([6d97142](vitejs/vite@6d97142))
- **css:** lightningcss minify failed when `build.target: 'es6'` ([#21933](vitejs/vite#21933)) ([5fcce46](vitejs/vite@5fcce46))
- **deps:** update all non-major dependencies ([#21878](vitejs/vite#21878)) ([6dbbd7f](vitejs/vite@6dbbd7f))
- **dev:** always use ESM Oxc runtime ([#21829](vitejs/vite#21829)) ([d323ed7](vitejs/vite@d323ed7))
- **dev:** handle concurrent restarts in `_createServer` ([#21810](vitejs/vite#21810)) ([40bc729](vitejs/vite@40bc729))
- handle `+` symbol in package subpath exports during dep optimization ([#21886](vitejs/vite#21886)) ([86db93d](vitejs/vite@86db93d))
- improve `no-cors` request block error ([#21902](vitejs/vite#21902)) ([5ba688b](vitejs/vite@5ba688b))
- use precise regexes for transform filter to avoid backtracking ([#21800](vitejs/vite#21800)) ([dbe41bd](vitejs/vite@dbe41bd))
- **worker:** `require(json)` result should not be wrapped ([#21847](vitejs/vite#21847)) ([0672fd2](vitejs/vite@0672fd2))
- **worker:** make worker output consistent with client and SSR ([#21871](vitejs/vite#21871)) ([69454d7](vitejs/vite@69454d7))

##### Miscellaneous Chores

- add changelog rearrange script ([#21835](vitejs/vite#21835)) ([efef073](vitejs/vite@efef073))
- **deps:** bump required `@vitejs/devtools` version to 0.1+ ([#21925](vitejs/vite#21925)) ([12932f5](vitejs/vite@12932f5))
- **deps:** update rolldown-related dependencies ([#21787](vitejs/vite#21787)) ([1af1d3a](vitejs/vite@1af1d3a))
- rearrange 8.0 changelog ([8e05b61](vitejs/vite@8e05b61))
- rearrange 8.0 changelog ([#21834](vitejs/vite#21834)) ([86edeee](vitejs/vite@86edeee))


## [v8.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)

##### 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))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352))


## [v7.3.3](https://github.com/vitejs/vite/releases/tag/v7.3.3)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.3/packages/vite/CHANGELOG.md) for details.


## [v7.3.2](https://github.com/vitejs/vite/releases/tag/v7.3.2)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) for details.
renovate Bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request May 8, 2026
| datasource | package | from  | to     |
| ---------- | ------- | ----- | ------ |
| npm        | vite    | 7.3.1 | 8.0.11 |


## [v8.0.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8011-2026-05-07-small)

##### Features

- update rolldown to 1.0.0-rc.18 ([#22360](vitejs/vite#22360)) ([3f80524](vitejs/vite@3f80524))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#22334](vitejs/vite#22334)) ([672c962](vitejs/vite@672c962))
- **deps:** update all non-major dependencies ([#22382](vitejs/vite#22382)) ([5c0cfcb](vitejs/vite@5c0cfcb))
- **glob:** align hmr matcher options with glob enumeration ([#22306](vitejs/vite#22306)) ([30028f9](vitejs/vite@30028f9))
- make separate object instance for each environment ([#22276](vitejs/vite#22276)) ([7c2aa3b](vitejs/vite@7c2aa3b))

##### Documentation

- **create-vite:** list react-compiler templates in README ([#22347](vitejs/vite#22347)) ([7c3a61f](vitejs/vite@7c3a61f))
- explain mergeConfig skips null/undefined ([#22325](vitejs/vite#22325)) ([2151f70](vitejs/vite@2151f70))
- mention native config loader in CLI options ([#22348](vitejs/vite#22348)) ([0420c5d](vitejs/vite@0420c5d))
- update evan's x handle ([640202a](vitejs/vite@640202a))

##### Miscellaneous Chores

- **deps:** update dependency tsdown to ^0.21.10 ([#22333](vitejs/vite#22333)) ([3b51e05](vitejs/vite@3b51e05))
- **deps:** update rolldown-related dependencies ([#22383](vitejs/vite#22383)) ([555ff36](vitejs/vite@555ff36))
- **deps:** update transitive packages to fix npm audit alerts ([#22316](vitejs/vite#22316)) ([86aee62](vitejs/vite@86aee62))

##### Code Refactoring

- devtools integration ([#22312](vitejs/vite#22312)) ([3c8bf06](vitejs/vite@3c8bf06))
- remove unnecessary async ([#22296](vitejs/vite#22296)) ([b31fd35](vitejs/vite@b31fd35))
- show direct path type in bad character warning ([#22339](vitejs/vite#22339)) ([0c162e9](vitejs/vite@0c162e9))

##### Tests

- **create-vite:** use short help alias ([#22389](vitejs/vite#22389)) ([994ab66](vitejs/vite@994ab66))


## [v8.0.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-8010-2026-04-23-small)

##### Features

- update rolldown to 1.0.0-rc.17 ([#22299](vitejs/vite#22299)) ([a4d06d9](vitejs/vite@a4d06d9))

##### Bug Fixes

- `hmrClient.logger.debug` and `hmrClient.logger.error` looked different from other HMR logs ([#22147](vitejs/vite#22147)) ([a4d828f](vitejs/vite@a4d828f))
- **css:** show filename in CSS minification warnings for `.css?inline` ([#22292](vitejs/vite#22292)) ([83f0a78](vitejs/vite@83f0a78))
- **optimizer:** allow user transform.target to override default in optimizeDeps ([#22273](vitejs/vite#22273)) ([5c7cec6](vitejs/vite@5c7cec6))
- remove format sniffing module resolution from JS resolver ([#22297](vitejs/vite#22297)) ([b8a21cc](vitejs/vite@b8a21cc))

##### Code Refactoring

- enable some typecheck rules ([#22278](vitejs/vite#22278)) ([9437518](vitejs/vite@9437518))
- typecheck client directory ([#22284](vitejs/vite#22284)) ([40a0847](vitejs/vite@40a0847))


## [v8.0.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-809-2026-04-20-small)

##### Features

- update rolldown to 1.0.0-rc.16 ([#22248](vitejs/vite#22248)) ([2947edd](vitejs/vite@2947edd))

##### Bug Fixes

- allow binding when strictPort is set but wildcard port is in use ([#22150](vitejs/vite#22150)) ([dfc8aa5](vitejs/vite@dfc8aa5))
- **build:** emptyOutDir should happen for watch rebuilds ([#22207](vitejs/vite#22207)) ([ee52267](vitejs/vite@ee52267))
- **bundled-dev:** reject requests to HMR patch files in non potentially trustworthy origins ([#22269](vitejs/vite#22269)) ([868f141](vitejs/vite@868f141))
- **css:** use unique key for cssEntriesMap to prevent same-basename collision ([#22039](vitejs/vite#22039)) ([374bb5d](vitejs/vite@374bb5d))
- **deps:** update all non-major dependencies ([#22219](vitejs/vite#22219)) ([4cd0d67](vitejs/vite@4cd0d67))
- **deps:** update all non-major dependencies ([#22268](vitejs/vite#22268)) ([c28e9c1](vitejs/vite@c28e9c1))
- detect Deno workspace root (fix [#22237](vitejs/vite#22237)) ([#22238](vitejs/vite#22238)) ([1b793c0](vitejs/vite@1b793c0))
- **dev:** handle errors in `watchChange` hook ([#22188](vitejs/vite#22188)) ([fc08bda](vitejs/vite@fc08bda))
- **optimizer:** handle more chars that will be sanitized ([#22208](vitejs/vite#22208)) ([3f24533](vitejs/vite@3f24533))
- skip fallback sourcemap generation for `?raw` imports ([#22148](vitejs/vite#22148)) ([3ec9cda](vitejs/vite@3ec9cda))

##### Documentation

- align the descriptions in READMEs ([#22231](vitejs/vite#22231)) ([44c42b9](vitejs/vite@44c42b9))
- fix reuses wording in dev environment comment ([#22173](vitejs/vite#22173)) ([9163412](vitejs/vite@9163412))
- fix wording in sass error comment ([#22214](vitejs/vite#22214)) ([bc5c6a7](vitejs/vite@bc5c6a7))
- update build CLI defaults ([#22261](vitejs/vite#22261)) ([605bb97](vitejs/vite@605bb97))

##### Miscellaneous Chores

- **deps:** update dependency dotenv-expand to v13 ([#22271](vitejs/vite#22271)) ([0a3887d](vitejs/vite@0a3887d))


## [v8.0.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-808-2026-04-09-small)

##### Features

- update rolldown to 1.0.0-rc.15 ([#22201](vitejs/vite#22201)) ([6baf587](vitejs/vite@6baf587))

##### Bug Fixes

- avoid `dns.getDefaultResultOrder` temporary ([#22202](vitejs/vite#22202)) ([15f1c15](vitejs/vite@15f1c15))
- **ssr:** class property keys hoisting matching imports ([#22199](vitejs/vite#22199)) ([e137601](vitejs/vite@e137601))


## [v8.0.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-807-2026-04-07-small)

##### Bug Fixes

- use sync dns.getDefaultResultOrder instead of dns.promises ([#22185](vitejs/vite#22185)) ([5c05b04](vitejs/vite@5c05b04))


## [v8.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-806-2026-04-07-small)

##### Features

- update rolldown to 1.0.0-rc.13 ([#22097](vitejs/vite#22097)) ([51d3e48](vitejs/vite@51d3e48))

##### Bug Fixes

- **css:** avoid mutating sass error multiple times ([#22115](vitejs/vite#22115)) ([d5081c2](vitejs/vite@d5081c2))
- **optimize-deps:** hoist CJS interop assignment ([#22156](vitejs/vite#22156)) ([17a8f9e](vitejs/vite@17a8f9e))

##### Performance Improvements

- early return in `getLocalhostAddressIfDiffersFromDNS` when DNS order is `verbatim` ([#22151](vitejs/vite#22151)) ([56ec256](vitejs/vite@56ec256))

##### Miscellaneous Chores

- **create-vite:** remove unnecessary DOM.Iterable ([#22168](vitejs/vite#22168)) ([bdc53ab](vitejs/vite@bdc53ab))
- replace remaining prettier script ([#22179](vitejs/vite#22179)) ([af71fb2](vitejs/vite@af71fb2))


## [v8.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-805-2026-04-06-small)

##### Bug Fixes

- apply server.fs check to env transport ([#22159](vitejs/vite#22159)) ([f02d9fd](vitejs/vite@f02d9fd))
- avoid path traversal with optimize deps sourcemap handler ([#22161](vitejs/vite#22161)) ([79f002f](vitejs/vite@79f002f))
- check `server.fs` after stripping query as well ([#22160](vitejs/vite#22160)) ([a9a3df2](vitejs/vite@a9a3df2))
- disallow referencing files outside the package from sourcemap ([#22158](vitejs/vite#22158)) ([f05f501](vitejs/vite@f05f501))


## [v8.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-804-2026-04-06-small)

##### Features

- allow esbuild 0.28 as peer deps ([#22155](vitejs/vite#22155)) ([b0da973](vitejs/vite@b0da973))
- **hmr:** truncate list of files on hmr update ([#21535](vitejs/vite#21535)) ([d00e806](vitejs/vite@d00e806))
- **optimizer:** log when dependency scanning or bundling takes over 1s ([#21797](vitejs/vite#21797)) ([f61a1ab](vitejs/vite@f61a1ab))

##### Bug Fixes

- `hasBothRollupOptionsAndRolldownOptions` should return `false` for proxy case ([#22043](vitejs/vite#22043)) ([99897d2](vitejs/vite@99897d2))
- add types for `vite/modulepreload-polyfill` ([#22126](vitejs/vite#22126)) ([17330d2](vitejs/vite@17330d2))
- **deps:** update all non-major dependencies ([#22073](vitejs/vite#22073)) ([6daa10f](vitejs/vite@6daa10f))
- **deps:** update all non-major dependencies ([#22143](vitejs/vite#22143)) ([22b0166](vitejs/vite@22b0166))
- **resolve:** resolve tsconfig paths starting with `#` ([#22038](vitejs/vite#22038)) ([3460fc5](vitejs/vite@3460fc5))
- **ssr:** use browser platform for webworker SSR builds (fix [#21969](vitejs/vite#21969)) ([#21963](vitejs/vite#21963)) ([364c227](vitejs/vite@364c227))

##### Documentation

- add `environment.fetchModule` documentation ([#22035](vitejs/vite#22035)) ([54229e7](vitejs/vite@54229e7))

##### Miscellaneous Chores

- **deps:** update rolldown-related dependencies ([#21989](vitejs/vite#21989)) ([0ded627](vitejs/vite@0ded627))

##### Code Refactoring

- upgrade to typescript 6 ([#22110](vitejs/vite#22110)) ([cc41398](vitejs/vite@cc41398))


## [v8.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-803-2026-03-26-small)

##### Features

- update rolldown to 1.0.0-rc.12 ([#22024](vitejs/vite#22024)) ([84164ef](vitejs/vite@84164ef))

##### Bug Fixes

- **html:** cache unfiltered CSS list to prevent missing styles across entries ([#22017](vitejs/vite#22017)) ([5464190](vitejs/vite@5464190))
- **module-runner:** handle non-ascii characters in base64 sourcemaps ([#21985](vitejs/vite#21985)) ([77c95bf](vitejs/vite@77c95bf))
- **module-runner:** skip re-import if the runner is closed ([#22020](vitejs/vite#22020)) ([ee2c2cd](vitejs/vite@ee2c2cd))
- **optimizer:** scan is not resolving sub path import if used in a glob import ([#22018](vitejs/vite#22018)) ([ddfe20d](vitejs/vite@ddfe20d))
- **ssr:** ssrTransform incorrectly rewrites `meta` identifier inside `import.meta` when a binding named `meta` exists ([#22019](vitejs/vite#22019)) ([cff5f0c](vitejs/vite@cff5f0c))

##### Miscellaneous Chores

- **deps:** bump picomatch from 4.0.3 to 4.0.4 ([#22027](vitejs/vite#22027)) ([7e56003](vitejs/vite@7e56003))

##### Tests

- **html:** add tests for `getCssFilesForChunk` ([#22016](vitejs/vite#22016)) ([43fbbf9](vitejs/vite@43fbbf9))


## [v8.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-802-2026-03-23-small)

##### Features

- update rolldown to 1.0.0-rc.11 ([#21998](vitejs/vite#21998)) ([ff91c31](vitejs/vite@ff91c31))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21988](vitejs/vite#21988)) ([9b7d150](vitejs/vite@9b7d150))

##### Miscellaneous Chores

- **deps:** update dependency [@vitejs/devtools](https://github.com/vitejs/devtools) to ^0.1.5 ([#21992](vitejs/vite#21992)) ([b2dd65b](vitejs/vite@b2dd65b))


## [v8.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-801-2026-03-19-small)

##### Features

- update rolldown to 1.0.0-rc.10 ([#21932](vitejs/vite#21932)) ([b3c067d](vitejs/vite@b3c067d))

##### Bug Fixes

- **bundled-dev:** properly disable `inlineConst` optimization ([#21865](vitejs/vite#21865)) ([6d97142](vitejs/vite@6d97142))
- **css:** lightningcss minify failed when `build.target: 'es6'` ([#21933](vitejs/vite#21933)) ([5fcce46](vitejs/vite@5fcce46))
- **deps:** update all non-major dependencies ([#21878](vitejs/vite#21878)) ([6dbbd7f](vitejs/vite@6dbbd7f))
- **dev:** always use ESM Oxc runtime ([#21829](vitejs/vite#21829)) ([d323ed7](vitejs/vite@d323ed7))
- **dev:** handle concurrent restarts in `_createServer` ([#21810](vitejs/vite#21810)) ([40bc729](vitejs/vite@40bc729))
- handle `+` symbol in package subpath exports during dep optimization ([#21886](vitejs/vite#21886)) ([86db93d](vitejs/vite@86db93d))
- improve `no-cors` request block error ([#21902](vitejs/vite#21902)) ([5ba688b](vitejs/vite@5ba688b))
- use precise regexes for transform filter to avoid backtracking ([#21800](vitejs/vite#21800)) ([dbe41bd](vitejs/vite@dbe41bd))
- **worker:** `require(json)` result should not be wrapped ([#21847](vitejs/vite#21847)) ([0672fd2](vitejs/vite@0672fd2))
- **worker:** make worker output consistent with client and SSR ([#21871](vitejs/vite#21871)) ([69454d7](vitejs/vite@69454d7))

##### Miscellaneous Chores

- add changelog rearrange script ([#21835](vitejs/vite#21835)) ([efef073](vitejs/vite@efef073))
- **deps:** bump required `@vitejs/devtools` version to 0.1+ ([#21925](vitejs/vite#21925)) ([12932f5](vitejs/vite@12932f5))
- **deps:** update rolldown-related dependencies ([#21787](vitejs/vite#21787)) ([1af1d3a](vitejs/vite@1af1d3a))
- rearrange 8.0 changelog ([8e05b61](vitejs/vite@8e05b61))
- rearrange 8.0 changelog ([#21834](vitejs/vite#21834)) ([86edeee](vitejs/vite@86edeee))


## [v8.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#800-2026-03-12)

##### 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))

##### Bug Fixes

- **deps:** update all non-major dependencies ([#21786](vitejs/vite#21786)) ([eaa4352](vitejs/vite@eaa4352))


## [v7.3.3](https://github.com/vitejs/vite/releases/tag/v7.3.3)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.3/packages/vite/CHANGELOG.md) for details.


## [v7.3.2](https://github.com/vitejs/vite/releases/tag/v7.3.2)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) for details.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feat: build p2-edge-case Bug, but has workaround or limited in scope (priority)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CSS entry points sharing the same basename in different directories produce incorrect cross-linked css dependencies in manifest

2 participants