Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(error-logging): rollup errors weren't displaying id and codeframe #16540

Merged
merged 1 commit into from
May 9, 2024

Conversation

thebanjomatic
Copy link
Contributor

@thebanjomatic thebanjomatic commented Apr 27, 2024

Description

The code which modified the error message to have additional context about the module id and code frame where the error originated was relying on the error's stack having never been accessed prior to modifying the error's message. At some point, this no longer was true for Rollup errors, and no context information was being displayed as a result other than the stack trace within the rollup library that doesn't make it clear what or where the problem is.

This PR changes the code that add's the id and code-frame context to the error message to also modify the error's stack. To do so, it attempts to extract the original stack trace by removing the existing error message from error.stack if it matches, and otherwise falls back to just displaying the stack trace with its own message since it varies from the error.message.

Some additional normalization was done to the error.frame field if it exists to ensure that consistent padding is used in the error output. This is because the rollup code-frame doesn't have new-lines around it, but the esbuild one does.

Rollup Build Error Before:

error during build:
RollupError: Expression expected
    at getRollupError (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/parseAst.js:392:41)
    at ParseError.initialise (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:11170:28)
    at convertNode (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:12915:10)
    at convertProgram (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:12232:12)
    at Module.setSource (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:14076:24)
    at async ModuleLoader.addModuleSource (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:18729:13)

Rollup Build Error After:

error during build:
test.ts (9:0): Expression expected (Note that you need plugins to import files that are not JavaScript)
file: C:/Downloads/vitejs-vite-tjzm6p/test.ts:9:0

 7:
 8: // The following produces a rollup error
 9: @Component()
    ^
10: export default class Test extends Vue {
11:   bar: 1234;

RollupError: Expression expected
    at getRollupError (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/parseAst.js:392:41)
    at ParseError.initialise (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:11170:28)
    at convertNode (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:12915:10)
    at convertProgram (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:12232:12)
    at Module.setSource (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:14076:24)
    at async ModuleLoader.addModuleSource (file:///C:/Downloads/vitejs-vite-tjzm6p/node_modules/rollup/dist/es/shared/node-entry.js:18729:13)

The esbuild output remains unchanged, but should also be more consistently displayed even when the debugger is attached.

error during build:
Error: [vite:esbuild] Transform failed with 1 error:
C:/Downloads/vitejs-vite-tjzm6p/test.ts:5:6: ERROR: Expected identifier but found "import"
file: C:/Downloads/vitejs-vite-tjzm6p/test.ts:5:6

Expected identifier but found "import"
3  |
4  |  // The following produces an esbuild error
5  |  const import = 5;
   |        ^
6  |
7  |

    at failureErrorWithLog (C:\Downloads\vitejs-vite-tjzm6p\node_modules\esbuild\lib\main.js:1651:15)
    at C:\\Downloads\vitejs-vite-tjzm6p\node_modules\esbuild\lib\main.js:849:29
    at responseCallbacks.<computed> (C:\Downloads\vitejs-vite-tjzm6p\node_modules\esbuild\lib\main.js:704:9)      
    at handleIncomingPacket (C:\Downloads\vitejs-vite-tjzm6p\node_modules\esbuild\lib\main.js:764:9)
    at Socket.readFromStdout (C:\Downloads\vitejs-vite-tjzm6p\node_modules\esbuild\lib\main.js:680:7)
    at Socket.emit (node:events:517:28)
    at addChunk (node:internal/streams/readable:368:12)
    at readableAddChunk (node:internal/streams/readable:341:9)
    at Readable.push (node:internal/streams/readable:278:10)
    at Pipe.onStreamRead (node:internal/stream_base_commons:190:23)

fixes #16539

Copy link

stackblitz bot commented Apr 27, 2024

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@bluwy bluwy added the p3-minor-bug An edge case that only affects very specific usage (priority) label Apr 29, 2024
The code which modified the error message to have additional context about the module id
and code frame where the error originated was relying on the error's stack having never
been accessed prior to modifying the error's message. At some point, this no longer was
true for Rollup errors, and no context information was being displayed as a result other
than the stack trace within the rollup library that doesn't make it clear what or where
the problem is.

This PR changes the code that add's the id and code-frame context to the error message
to also modify the error's stack. To do so, it attempts to extract the original stack
trace by removing the existing error message from error.stack if it matches, and
otherwise falls back to just displaying the stack trace with its own message since it
varies from the error.message.

Some additional normalization was done to the error.frame field if it exists to ensure
that consistent padding is used in the error output. This is because the rollup code-
frame doesn't have new-lines around it, but the esbuild one does.

Fixes vitejs#16539
@patak-dev
Copy link
Member

/ecosystem-ci run

@vite-ecosystem-ci
Copy link

@thebanjomatic
Copy link
Contributor Author

Let me know if there is anything left to address here after the ecosystem run. I'm still eager to get this change merged.

@vite-ecosystem-ci
Copy link

@bluwy
Copy link
Member

bluwy commented May 9, 2024

Looks like Nuxt fail earlier was a fluke. The others were already failing.

@bluwy bluwy merged commit 22dc196 into vitejs:main May 9, 2024
11 checks passed
@thebanjomatic thebanjomatic deleted the fix/error-logging branch July 19, 2024 19:10
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 15, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.0 |


##### [\`v5.4.0\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)
##### [\`v5.3.5\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)
##### [\`v5.3.4\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)
##### [\`v5.3.3\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)
##### [\`v5.3.2\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)
##### [\`v5.3.1\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)
##### [\`v5.3.0\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)
##### [\`v5.2.13\`](https://github.com/vitejs/vite/releases/tag/v5.2.13)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v5.2.13/packages/vite/CHANGELOG.md) for details.
##### [\`v5.2.12\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)
##### [\`v5.2.11\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)
##### [\`v5.2.10\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)
##### [\`v5.2.9\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)
##### [\`v5.2.8\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)
##### [\`v5.2.7\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 15, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.0 |


##### [\`v5.4.0\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)
##### [\`v5.3.5\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)
##### [\`v5.3.4\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)
##### [\`v5.3.3\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)
##### [\`v5.3.2\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)
##### [\`v5.3.1\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)
##### [\`v5.3.0\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)
##### [\`v5.2.13\`](https://github.com/vitejs/vite/releases/tag/v5.2.13)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v5.2.13/packages/vite/CHANGELOG.md) for details.
##### [\`v5.2.12\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)
##### [\`v5.2.11\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)
##### [\`v5.2.10\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)
##### [\`v5.2.9\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)
##### [\`v5.2.8\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)
##### [\`v5.2.7\`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 15, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.0 |


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 15, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.0 |


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 16, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.1 |


## [v5.4.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small541-2024-08-15-small)

-   fix: `build.modulePreload.resolveDependencies` is optimizable ([#16083](vitejs/vite#16083)) ([e961b31](vitejs/vite@e961b31)), closes [#16083](vitejs/vite#16083)
-   fix: align CorsOptions.origin type with [@types/cors](https://github.com/types/cors) ([#17836](vitejs/vite#17836)) ([1bda847](vitejs/vite@1bda847)), closes [#17836](vitejs/vite#17836)
-   fix: typings for vite:preloadError ([#17868](vitejs/vite#17868)) ([6700594](vitejs/vite@6700594)), closes [#17868](vitejs/vite#17868)
-   fix(build): avoid re-define `__vite_import_meta_env__` ([#17876](vitejs/vite#17876)) ([e686d74](vitejs/vite@e686d74)), closes [#17876](vitejs/vite#17876)
-   fix(deps): update all non-major dependencies ([#17869](vitejs/vite#17869)) ([d11711c](vitejs/vite@d11711c)), closes [#17869](vitejs/vite#17869)
-   fix(lightningcss): search for assets with correct base path ([#17856](vitejs/vite#17856)) ([4e5ce3c](vitejs/vite@4e5ce3c)), closes [#17856](vitejs/vite#17856)
-   fix(worker): handle self reference url worker in dependency for build ([#17846](vitejs/vite#17846)) ([391bb49](vitejs/vite@391bb49)), closes [#17846](vitejs/vite#17846)
-   chore: fix picocolors import for local dev ([#17884](vitejs/vite#17884)) ([9018255](vitejs/vite@9018255)), closes [#17884](vitejs/vite#17884)
-   refactor: remove `handleHotUpdate` from watch-package-data plugin ([#17865](vitejs/vite#17865)) ([e16bf1f](vitejs/vite@e16bf1f)), closes [#17865](vitejs/vite#17865)


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 17, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.1 |


## [v5.4.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small541-2024-08-15-small)

-   fix: `build.modulePreload.resolveDependencies` is optimizable ([#16083](vitejs/vite#16083)) ([e961b31](vitejs/vite@e961b31)), closes [#16083](vitejs/vite#16083)
-   fix: align CorsOptions.origin type with [@types/cors](https://github.com/types/cors) ([#17836](vitejs/vite#17836)) ([1bda847](vitejs/vite@1bda847)), closes [#17836](vitejs/vite#17836)
-   fix: typings for vite:preloadError ([#17868](vitejs/vite#17868)) ([6700594](vitejs/vite@6700594)), closes [#17868](vitejs/vite#17868)
-   fix(build): avoid re-define `__vite_import_meta_env__` ([#17876](vitejs/vite#17876)) ([e686d74](vitejs/vite@e686d74)), closes [#17876](vitejs/vite#17876)
-   fix(deps): update all non-major dependencies ([#17869](vitejs/vite#17869)) ([d11711c](vitejs/vite@d11711c)), closes [#17869](vitejs/vite#17869)
-   fix(lightningcss): search for assets with correct base path ([#17856](vitejs/vite#17856)) ([4e5ce3c](vitejs/vite@4e5ce3c)), closes [#17856](vitejs/vite#17856)
-   fix(worker): handle self reference url worker in dependency for build ([#17846](vitejs/vite#17846)) ([391bb49](vitejs/vite@391bb49)), closes [#17846](vitejs/vite#17846)
-   chore: fix picocolors import for local dev ([#17884](vitejs/vite#17884)) ([9018255](vitejs/vite@9018255)), closes [#17884](vitejs/vite#17884)
-   refactor: remove `handleHotUpdate` from watch-package-data plugin ([#17865](vitejs/vite#17865)) ([e16bf1f](vitejs/vite@e16bf1f)), closes [#17865](vitejs/vite#17865)


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 18, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.1 |


## [v5.4.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small541-2024-08-15-small)

-   fix: `build.modulePreload.resolveDependencies` is optimizable ([#16083](vitejs/vite#16083)) ([e961b31](vitejs/vite@e961b31)), closes [#16083](vitejs/vite#16083)
-   fix: align CorsOptions.origin type with [@types/cors](https://github.com/types/cors) ([#17836](vitejs/vite#17836)) ([1bda847](vitejs/vite@1bda847)), closes [#17836](vitejs/vite#17836)
-   fix: typings for vite:preloadError ([#17868](vitejs/vite#17868)) ([6700594](vitejs/vite@6700594)), closes [#17868](vitejs/vite#17868)
-   fix(build): avoid re-define `__vite_import_meta_env__` ([#17876](vitejs/vite#17876)) ([e686d74](vitejs/vite@e686d74)), closes [#17876](vitejs/vite#17876)
-   fix(deps): update all non-major dependencies ([#17869](vitejs/vite#17869)) ([d11711c](vitejs/vite@d11711c)), closes [#17869](vitejs/vite#17869)
-   fix(lightningcss): search for assets with correct base path ([#17856](vitejs/vite#17856)) ([4e5ce3c](vitejs/vite@4e5ce3c)), closes [#17856](vitejs/vite#17856)
-   fix(worker): handle self reference url worker in dependency for build ([#17846](vitejs/vite#17846)) ([391bb49](vitejs/vite@391bb49)), closes [#17846](vitejs/vite#17846)
-   chore: fix picocolors import for local dev ([#17884](vitejs/vite#17884)) ([9018255](vitejs/vite@9018255)), closes [#17884](vitejs/vite#17884)
-   refactor: remove `handleHotUpdate` from watch-package-data plugin ([#17865](vitejs/vite#17865)) ([e16bf1f](vitejs/vite@e16bf1f)), closes [#17865](vitejs/vite#17865)


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 19, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.1 |


## [v5.4.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small541-2024-08-15-small)

-   fix: `build.modulePreload.resolveDependencies` is optimizable ([#16083](vitejs/vite#16083)) ([e961b31](vitejs/vite@e961b31)), closes [#16083](vitejs/vite#16083)
-   fix: align CorsOptions.origin type with [@types/cors](https://github.com/types/cors) ([#17836](vitejs/vite#17836)) ([1bda847](vitejs/vite@1bda847)), closes [#17836](vitejs/vite#17836)
-   fix: typings for vite:preloadError ([#17868](vitejs/vite#17868)) ([6700594](vitejs/vite@6700594)), closes [#17868](vitejs/vite#17868)
-   fix(build): avoid re-define `__vite_import_meta_env__` ([#17876](vitejs/vite#17876)) ([e686d74](vitejs/vite@e686d74)), closes [#17876](vitejs/vite#17876)
-   fix(deps): update all non-major dependencies ([#17869](vitejs/vite#17869)) ([d11711c](vitejs/vite@d11711c)), closes [#17869](vitejs/vite#17869)
-   fix(lightningcss): search for assets with correct base path ([#17856](vitejs/vite#17856)) ([4e5ce3c](vitejs/vite@4e5ce3c)), closes [#17856](vitejs/vite#17856)
-   fix(worker): handle self reference url worker in dependency for build ([#17846](vitejs/vite#17846)) ([391bb49](vitejs/vite@391bb49)), closes [#17846](vitejs/vite#17846)
-   chore: fix picocolors import for local dev ([#17884](vitejs/vite#17884)) ([9018255](vitejs/vite@9018255)), closes [#17884](vitejs/vite#17884)
-   refactor: remove `handleHotUpdate` from watch-package-data plugin ([#17865](vitejs/vite#17865)) ([e16bf1f](vitejs/vite@e16bf1f)), closes [#17865](vitejs/vite#17865)


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 21, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.2 |


## [v5.4.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small542-2024-08-20-small)

-   chore: remove stale TODOs ([#17866](vitejs/vite#17866)) ([e012f29](vitejs/vite@e012f29)), closes [#17866](vitejs/vite#17866)
-   refactor: remove redundant prepend/strip base ([#17887](vitejs/vite#17887)) ([3b8f03d](vitejs/vite@3b8f03d)), closes [#17887](vitejs/vite#17887)
-   fix: resolve relative URL generated by `renderBuiltUrl` passed to module preload ([#16084](vitejs/vite#16084)) ([fac3a8e](vitejs/vite@fac3a8e)), closes [#16084](vitejs/vite#16084)
-   feat: support originalFilename ([#17867](vitejs/vite#17867)) ([7d8c0e2](vitejs/vite@7d8c0e2)), closes [#17867](vitejs/vite#17867)


## [v5.4.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small541-2024-08-15-small)

-   fix: `build.modulePreload.resolveDependencies` is optimizable ([#16083](vitejs/vite#16083)) ([e961b31](vitejs/vite@e961b31)), closes [#16083](vitejs/vite#16083)
-   fix: align CorsOptions.origin type with [@types/cors](https://github.com/types/cors) ([#17836](vitejs/vite#17836)) ([1bda847](vitejs/vite@1bda847)), closes [#17836](vitejs/vite#17836)
-   fix: typings for vite:preloadError ([#17868](vitejs/vite#17868)) ([6700594](vitejs/vite@6700594)), closes [#17868](vitejs/vite#17868)
-   fix(build): avoid re-define `__vite_import_meta_env__` ([#17876](vitejs/vite#17876)) ([e686d74](vitejs/vite@e686d74)), closes [#17876](vitejs/vite#17876)
-   fix(deps): update all non-major dependencies ([#17869](vitejs/vite#17869)) ([d11711c](vitejs/vite@d11711c)), closes [#17869](vitejs/vite#17869)
-   fix(lightningcss): search for assets with correct base path ([#17856](vitejs/vite#17856)) ([4e5ce3c](vitejs/vite@4e5ce3c)), closes [#17856](vitejs/vite#17856)
-   fix(worker): handle self reference url worker in dependency for build ([#17846](vitejs/vite#17846)) ([391bb49](vitejs/vite@391bb49)), closes [#17846](vitejs/vite#17846)
-   chore: fix picocolors import for local dev ([#17884](vitejs/vite#17884)) ([9018255](vitejs/vite@9018255)), closes [#17884](vitejs/vite#17884)
-   refactor: remove `handleHotUpdate` from watch-package-data plugin ([#17865](vitejs/vite#17865)) ([e16bf1f](vitejs/vite@e16bf1f)), closes [#17865](vitejs/vite#17865)


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 23, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.2 |


## [v5.4.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small542-2024-08-20-small)

-   chore: remove stale TODOs ([#17866](vitejs/vite#17866)) ([e012f29](vitejs/vite@e012f29)), closes [#17866](vitejs/vite#17866)
-   refactor: remove redundant prepend/strip base ([#17887](vitejs/vite#17887)) ([3b8f03d](vitejs/vite@3b8f03d)), closes [#17887](vitejs/vite#17887)
-   fix: resolve relative URL generated by `renderBuiltUrl` passed to module preload ([#16084](vitejs/vite#16084)) ([fac3a8e](vitejs/vite@fac3a8e)), closes [#16084](vitejs/vite#16084)
-   feat: support originalFilename ([#17867](vitejs/vite#17867)) ([7d8c0e2](vitejs/vite@7d8c0e2)), closes [#17867](vitejs/vite#17867)


## [v5.4.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small541-2024-08-15-small)

-   fix: `build.modulePreload.resolveDependencies` is optimizable ([#16083](vitejs/vite#16083)) ([e961b31](vitejs/vite@e961b31)), closes [#16083](vitejs/vite#16083)
-   fix: align CorsOptions.origin type with [@types/cors](https://github.com/types/cors) ([#17836](vitejs/vite#17836)) ([1bda847](vitejs/vite@1bda847)), closes [#17836](vitejs/vite#17836)
-   fix: typings for vite:preloadError ([#17868](vitejs/vite#17868)) ([6700594](vitejs/vite@6700594)), closes [#17868](vitejs/vite#17868)
-   fix(build): avoid re-define `__vite_import_meta_env__` ([#17876](vitejs/vite#17876)) ([e686d74](vitejs/vite@e686d74)), closes [#17876](vitejs/vite#17876)
-   fix(deps): update all non-major dependencies ([#17869](vitejs/vite#17869)) ([d11711c](vitejs/vite@d11711c)), closes [#17869](vitejs/vite#17869)
-   fix(lightningcss): search for assets with correct base path ([#17856](vitejs/vite#17856)) ([4e5ce3c](vitejs/vite@4e5ce3c)), closes [#17856](vitejs/vite#17856)
-   fix(worker): handle self reference url worker in dependency for build ([#17846](vitejs/vite#17846)) ([391bb49](vitejs/vite@391bb49)), closes [#17846](vitejs/vite#17846)
-   chore: fix picocolors import for local dev ([#17884](vitejs/vite#17884)) ([9018255](vitejs/vite@9018255)), closes [#17884](vitejs/vite#17884)
-   refactor: remove `handleHotUpdate` from watch-package-data plugin ([#17865](vitejs/vite#17865)) ([e16bf1f](vitejs/vite@e16bf1f)), closes [#17865](vitejs/vite#17865)


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 24, 2024
| datasource | package | from  | to    |
| ---------- | ------- | ----- | ----- |
| npm        | vite    | 5.2.6 | 5.4.2 |


## [v5.4.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small542-2024-08-20-small)

-   chore: remove stale TODOs ([#17866](vitejs/vite#17866)) ([e012f29](vitejs/vite@e012f29)), closes [#17866](vitejs/vite#17866)
-   refactor: remove redundant prepend/strip base ([#17887](vitejs/vite#17887)) ([3b8f03d](vitejs/vite@3b8f03d)), closes [#17887](vitejs/vite#17887)
-   fix: resolve relative URL generated by `renderBuiltUrl` passed to module preload ([#16084](vitejs/vite#16084)) ([fac3a8e](vitejs/vite@fac3a8e)), closes [#16084](vitejs/vite#16084)
-   feat: support originalFilename ([#17867](vitejs/vite#17867)) ([7d8c0e2](vitejs/vite@7d8c0e2)), closes [#17867](vitejs/vite#17867)


## [v5.4.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small541-2024-08-15-small)

-   fix: `build.modulePreload.resolveDependencies` is optimizable ([#16083](vitejs/vite#16083)) ([e961b31](vitejs/vite@e961b31)), closes [#16083](vitejs/vite#16083)
-   fix: align CorsOptions.origin type with [@types/cors](https://github.com/types/cors) ([#17836](vitejs/vite#17836)) ([1bda847](vitejs/vite@1bda847)), closes [#17836](vitejs/vite#17836)
-   fix: typings for vite:preloadError ([#17868](vitejs/vite#17868)) ([6700594](vitejs/vite@6700594)), closes [#17868](vitejs/vite#17868)
-   fix(build): avoid re-define `__vite_import_meta_env__` ([#17876](vitejs/vite#17876)) ([e686d74](vitejs/vite@e686d74)), closes [#17876](vitejs/vite#17876)
-   fix(deps): update all non-major dependencies ([#17869](vitejs/vite#17869)) ([d11711c](vitejs/vite@d11711c)), closes [#17869](vitejs/vite#17869)
-   fix(lightningcss): search for assets with correct base path ([#17856](vitejs/vite#17856)) ([4e5ce3c](vitejs/vite@4e5ce3c)), closes [#17856](vitejs/vite#17856)
-   fix(worker): handle self reference url worker in dependency for build ([#17846](vitejs/vite#17846)) ([391bb49](vitejs/vite@391bb49)), closes [#17846](vitejs/vite#17846)
-   chore: fix picocolors import for local dev ([#17884](vitejs/vite#17884)) ([9018255](vitejs/vite@9018255)), closes [#17884](vitejs/vite#17884)
-   refactor: remove `handleHotUpdate` from watch-package-data plugin ([#17865](vitejs/vite#17865)) ([e16bf1f](vitejs/vite@e16bf1f)), closes [#17865](vitejs/vite#17865)


## [v5.4.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#540-2024-08-07)

-   fix(build): windows platform build output path error ([#17818](vitejs/vite#17818)) ([6ae0615](vitejs/vite@6ae0615)), closes [#17818](vitejs/vite#17818)
-   fix(deps): update launch-editor to consume fix for windows paths ([#17828](vitejs/vite#17828)) ([cf2f90d](vitejs/vite@cf2f90d)), closes [#17828](vitejs/vite#17828)
-   fix(ssr): fix `global` variable name conflict ([#17809](vitejs/vite#17809)) ([6aa2206](vitejs/vite@6aa2206)), closes [#17809](vitejs/vite#17809)
-   fix(worker): fix `importScripts` injection breaking iife code ([#17827](vitejs/vite#17827)) ([bb4ba9f](vitejs/vite@bb4ba9f)), closes [#17827](vitejs/vite#17827)
-   chore: bump typescript-eslint to v8 ([#17624](vitejs/vite#17624)) ([d1891fd](vitejs/vite@d1891fd)), closes [#17624](vitejs/vite#17624)
-   chore(deps): update all non-major dependencies ([#17820](vitejs/vite#17820)) ([bb2f8bb](vitejs/vite@bb2f8bb)), closes [#17820](vitejs/vite#17820)
-   perf(ssr): do a single-pass over AST with node cache arrays ([#17812](vitejs/vite#17812)) ([81327eb](vitejs/vite@81327eb)), closes [#17812](vitejs/vite#17812)


## [v5.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small535-2024-07-25-small)

-   refactor(asset): remove rollup 3 public file watch workaround ([#16331](vitejs/vite#16331)) ([66bdb1d](vitejs/vite@66bdb1d)), closes [#16331](vitejs/vite#16331)
-   fix: make `server` type less restrictive (fix [#17627](vitejs/vite#17627)) ([#17628](vitejs/vite#17628)) ([b55c32f](vitejs/vite@b55c32f)), closes [#17627](vitejs/vite#17627) [#17628](vitejs/vite#17628)
-   fix: show error if vite client cannot be loaded ([#17419](vitejs/vite#17419)) ([db5ab1d](vitejs/vite@db5ab1d)), closes [#17419](vitejs/vite#17419)
-   fix(build): env output is not stable ([#17748](vitejs/vite#17748)) ([b240a83](vitejs/vite@b240a83)), closes [#17748](vitejs/vite#17748)
-   fix(client): fix vite error path ([#17744](vitejs/vite#17744)) ([3c1bde3](vitejs/vite@3c1bde3)), closes [#17744](vitejs/vite#17744)
-   fix(css): resolve url aliases with fragments (fix: [#17690](vitejs/vite#17690)) ([#17691](vitejs/vite#17691)) ([d906d3f](vitejs/vite@d906d3f))
-   fix(deps): update all non-major dependencies ([#17629](vitejs/vite#17629)) ([93281b0](vitejs/vite@93281b0)), closes [#17629](vitejs/vite#17629)
-   fix(importMetaGlob): handle alias that starts with hash ([#17743](vitejs/vite#17743)) ([b58b423](vitejs/vite@b58b423)), closes [#17743](vitejs/vite#17743)
-   fix(ssrTransform): sourcemaps with multiple sources ([#17677](vitejs/vite#17677)) ([f321fa8](vitejs/vite@f321fa8)), closes [#17677](vitejs/vite#17677)
-   chore: extend commit hash ([#17709](vitejs/vite#17709)) ([4fc9b64](vitejs/vite@4fc9b64)), closes [#17709](vitejs/vite#17709)
-   chore(deps): update all non-major dependencies ([#17734](vitejs/vite#17734)) ([9983731](vitejs/vite@9983731)), closes [#17734](vitejs/vite#17734)
-   chore(deps): update typescript ([#17699](vitejs/vite#17699)) ([df5ceb3](vitejs/vite@df5ceb3)), closes [#17699](vitejs/vite#17699)
-   revert: fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([#17729](vitejs/vite#17729)) ([f4f488f](vitejs/vite@f4f488f)), closes [#16581](vitejs/vite#16581) [#17729](vitejs/vite#17729)


## [v5.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small534-2024-07-16-small)

-   fix: update Terser type definitions (fix [#17668](vitejs/vite#17668)) ([#17669](vitejs/vite#17669)) ([b723a75](vitejs/vite@b723a75)), closes [#17668](vitejs/vite#17668) [#17669](vitejs/vite#17669)
-   fix(build): skip preload treeshaking for nested braces ([#17687](vitejs/vite#17687)) ([4be96b4](vitejs/vite@4be96b4)), closes [#17687](vitejs/vite#17687)
-   fix(css): include `.css?url` in assets field of manifest ([#17623](vitejs/vite#17623)) ([1465b20](vitejs/vite@1465b20)), closes [#17623](vitejs/vite#17623)
-   fix(worker): nested inlined worker always fallbacked to data URI worker instead of using blob worker ([07bc489](vitejs/vite@07bc489)), closes [#17509](vitejs/vite#17509)
-   refactor: replace includes with logical operations ([#17620](vitejs/vite#17620)) ([c4a2227](vitejs/vite@c4a2227)), closes [#17620](vitejs/vite#17620)
-   chore: add callback to http-proxy.d.ts jsdoc ([#17646](vitejs/vite#17646)) ([d8a5d70](vitejs/vite@d8a5d70)), closes [#17646](vitejs/vite#17646)


## [v5.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small533-2024-07-03-small)

-   fix: lazily evaluate \__vite\_\_mapDeps files ([#17602](vitejs/vite#17602)) ([dafff4a](vitejs/vite@dafff4a)), closes [#17602](vitejs/vite#17602)
-   fix(deps): update all non-major dependencies ([#17590](vitejs/vite#17590)) ([012490c](vitejs/vite@012490c)), closes [#17590](vitejs/vite#17590)
-   fix(lib): remove pure CSS dynamic import ([#17601](vitejs/vite#17601)) ([055f1c1](vitejs/vite@055f1c1)), closes [#17601](vitejs/vite#17601)
-   fix(proxy): replace changeOrigin changes in 5.3.0 with new rewriteWsOrigin option ([#17563](vitejs/vite#17563)) ([14c3d49](vitejs/vite@14c3d49)), closes [#17563](vitejs/vite#17563)


## [v5.3.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small532-2024-06-27-small)

-   fix(client): uniform variable `location` ([#17528](vitejs/vite#17528)) ([a8e2f6f](vitejs/vite@a8e2f6f)), closes [#17528](vitejs/vite#17528)
-   fix(deps): update all non-major dependencies ([#17494](vitejs/vite#17494)) ([bf123f2](vitejs/vite@bf123f2)), closes [#17494](vitejs/vite#17494)
-   fix(typescript): correctly expand ${configDir} in tsconfig.json ([#17576](vitejs/vite#17576)) ([24c799b](vitejs/vite@24c799b)), closes [#17576](vitejs/vite#17576)
-   chore: fix some comments ([#17495](vitejs/vite#17495)) ([ec16a5e](vitejs/vite@ec16a5e)), closes [#17495](vitejs/vite#17495)
-   chore(deps): update all non-major dependencies ([#17553](vitejs/vite#17553)) ([a33a97f](vitejs/vite@a33a97f)), closes [#17553](vitejs/vite#17553)
-   chore(deps): update dependency eslint to v9 ([#16661](vitejs/vite#16661)) ([6c10662](vitejs/vite@6c10662)), closes [#16661](vitejs/vite#16661)
-   chore(deps): update es-module-lexer to 1.5.4 ([#17555](vitejs/vite#17555)) ([2d6672f](vitejs/vite@2d6672f)), closes [#17555](vitejs/vite#17555)
-   refactor(optimizer): use early continues ([#17551](vitejs/vite#17551)) ([7c06ef0](vitejs/vite@7c06ef0)), closes [#17551](vitejs/vite#17551)


## [v5.3.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small531-2024-06-14-small)

-   fix(build): handle preload treeshaking for braces ([#17479](vitejs/vite#17479)) ([d355568](vitejs/vite@d355568)), closes [#17479](vitejs/vite#17479)
-   fix(build): handle preload treeshaking for commas ([#17472](vitejs/vite#17472)) ([3e27071](vitejs/vite@3e27071)), closes [#17472](vitejs/vite#17472)
-   fix(build): preload treeshaking ignore equal ([#17480](vitejs/vite#17480)) ([6ced135](vitejs/vite@6ced135)), closes [#17480](vitejs/vite#17480)
-   chore: consolidate changelog for 5.3 ([#17476](vitejs/vite#17476)) ([1f09344](vitejs/vite@1f09344)), closes [#17476](vitejs/vite#17476)


## [v5.3.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#530-2024-06-13)

-   fix: typo in client log ([#17363](vitejs/vite#17363)) ([68aa9f8](vitejs/vite@68aa9f8)), closes [#17363](vitejs/vite#17363)
-   fix(ssrTransform): handle arbitrary module namespace identifiers ([#17446](vitejs/vite#17446)) ([0a76652](vitejs/vite@0a76652)), closes [#17446](vitejs/vite#17446)
-   test: disable isolate for unit test ([#17448](vitejs/vite#17448)) ([f16fae5](vitejs/vite@f16fae5)), closes [#17448](vitejs/vite#17448)
-   feat: asset type add bmp ([#17439](vitejs/vite#17439)) ([ec287f8](vitejs/vite@ec287f8)), closes [#17439](vitejs/vite#17439)


## [v5.2.13](https://github.com/vitejs/vite/releases/tag/v5.2.13)

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


## [v5.2.12](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5212-2024-05-28-small)

-   chore: move to eslint flat config ([#16743](vitejs/vite#16743)) ([8f16765](vitejs/vite@8f16765)), closes [#16743](vitejs/vite#16743)
-   chore(deps): remove unused deps ([#17329](vitejs/vite#17329)) ([5a45745](vitejs/vite@5a45745)), closes [#17329](vitejs/vite#17329)
-   chore(deps): update all non-major dependencies ([#16722](vitejs/vite#16722)) ([b45922a](vitejs/vite@b45922a)), closes [#16722](vitejs/vite#16722)
-   fix: mention `build.rollupOptions.output.manualChunks` instead of  `build.rollupOutput.manualChunks` ([89378c0](vitejs/vite@89378c0)), closes [#16721](vitejs/vite#16721)
-   fix(build): make SystemJSWrapRE match lazy ([#16633](vitejs/vite#16633)) ([6583ad2](vitejs/vite@6583ad2)), closes [#16633](vitejs/vite#16633)
-   fix(css): avoid generating empty JS files when JS files becomes empty but has CSS files imported ([#1](vitejs/vite#1) ([95fe5a7](vitejs/vite@95fe5a7)), closes [#16078](vitejs/vite#16078)
-   fix(css): handle lightningcss compiled css in Deno ([#17301](vitejs/vite#17301)) ([8e4e932](vitejs/vite@8e4e932)), closes [#17301](vitejs/vite#17301)
-   fix(css): only use files the current bundle contains ([#16684](vitejs/vite#16684)) ([15a6ebb](vitejs/vite@15a6ebb)), closes [#16684](vitejs/vite#16684)
-   fix(css): page reload was not happening with .css?raw ([#16455](vitejs/vite#16455)) ([8041846](vitejs/vite@8041846)), closes [#16455](vitejs/vite#16455)
-   fix(deps): update all non-major dependencies ([#16603](vitejs/vite#16603)) ([6711553](vitejs/vite@6711553)), closes [#16603](vitejs/vite#16603)
-   fix(deps): update all non-major dependencies ([#16660](vitejs/vite#16660)) ([bf2f014](vitejs/vite@bf2f014)), closes [#16660](vitejs/vite#16660)
-   fix(deps): update all non-major dependencies ([#17321](vitejs/vite#17321)) ([4a89766](vitejs/vite@4a89766)), closes [#17321](vitejs/vite#17321)
-   fix(error-logging): rollup errors weren't displaying id and codeframe ([#16540](vitejs/vite#16540)) ([22dc196](vitejs/vite@22dc196)), closes [#16540](vitejs/vite#16540)
-   fix(hmr): normalize the path info ([#14255](vitejs/vite#14255)) ([6a085d0](vitejs/vite@6a085d0)), closes [#14255](vitejs/vite#14255)
-   fix(hmr): trigger page reload when calling invalidate on root module ([#16636](vitejs/vite#16636)) ([2b61cc3](vitejs/vite@2b61cc3)), closes [#16636](vitejs/vite#16636)
-   fix(logger): truncate log over 5000 characters long ([#16581](vitejs/vite#16581)) ([b0b839a](vitejs/vite@b0b839a)), closes [#16581](vitejs/vite#16581)
-   fix(optimizer): log dependencies added by plugins ([#16729](vitejs/vite#16729)) ([f0fb987](vitejs/vite@f0fb987)), closes [#16729](vitejs/vite#16729)
-   fix(sourcemap): improve sourcemap compatibility for vue2 ([#16594](vitejs/vite#16594)) ([913c040](vitejs/vite@913c040)), closes [#16594](vitejs/vite#16594)
-   docs: correct proxy shorthand example ([#15938](vitejs/vite#15938)) ([abf766e](vitejs/vite@abf766e)), closes [#15938](vitejs/vite#15938)
-   docs: deprecate server.hot ([#16741](vitejs/vite#16741)) ([e7d38ab](vitejs/vite@e7d38ab)), closes [#16741](vitejs/vite#16741)


## [v5.2.11](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5211-2024-05-02-small)

-   feat: improve dynamic import variable failure error message ([#16519](vitejs/vite#16519)) ([f8feeea](vitejs/vite@f8feeea)), closes [#16519](vitejs/vite#16519)
-   fix: dynamic-import-vars plugin normalize path issue ([#16518](vitejs/vite#16518)) ([f71ba5b](vitejs/vite@f71ba5b)), closes [#16518](vitejs/vite#16518)
-   fix: scripts and styles were missing from built HTML on Windows ([#16421](vitejs/vite#16421)) ([0e93f58](vitejs/vite@0e93f58)), closes [#16421](vitejs/vite#16421)
-   fix(deps): update all non-major dependencies ([#16488](vitejs/vite#16488)) ([2d50be2](vitejs/vite@2d50be2)), closes [#16488](vitejs/vite#16488)
-   fix(deps): update all non-major dependencies ([#16549](vitejs/vite#16549)) ([2d6a13b](vitejs/vite@2d6a13b)), closes [#16549](vitejs/vite#16549)
-   fix(dev): watch publicDir explicitly to include it outside the root ([#16502](vitejs/vite#16502)) ([4d83eb5](vitejs/vite@4d83eb5)), closes [#16502](vitejs/vite#16502)
-   fix(preload): skip preload for non-static urls ([#16556](vitejs/vite#16556)) ([bb79c9b](vitejs/vite@bb79c9b)), closes [#16556](vitejs/vite#16556)
-   fix(ssr): handle class declaration and expression name scoping ([#16569](vitejs/vite#16569)) ([c071eb3](vitejs/vite@c071eb3)), closes [#16569](vitejs/vite#16569)
-   fix(ssr): handle function expression name scoping ([#16563](vitejs/vite#16563)) ([02db947](vitejs/vite@02db947)), closes [#16563](vitejs/vite#16563)


## [v5.2.10](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small5210-2024-04-20-small)

-   revert: perf: use workspace root for fs cache ([#15712](vitejs/vite#15712)) ([#16476](vitejs/vite#16476)) ([77e7359](vitejs/vite@77e7359)), closes [#15712](vitejs/vite#15712) [#16476](vitejs/vite#16476)
-   fix: add base to virtual html ([#16442](vitejs/vite#16442)) ([721f94d](vitejs/vite@721f94d)), closes [#16442](vitejs/vite#16442)
-   fix: adjust esm syntax judgment logic ([#16436](vitejs/vite#16436)) ([af72eab](vitejs/vite@af72eab)), closes [#16436](vitejs/vite#16436)
-   fix: don't add outDirs to watch.ignored if emptyOutDir is false ([#16453](vitejs/vite#16453)) ([6a127d6](vitejs/vite@6a127d6)), closes [#16453](vitejs/vite#16453)
-   fix(cspNonce): don't overwrite existing nonce values ([#16415](vitejs/vite#16415)) ([b872635](vitejs/vite@b872635)), closes [#16415](vitejs/vite#16415)
-   feat: show warning if root is in build.outDir ([#16454](vitejs/vite#16454)) ([11444dc](vitejs/vite@11444dc)), closes [#16454](vitejs/vite#16454)
-   feat: write cspNonce to style tags ([#16419](vitejs/vite#16419)) ([8e54bbd](vitejs/vite@8e54bbd)), closes [#16419](vitejs/vite#16419)
-   chore(deps): update dependency eslint-plugin-n to v17 ([#16381](vitejs/vite#16381)) ([6cccef7](vitejs/vite@6cccef7)), closes [#16381](vitejs/vite#16381)


## [v5.2.9](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small529-2024-04-15-small)

-   fix: `fsp.rm` removing files does not take effect ([#16032](vitejs/vite#16032)) ([b05c405](vitejs/vite@b05c405)), closes [#16032](vitejs/vite#16032)
-   fix: fix accumulated stacks in error overlay ([#16393](vitejs/vite#16393)) ([102c2fd](vitejs/vite@102c2fd)), closes [#16393](vitejs/vite#16393)
-   fix(deps): update all non-major dependencies ([#16376](vitejs/vite#16376)) ([58a2938](vitejs/vite@58a2938)), closes [#16376](vitejs/vite#16376)
-   chore: update region comment ([#16380](vitejs/vite#16380)) ([77562c3](vitejs/vite@77562c3)), closes [#16380](vitejs/vite#16380)
-   perf: reduce size of injected \__vite\_\_mapDeps code ([#16184](vitejs/vite#16184)) ([c0ec6be](vitejs/vite@c0ec6be)), closes [#16184](vitejs/vite#16184)
-   perf(css): only replace empty chunk if imported ([#16349](vitejs/vite#16349)) ([e2658ad](vitejs/vite@e2658ad)), closes [#16349](vitejs/vite#16349)


## [v5.2.8](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small528-2024-04-03-small)

-   fix: csp nonce injection when no closing tag ([#16281](vitejs/vite#16281)) ([#16282](vitejs/vite#16282)) ([3c85c6b](vitejs/vite@3c85c6b)), closes [#16281](vitejs/vite#16281) [#16282](vitejs/vite#16282)
-   fix: do not access document in `/@vite/client` when not defined ([#16318](vitejs/vite#16318)) ([646319c](vitejs/vite@646319c)), closes [#16318](vitejs/vite#16318)
-   fix: fix sourcemap when using object as `define` value  ([#15805](vitejs/vite#15805)) ([445c4f2](vitejs/vite@445c4f2)), closes [#15805](vitejs/vite#15805)
-   fix(css): unknown file error happened with lightningcss ([#16306](vitejs/vite#16306)) ([01af308](vitejs/vite@01af308)), closes [#16306](vitejs/vite#16306)
-   fix(hmr): multiple updates happened when invalidate is called while multiple tabs open ([#16307](vitejs/vite#16307)) ([21cc10b](vitejs/vite@21cc10b)), closes [#16307](vitejs/vite#16307)
-   fix(scanner): duplicate modules for same id if glob is used in html-like types ([#16305](vitejs/vite#16305)) ([eca68fa](vitejs/vite@eca68fa)), closes [#16305](vitejs/vite#16305)
-   chore(deps): update all non-major dependencies ([#16325](vitejs/vite#16325)) ([a78e265](vitejs/vite@a78e265)), closes [#16325](vitejs/vite#16325)
-   refactor: use types from sass instead of [@types/sass](https://github.com/types/sass) ([#16340](vitejs/vite#16340)) ([4581e83](vitejs/vite@4581e83)), closes [#16340](vitejs/vite#16340)


## [v5.2.7](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small527-2024-03-29-small)

-   chore: deprecate splitVendorChunkPlugin ([#16274](vitejs/vite#16274)) ([45a06da](vitejs/vite@45a06da)), closes [#16274](vitejs/vite#16274)
-   fix: skip injecting `__vite__mapDeps` when it's not used ([#16271](vitejs/vite#16271)) ([890538a](vitejs/vite@890538a)), closes [#16271](vitejs/vite#16271)
-   fix(deps): update all non-major dependencies ([#16258](vitejs/vite#16258)) ([7caef42](vitejs/vite@7caef42)), closes [#16258](vitejs/vite#16258)
-   fix(hmr): don't mutate module graph when collecting modules ([#16302](vitejs/vite#16302)) ([dfffea1](vitejs/vite@dfffea1)), closes [#16302](vitejs/vite#16302)
-   fix(hmr): trigger hmr for missing file import errored module after file creation ([#16303](vitejs/vite#16303)) ([ffedc06](vitejs/vite@ffedc06)), closes [#16303](vitejs/vite#16303)
-   fix(sourcemap): don't warn even if the sourcesContent is an empty string ([#16273](vitejs/vite#16273)) ([24e376a](vitejs/vite@24e376a)), closes [#16273](vitejs/vite#16273)
-   feat(hmr): reload when HTML file is created/deleted ([#16288](vitejs/vite#16288)) ([1f53796](vitejs/vite@1f53796)), closes [#16288](vitejs/vite#16288)
github-merge-queue bot pushed a commit to rolldown/rolldown that referenced this pull request Nov 17, 2024
<!-- Thank you for contributing! -->

### Description

- closes #2551

Let me try this again. It looks like `resolveId` handled by
#2551 wasn't actually a main
error handling code path. Instead, there is `Vec<BuildDiagnostic>` which
needs to be resurfaced back as js errors.

~I couldn't find a way to aggregate multiple error objects back to js
side, so for now I'm handling at most single js error, which I think is
sufficient for many cases.~

_todo_

- how to handle multiple errors/diagnostics?
- rollup doesn't have such concept and they can throw only single
`RollupError`. Currently Vite's error handling is based on that model
(cf. vitejs/vite#16540)
- esbuild returns each error detail in `Error.errors: types.Message[]`.
Additionally they use `Error.message` to include a summary with up-to-5
error messages combined.
https://github.com/evanw/esbuild/blob/9eca46464ed5615cb36a3beb3f7a7b9a8ffbe7cf/lib/shared/common.ts#L1673-L1683
  - I did something similar to esbuild.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p3-minor-bug An edge case that only affects very specific usage (priority)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Error context from rollup / esbuild errors is swallowed and only the stack trace is printed
3 participants