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

perf: reduce size of injected __vite__mapDeps code #16184

Merged
merged 5 commits into from
Apr 5, 2024

Conversation

panstromek
Copy link
Contributor

@panstromek panstromek commented Mar 17, 2024

Description

This reduces size of injected __vite__mapDeps code by roughly a factor of 2 (not counting the dependency list) using few minification tricks.

The main ideas are:

  • replace function with arrow function, which is shorter (Especially when braces can be ommited)
  • extract dependency list to a separate variable which
    • allows both variables to be grouped
    • avoid referencing the long names multiple times
  • remove redundant whitespace and parens
  • shorten parameter names

Note that it also removes the lazy initialization of the dependency list array. I honestly don't see the benefit of doing it, but if it's desirable to keep it, there's another version of the function that keeps the behaviour unchanged (except for renaming the internal function object property, which is also optional, though):

const __vite__mapDeps=(i,f=__vite__mapDeps,d=(f.f||(f.f=[/*dependency list*/])))=>i.map(i=>d[i])

This version uses optional parameters to:

  • assign function name to a variable to avoid referencing the long name multiple times
  • lazy intialize the internal file list property and assign the result to local variable
  • optional parameters are used to avoid adding parenthesis to the function and adding const|let keyword

[edit]
I found a comment on original PR that explains why the lazy initialization is there. https://github.com/vitejs/vite/pull/14550/files#r1350449734

I might have to re-add it, but let's see if there's a demand for merging this in the first place. I tested this locally on my project and patched it in GitHub UI, so I haven't seen the impact on tests, yet.

Additional context

This optimization was first added here: #14550

cc @gajus who contributed the original implemetation.


What is the purpose of this pull request?

  • Bug fix
  • New Feature
  • Documentation update
  • Other

Before submitting the PR, please make sure you do the following

  • Read the Contributing Guidelines, especially the Pull Request Guidelines.
  • Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
  • Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
  • Update the corresponding documentation if needed.
  • Ideally, include relevant tests that fail without this PR but pass with it.

This also replaces the lazy initialization of with eager one.
Copy link

stackblitz bot commented Mar 17, 2024

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

@panstromek panstromek changed the title Reduce size of injected __vite__mapDeps code perf: Reduce size of injected __vite__mapDeps code Mar 17, 2024
@panstromek
Copy link
Contributor Author

Lint failed but I couldn't find any linter output, so I don't see what is the problem

@bluwy bluwy changed the title perf: Reduce size of injected __vite__mapDeps code perf: reduce size of injected __vite__mapDeps code Mar 18, 2024
bluwy
bluwy previously approved these changes Mar 18, 2024
Copy link
Member

@bluwy bluwy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! This looks great to me. Something I'd also like to followup later is to remove the mapDeps altogether if no preloading is needed for the file. Currently it's added unconditionally. And the changes could get a bit big.

Also related: #15300 (comment)

@bluwy bluwy added p2-nice-to-have Not breaking anything but nice to have (priority) performance Performance related enhancement labels Mar 18, 2024
@panstromek
Copy link
Contributor Author

Thanks! This looks great to me. Something I'd also like to followup later is to remove the mapDeps altogether if no preloading is needed for the file. Currently it's added unconditionally. And the changes could get a bit big.

Yea, I noticed that too. It can also be removed when there's only single callsite, which is another pretty common case (at least in my codebase).

(Even more generalized version could also omit it when the imported files at each callsite are distinct or distinct enough to outweigh the added code)

sapphi-red
sapphi-red previously approved these changes Mar 21, 2024
@patak-dev patak-dev added this to the 5.3 milestone Mar 21, 2024
@bluwy
Copy link
Member

bluwy commented Mar 21, 2024

I think this should be a simple fix in a patch and not for 5.3 🤔

@patak-dev
Copy link
Member

In the past, there have been downstream projects doing regexes over our preload handling to inject or modify stuff. So I'm always a bit worried about touching this part. I'll trigger a ecosystem CI run. I'm ok if you want to move forward with this in a patch if it is all green.

/ecosystem-ci run

@sapphi-red
Copy link
Member

I felt this to be in the blur between minor and patch. If the ecosystem-ci passes, I'm fine with merging it with a patch.
BTW the "/ecosystem-ci run" needs to be in the beginning of the comment (

if: github.repository == 'vitejs/vite' && github.event.issue.pull_request && startsWith(github.event.comment.body, '/ecosystem-ci run')
).

@sapphi-red
Copy link
Member

/ecosystem-ci run

@bluwy
Copy link
Member

bluwy commented Mar 21, 2024

The Nuxt fail seems like a fluke since it's a dev fixture test, but I reran it again. I haven't seen downstream patching this in the past, so I figured it should be safe (but still, it's on them).

@vite-ecosystem-ci
Copy link

📝 Ran ecosystem CI on 0418a94: Open

suite result latest scheduled
nuxt failure success

analogjs, astro, histoire, ladle, laravel, marko, previewjs, quasar, qwik, rakkas, remix, sveltekit, unocss, vike, vite-plugin-pwa, vite-plugin-react, vite-plugin-react-pages, vite-plugin-react-swc, vite-plugin-svelte, vite-plugin-vue, vite-setup-catalogue, vitepress, vitest

@sapphi-red
Copy link
Member

I guess it's failing because the base commit was a bit old.

@sapphi-red
Copy link
Member

/ecosystem-ci run

@sapphi-red sapphi-red dismissed stale reviews from bluwy and themself via ecba0e8 March 29, 2024 07:34
@bluwy
Copy link
Member

bluwy commented Apr 5, 2024

Thanks for resolving it Sapphi, the fail had me defeated 😄 Since it passes on ecosystem-ci, I'll go ahead and merge this then.

@bluwy bluwy removed this from the 5.3 milestone Apr 5, 2024
@bluwy bluwy merged commit c0ec6be into vitejs:main Apr 5, 2024
10 checks passed
@panstromek
Copy link
Contributor Author

Thanks for carrying this through!

patak-dev pushed a commit that referenced this pull request Apr 5, 2024
Co-authored-by: bluwy <bjornlu.dev@gmail.com>
Co-authored-by: 翠 / green <green@sapphi.red>
Co-authored-by: sapphi-red <49056869+sapphi-red@users.noreply.github.com>
@skovhus
Copy link
Contributor

skovhus commented Jun 26, 2024

Hi. Just found this which caused a regression in our codebase when upgrading to 5.3.x. We use the renderBuiltUrl to update the asset URL based on some configuration.

Vite config:

    experimental: {
      renderBuiltUrl(filename: string, { hostType }) {
        if (hostType === "js") {
          return { runtime: `window.__toStaticUrl(${JSON.stringify(filename)})` };
        } else {
          return { relative: true };
        }
      },
    },

window.__toStaticUrl is depending on some configuration and is loaded in a file we call preload.ts before our main file entry.ts. Snippet from our index.html file:

<script type="module" src="/src/vite/preload.ts"></script>
<script type="module" src="/src/vite/entry.ts"></script>

In prouduction vite bundles preload and entry into one chunk. This used to work fine, but the challenge with the change in this PR is that instead of lazy evaluating window.__toStaticUrl when building the mapDeps, we now expect the function to be defined beforehand. As the function is not defined we get a TypeError: window.__toStaticUrl is not a function.

What is the suggested workaround here to ensure that the window.__toStaticUrl function is defined before it's used by the mapDeps?

@AlexTugarev
Copy link

Facing the same issue as @skovhus here.
A possible workaround is to inject __toStaticUrl via transformIndexHtml plugin, but the downside is that it's getting harder to use import.meta.env.

@bluwy
Copy link
Member

bluwy commented Jun 27, 2024

To workaround this, you probably need to use a non type="module" script tag so that it doesn't get bundled by Vite and merged together, which would cause the __vite__mapDeps code to be hoisted up and miss the window.__toStaticUrl declaration.

However, I think it's a good point and perhaps we should walk back on this slightly. @panstromek had an alternative at hand for this case

Note that it also removes the lazy initialization of the dependency list array. I honestly don't see the benefit of doing it, but if it's desirable to keep it, there's another version of the function that keeps the behaviour unchanged (except for renaming the internal function object property, which is also optional, though):

const __vite__mapDeps=(i,f=__vite__mapDeps,d=(f.f||(f.f=[/*dependency list*/])))=>i.map(i=>d[i])

I'm fine if we switch to that to fix this for now.


Feel free to send a PR if anyone's interested, or submit an issue for this. I'll bring this up to the other maintainers of the fix.

@skovhus
Copy link
Contributor

skovhus commented Jun 27, 2024

Thanks @bluwy!

In our case I have some code that reads a configuration / env vars, so ideally I would use the same toolchain instead of having this special case were we cannot use Vite for bundling. Not sure what the performance/space impact actually is here?

I created #17575

xdavidwu added a commit to xdavidwu/sparkles that referenced this pull request Aug 2, 2024
vite runtime url rendering has changed that it is evalutated before
everything on production bundle, so let's just be safer and move the
prerequisite out of bundle

we loss typescript tooling on this little bit of code, guess that just
the price need to be paid

fixes production bundle after vite 5.2.9

See: vitejs/vite#16184
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)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p2-nice-to-have Not breaking anything but nice to have (priority) performance Performance related enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants