-
-
Notifications
You must be signed in to change notification settings - Fork 7.1k
fix(optimizer): incorrect incompatible error #20439
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(optimizer): incorrect incompatible error #20439
Conversation
@@ -42,7 +42,7 @@ export function optimizedDepsPlugin(): Plugin { | |||
if (depsOptimizer?.isOptimizedDepFile(id)) { | |||
const metadata = depsOptimizer.metadata | |||
const file = cleanUrl(id) | |||
const versionMatch = DEP_VERSION_RE.exec(file) | |||
const versionMatch = DEP_VERSION_RE.exec(id) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
versionMatch
always returned undefined
because cleanUrl
strips the query.
This was a bug introduced in https://github.com/vitejs/vite/pull/17789/files#diff-0648e3b1da8ac697354cfca37ada638d3a353be4b3312211c6b131597f6ca101.
const newMetadata = depsOptimizer.metadata | ||
if (optimizedDepInfoFromFile(newMetadata, file)) { | ||
// Outdated non-entry points (CHUNK), loaded after a rerun | ||
if (browserHash) { | ||
// Outdated optimized files loaded after a rerun |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This old condition did not match requests for stale optimized files.
The requests that was sent between "the optimizer starts the bundle" and "the optimizer finishes the bundle" is handled above after await info.processing
, but the requests that was sent after "the optimizer finishes the bundle" doesn't match the condition above.
Assuming that cases like new URL('./something', import.meta.url)
does not have a ?v=
query, I changed the condition to use that.
// query can break 3rd party plugin's extension checks. | ||
const versionMatch = DEP_VERSION_RE.exec(importer) | ||
if (versionMatch) { | ||
url = injectQuery(url, versionMatch[1]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was causing moduleGraph._ensureEntryFromUrl
below to be called with
await moduleGraph._ensureEntryFromUrl(
unwrapId(url), // url with `?v=` query
canSkipImportAnalysis(url) || forceSkipImportAnalysis,
resolved, // resolved result without `?v=` query
)
and caused the moduleGraph.urlToModuleMap
to have a mapping from "url with v query" to "id without v query".
This lead id
in doTransform
to resolve "url with v query" to "id without v query", and made the new condition in vite:optimized-deps
plugin to fail.
vite/packages/vite/src/node/server/transformRequest.ts
Lines 166 to 171 in c4d5940
const resolved = module | |
? undefined | |
: ((await pluginContainer.resolveId(url, undefined)) ?? undefined) | |
// resolve | |
const id = module?.id ?? resolved?.id ?? url |
https://github.com/vitejs/vite/pull/20439/files#diff-0648e3b1da8ac697354cfca37ada638d3a353be4b3312211c6b131597f6ca101R80
To fix that, I moved this if block after the moduleGraph._ensureEntryFromUrl
call.
Given that _ensureEntryFromUrl
removes some query internally,
rawUrl = removeImportQuery(removeTimestampQuery(rawUrl)) |
I think not adding
?v=
for the URL passed to _ensureEntryFromUrl
should be fine.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR fixes an incorrect incompatible error message in the dependency optimizer by correcting how version hashes are extracted and improving the logic for determining when to throw "outdated request" vs "file not found" errors.
- Fixes version hash extraction to use the full ID instead of cleaned URL
- Simplifies outdated file detection logic by checking for browser hash presence
- Moves URL browser-validation logic after file existence checks to prevent premature modifications
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
File | Description |
---|---|
packages/vite/src/node/plugins/optimizedDeps.ts | Corrects version hash extraction and simplifies outdated file detection logic |
packages/vite/src/node/plugins/importAnalysis.ts | Moves URL browser-validation after file checks to preserve original URL for error handling |
/ecosystem-ci run |
commit: |
This comment was marked as outdated.
This comment was marked as outdated.
📝 Ran ecosystem CI on
✅ quasar, histoire, nuxt, ladle, marko, react-router, sveltekit, qwik, rakkas, unocss, storybook, vike, vite-plugin-svelte, vitepress, vite-plugin-vue, one, vite-plugin-react, vite-plugin-pwa, vite-plugin-rsc, analogjs, vite-setup-catalogue, waku, vitest, vite-plugin-cloudflare, vuepress |
Let's try this one out. |
| datasource | package | from | to | | ---------- | ------- | ----- | ----- | | npm | vite | 6.3.2 | 7.1.3 | ## [v7.1.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-713-2025-08-19-small) ##### Features - **cli:** add Node.js version warning for unsupported versions ([#20638](vitejs/vite#20638)) ([a1be1bf](vitejs/vite@a1be1bf)) - generate code frame for parse errors thrown by terser ([#20642](vitejs/vite#20642)) ([a9ba017](vitejs/vite@a9ba017)) - support long lines in `generateCodeFrame` ([#20640](vitejs/vite#20640)) ([1559577](vitejs/vite@1559577)) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20634](vitejs/vite#20634)) ([4851cab](vitejs/vite@4851cab)) - **optimizer:** incorrect incompatible error ([#20439](vitejs/vite#20439)) ([446fe83](vitejs/vite@446fe83)) - support multiline new URL(..., import.meta.url) expressions ([#20644](vitejs/vite#20644)) ([9ccf142](vitejs/vite@9ccf142)) ##### Performance Improvements - **cli:** dynamically import `resolveConfig` ([#20646](vitejs/vite#20646)) ([f691f57](vitejs/vite@f691f57)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20633](vitejs/vite#20633)) ([98b92e8](vitejs/vite@98b92e8)) ##### Code Refactoring - replace startsWith with strict equality ([#20603](vitejs/vite#20603)) ([42816de](vitejs/vite@42816de)) - use `import` in worker threads ([#20641](vitejs/vite#20641)) ([530687a](vitejs/vite@530687a)) ##### Tests - remove `checkNodeVersion` test ([#20647](vitejs/vite#20647)) ([731d3e6](vitejs/vite@731d3e6)) ## [v7.1.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-712-2025-08-12-small) ##### Bug Fixes - **client:** add `[vite]` prefixes to debug logs ([#20595](vitejs/vite#20595)) ([7cdef61](vitejs/vite@7cdef61)) - **config:** make debugger work with bundle loader ([#20573](vitejs/vite#20573)) ([c583927](vitejs/vite@c583927)) - **deps:** update all non-major dependencies ([#20587](vitejs/vite#20587)) ([20d4817](vitejs/vite@20d4817)) - don't consider ids with `npm:` prefix as a built-in module ([#20558](vitejs/vite#20558)) ([ab33803](vitejs/vite@ab33803)) - **hmr:** watch non-inlined assets referenced by CSS ([#20581](vitejs/vite#20581)) ([b7d494b](vitejs/vite@b7d494b)) - **module-runner:** prevent crash when sourceMappingURL pattern appears in string literals ([#20554](vitejs/vite#20554)) ([2770478](vitejs/vite@2770478)) ##### Miscellaneous Chores - **deps:** migrate to `@jridgewell/remapping` from `@ampproject/remapping` ([#20577](vitejs/vite#20577)) ([0a6048a](vitejs/vite@0a6048a)) - **deps:** update rolldown-related dependencies ([#20586](vitejs/vite#20586)) ([77632c5](vitejs/vite@77632c5)) ## [v7.1.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-711-2025-08-08-small) ##### Bug Fixes - **deps:** update `launch-editor-middleware` ([#20569](vitejs/vite#20569)) ([826b394](vitejs/vite@826b394)) ##### Miscellaneous Chores - fix changelog beta links ([#20561](vitejs/vite#20561)) ([2e0c21a](vitejs/vite@2e0c21a)) - update 7.1 changelog ([#20560](vitejs/vite#20560)) ([d8869b8](vitejs/vite@d8869b8)) ## [v7.1.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#710-2025-08-07) ##### Features - support files with more than 1000 lines by `generateCodeFrame` ([#20508](vitejs/vite#20508)) ([e7d0b2a](vitejs/vite@e7d0b2a)) ##### Bug Fixes - **css:** avoid warnings for `image-set` containing `__VITE_ASSET__` ([#20520](vitejs/vite#20520)) ([f1a2635](vitejs/vite@f1a2635)) - **css:** empty CSS entry points should generate CSS files, not JS files ([#20518](vitejs/vite#20518)) ([bac9f3e](vitejs/vite@bac9f3e)) - **dev:** denied request stalled when requested concurrently ([#20503](vitejs/vite#20503)) ([64a52e7](vitejs/vite@64a52e7)) - **manifest:** initialize `entryCssAssetFileNames` as an empty Set ([#20542](vitejs/vite#20542)) ([6a46cda](vitejs/vite@6a46cda)) - skip prepareOutDirPlugin in workers ([#20556](vitejs/vite#20556)) ([97d5111](vitejs/vite@97d5111)) ##### Tests - detect ts support via `process.features` ([#20544](vitejs/vite#20544)) ([856d3f0](vitejs/vite@856d3f0)) - fix unimportant errors in test-unit ([#20545](vitejs/vite#20545)) ([1f23554](vitejs/vite@1f23554)) ## [v7.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-706-2025-07-24-small) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20442](vitejs/vite#20442)) ([e49f505](vitejs/vite@e49f505)) - **dev:** incorrect sourcemap when optimized CJS is imported ([#20458](vitejs/vite#20458)) ([ead2dec](vitejs/vite@ead2dec)) - **module-runner:** normalize file:// on windows ([#20449](vitejs/vite#20449)) ([1c9cb49](vitejs/vite@1c9cb49)) - respond with correct headers and status code for HEAD requests ([#20421](vitejs/vite#20421)) ([23d04fc](vitejs/vite@23d04fc)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20441](vitejs/vite#20441)) ([f689d61](vitejs/vite@f689d61)) - remove some files from prettier ignore ([#20459](vitejs/vite#20459)) ([8403f69](vitejs/vite@8403f69)) ##### Code Refactoring - use environment transform request ([#20430](vitejs/vite#20430)) ([24e6a0c](vitejs/vite@24e6a0c)) ## [v7.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-705-2025-07-17-small) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20406](vitejs/vite#20406)) ([1a1cc8a](vitejs/vite@1a1cc8a)) - remove special handling for `Accept: text/html` ([#20376](vitejs/vite#20376)) ([c9614b9](vitejs/vite@c9614b9)) - watch assets referenced by `new URL(, import.meta.url)` ([#20382](vitejs/vite#20382)) ([6bc8bf6](vitejs/vite@6bc8bf6)) ##### Miscellaneous Chores - **deps:** update dependency rolldown to ^1.0.0-beta.27 ([#20405](vitejs/vite#20405)) ([1165667](vitejs/vite@1165667)) ##### Code Refactoring - use `foo.endsWith("bar")` instead of `/bar$/.test(foo)` ([#20413](vitejs/vite#20413)) ([862e192](vitejs/vite@862e192)) ## [v7.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-704-2025-07-10-small) ##### Bug Fixes - allow resolving bare specifiers to relative paths for entries ([#20379](vitejs/vite#20379)) ([324669c](vitejs/vite@324669c)) ##### Build System - remove `@oxc-project/runtime` devDep ([#20389](vitejs/vite#20389)) ([5e29602](vitejs/vite@5e29602)) ## [v7.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-703-2025-07-08-small) ##### Bug Fixes - **client:** protect against window being defined but addEv undefined ([#20359](vitejs/vite#20359)) ([31d1467](vitejs/vite@31d1467)) - **define:** replace optional values ([#20338](vitejs/vite#20338)) ([9465ae1](vitejs/vite@9465ae1)) - **deps:** update all non-major dependencies ([#20366](vitejs/vite#20366)) ([43ac73d](vitejs/vite@43ac73d)) ##### Miscellaneous Chores - **deps:** update dependency dotenv to v17 ([#20325](vitejs/vite#20325)) ([45040d4](vitejs/vite@45040d4)) - **deps:** update dependency rolldown to ^1.0.0-beta.24 ([#20365](vitejs/vite#20365)) ([5ab25e7](vitejs/vite@5ab25e7)) - use `n/prefer-node-protocol` rule ([#20368](vitejs/vite#20368)) ([38bb268](vitejs/vite@38bb268)) ##### Code Refactoring - minor changes to reduce diff between normal Vite and rolldown-vite ([#20354](vitejs/vite#20354)) ([2e8050e](vitejs/vite@2e8050e)) ## [v7.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-702-2025-07-04-small) ##### Bug Fixes - **css:** resolve relative paths in sass, revert [#20300](vitejs/vite#20300) ([#20349](vitejs/vite#20349)) ([db8bd41](vitejs/vite@db8bd41)) ## [v7.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-701-2025-07-03-small) ##### Bug Fixes - **css:** skip resolving resolved paths in sass ([#20300](vitejs/vite#20300)) ([ac528a4](vitejs/vite@ac528a4)) - **deps:** update all non-major dependencies ([#20324](vitejs/vite#20324)) ([3e81af3](vitejs/vite@3e81af3)) - **types:** add a global interface for Worker ([#20243](vitejs/vite#20243)) ([37bdfc1](vitejs/vite@37bdfc1)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20323](vitejs/vite#20323)) ([30d2f1b](vitejs/vite@30d2f1b)) - fix typos and grammatical errors across documentation and comments ([#20337](vitejs/vite#20337)) ([c1c951d](vitejs/vite@c1c951d)) - group commits by category in changelog ([#20310](vitejs/vite#20310)) ([41e83f6](vitejs/vite@41e83f6)) - rearrange 7.0 changelog ([#20280](vitejs/vite#20280)) ([eafd28a](vitejs/vite@eafd28a)) ## [v7.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#700-2025-06-24) - fix: keep `import.meta.url` in bundled Vite ([#20235](vitejs/vite#20235)) ([3bf3a8a](vitejs/vite@3bf3a8a)), closes [#20235](vitejs/vite#20235) - fix(deps): update all non-major dependencies ([#20271](vitejs/vite#20271)) ([6b64d63](vitejs/vite@6b64d63)), closes [#20271](vitejs/vite#20271) - fix(module-runner): export `ssrExportNameKey` ([#20266](vitejs/vite#20266)) ([ac302a7](vitejs/vite@ac302a7)), closes [#20266](vitejs/vite#20266) - fix(module-runner): expose `normalizeModuleId` ([#20277](vitejs/vite#20277)) ([9b98dcb](vitejs/vite@9b98dcb)), closes [#20277](vitejs/vite#20277) - feat(types): use terser types from terser package ([#20274](vitejs/vite#20274)) ([a5799fa](vitejs/vite@a5799fa)), closes [#20274](vitejs/vite#20274) - chore: "indentity" → "identity" in test description ([#20225](vitejs/vite#20225)) ([ea9aed7](vitejs/vite@ea9aed7)), closes [#20225](vitejs/vite#20225) - chore: typos in comments ([#20259](vitejs/vite#20259)) ([b135918](vitejs/vite@b135918)), closes [#20259](vitejs/vite#20259) - chore(deps): update rolldown-related dependencies ([#20270](vitejs/vite#20270)) ([f7377c3](vitejs/vite@f7377c3)), closes [#20270](vitejs/vite#20270) - perf(utils): improve performance of `numberToPos` ([#20244](vitejs/vite#20244)) ([3f46901](vitejs/vite@3f46901)), closes [#20244](vitejs/vite#20244) ## [v6.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small635-2025-05-05-small) - fix(ssr): handle uninitialized export access as undefined ([#19959](vitejs/vite#19959)) ([fd38d07](vitejs/vite@fd38d07)), closes [#19959](vitejs/vite#19959) ## [v6.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small634-2025-04-30-small) - fix: check static serve file inside sirv ([#19965](vitejs/vite#19965)) ([c22c43d](vitejs/vite@c22c43d)), closes [#19965](vitejs/vite#19965) - fix(optimizer): return plain object when using `require` to import externals in optimized dependenci ([efc5eab](vitejs/vite@efc5eab)), closes [#19940](vitejs/vite#19940) - refactor: remove duplicate plugin context type ([#19935](vitejs/vite#19935)) ([d6d01c2](vitejs/vite@d6d01c2)), closes [#19935](vitejs/vite#19935) ## [v6.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small633-2025-04-24-small) - fix: ignore malformed uris in tranform middleware ([#19853](vitejs/vite#19853)) ([e4d5201](vitejs/vite@e4d5201)), closes [#19853](vitejs/vite#19853) - fix(assets): ensure ?no-inline is not included in the asset url in the production environment ([#1949](vitejs/vite#1949) ([16a73c0](vitejs/vite@16a73c0)), closes [#19496](vitejs/vite#19496) - fix(css): resolve relative imports in sass properly on Windows ([#19920](vitejs/vite#19920)) ([ffab442](vitejs/vite@ffab442)), closes [#19920](vitejs/vite#19920) - fix(deps): update all non-major dependencies ([#19899](vitejs/vite#19899)) ([a4b500e](vitejs/vite@a4b500e)), closes [#19899](vitejs/vite#19899) - fix(ssr): fix execution order of re-export ([#19841](vitejs/vite#19841)) ([ed29dee](vitejs/vite@ed29dee)), closes [#19841](vitejs/vite#19841) - fix(ssr): fix live binding of default export declaration and hoist exports getter ([#19842](vitejs/vite#19842)) ([80a91ff](vitejs/vite@80a91ff)), closes [#19842](vitejs/vite#19842) - perf: skip sourcemap generation for renderChunk hook of import-analysis-build plugin ([#19921](vitejs/vite#19921)) ([55cfd04](vitejs/vite@55cfd04)), closes [#19921](vitejs/vite#19921) - test(ssr): test `ssrTransform` re-export deps and test stacktrace with first line ([#19629](vitejs/vite#19629)) ([9399cda](vitejs/vite@9399cda)), closes [#19629](vitejs/vite#19629)
| datasource | package | from | to | | ---------- | ------- | ----- | ----- | | npm | vite | 6.3.2 | 7.1.3 | ## [v7.1.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-713-2025-08-19-small) ##### Features - **cli:** add Node.js version warning for unsupported versions ([#20638](vitejs/vite#20638)) ([a1be1bf](vitejs/vite@a1be1bf)) - generate code frame for parse errors thrown by terser ([#20642](vitejs/vite#20642)) ([a9ba017](vitejs/vite@a9ba017)) - support long lines in `generateCodeFrame` ([#20640](vitejs/vite#20640)) ([1559577](vitejs/vite@1559577)) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20634](vitejs/vite#20634)) ([4851cab](vitejs/vite@4851cab)) - **optimizer:** incorrect incompatible error ([#20439](vitejs/vite#20439)) ([446fe83](vitejs/vite@446fe83)) - support multiline new URL(..., import.meta.url) expressions ([#20644](vitejs/vite#20644)) ([9ccf142](vitejs/vite@9ccf142)) ##### Performance Improvements - **cli:** dynamically import `resolveConfig` ([#20646](vitejs/vite#20646)) ([f691f57](vitejs/vite@f691f57)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20633](vitejs/vite#20633)) ([98b92e8](vitejs/vite@98b92e8)) ##### Code Refactoring - replace startsWith with strict equality ([#20603](vitejs/vite#20603)) ([42816de](vitejs/vite@42816de)) - use `import` in worker threads ([#20641](vitejs/vite#20641)) ([530687a](vitejs/vite@530687a)) ##### Tests - remove `checkNodeVersion` test ([#20647](vitejs/vite#20647)) ([731d3e6](vitejs/vite@731d3e6)) ## [v7.1.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-712-2025-08-12-small) ##### Bug Fixes - **client:** add `[vite]` prefixes to debug logs ([#20595](vitejs/vite#20595)) ([7cdef61](vitejs/vite@7cdef61)) - **config:** make debugger work with bundle loader ([#20573](vitejs/vite#20573)) ([c583927](vitejs/vite@c583927)) - **deps:** update all non-major dependencies ([#20587](vitejs/vite#20587)) ([20d4817](vitejs/vite@20d4817)) - don't consider ids with `npm:` prefix as a built-in module ([#20558](vitejs/vite#20558)) ([ab33803](vitejs/vite@ab33803)) - **hmr:** watch non-inlined assets referenced by CSS ([#20581](vitejs/vite#20581)) ([b7d494b](vitejs/vite@b7d494b)) - **module-runner:** prevent crash when sourceMappingURL pattern appears in string literals ([#20554](vitejs/vite#20554)) ([2770478](vitejs/vite@2770478)) ##### Miscellaneous Chores - **deps:** migrate to `@jridgewell/remapping` from `@ampproject/remapping` ([#20577](vitejs/vite#20577)) ([0a6048a](vitejs/vite@0a6048a)) - **deps:** update rolldown-related dependencies ([#20586](vitejs/vite#20586)) ([77632c5](vitejs/vite@77632c5)) ## [v7.1.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-711-2025-08-08-small) ##### Bug Fixes - **deps:** update `launch-editor-middleware` ([#20569](vitejs/vite#20569)) ([826b394](vitejs/vite@826b394)) ##### Miscellaneous Chores - fix changelog beta links ([#20561](vitejs/vite#20561)) ([2e0c21a](vitejs/vite@2e0c21a)) - update 7.1 changelog ([#20560](vitejs/vite#20560)) ([d8869b8](vitejs/vite@d8869b8)) ## [v7.1.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#710-2025-08-07) ##### Features - support files with more than 1000 lines by `generateCodeFrame` ([#20508](vitejs/vite#20508)) ([e7d0b2a](vitejs/vite@e7d0b2a)) ##### Bug Fixes - **css:** avoid warnings for `image-set` containing `__VITE_ASSET__` ([#20520](vitejs/vite#20520)) ([f1a2635](vitejs/vite@f1a2635)) - **css:** empty CSS entry points should generate CSS files, not JS files ([#20518](vitejs/vite#20518)) ([bac9f3e](vitejs/vite@bac9f3e)) - **dev:** denied request stalled when requested concurrently ([#20503](vitejs/vite#20503)) ([64a52e7](vitejs/vite@64a52e7)) - **manifest:** initialize `entryCssAssetFileNames` as an empty Set ([#20542](vitejs/vite#20542)) ([6a46cda](vitejs/vite@6a46cda)) - skip prepareOutDirPlugin in workers ([#20556](vitejs/vite#20556)) ([97d5111](vitejs/vite@97d5111)) ##### Tests - detect ts support via `process.features` ([#20544](vitejs/vite#20544)) ([856d3f0](vitejs/vite@856d3f0)) - fix unimportant errors in test-unit ([#20545](vitejs/vite#20545)) ([1f23554](vitejs/vite@1f23554)) ## [v7.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-706-2025-07-24-small) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20442](vitejs/vite#20442)) ([e49f505](vitejs/vite@e49f505)) - **dev:** incorrect sourcemap when optimized CJS is imported ([#20458](vitejs/vite#20458)) ([ead2dec](vitejs/vite@ead2dec)) - **module-runner:** normalize file:// on windows ([#20449](vitejs/vite#20449)) ([1c9cb49](vitejs/vite@1c9cb49)) - respond with correct headers and status code for HEAD requests ([#20421](vitejs/vite#20421)) ([23d04fc](vitejs/vite@23d04fc)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20441](vitejs/vite#20441)) ([f689d61](vitejs/vite@f689d61)) - remove some files from prettier ignore ([#20459](vitejs/vite#20459)) ([8403f69](vitejs/vite@8403f69)) ##### Code Refactoring - use environment transform request ([#20430](vitejs/vite#20430)) ([24e6a0c](vitejs/vite@24e6a0c)) ## [v7.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-705-2025-07-17-small) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20406](vitejs/vite#20406)) ([1a1cc8a](vitejs/vite@1a1cc8a)) - remove special handling for `Accept: text/html` ([#20376](vitejs/vite#20376)) ([c9614b9](vitejs/vite@c9614b9)) - watch assets referenced by `new URL(, import.meta.url)` ([#20382](vitejs/vite#20382)) ([6bc8bf6](vitejs/vite@6bc8bf6)) ##### Miscellaneous Chores - **deps:** update dependency rolldown to ^1.0.0-beta.27 ([#20405](vitejs/vite#20405)) ([1165667](vitejs/vite@1165667)) ##### Code Refactoring - use `foo.endsWith("bar")` instead of `/bar$/.test(foo)` ([#20413](vitejs/vite#20413)) ([862e192](vitejs/vite@862e192)) ## [v7.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-704-2025-07-10-small) ##### Bug Fixes - allow resolving bare specifiers to relative paths for entries ([#20379](vitejs/vite#20379)) ([324669c](vitejs/vite@324669c)) ##### Build System - remove `@oxc-project/runtime` devDep ([#20389](vitejs/vite#20389)) ([5e29602](vitejs/vite@5e29602)) ## [v7.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-703-2025-07-08-small) ##### Bug Fixes - **client:** protect against window being defined but addEv undefined ([#20359](vitejs/vite#20359)) ([31d1467](vitejs/vite@31d1467)) - **define:** replace optional values ([#20338](vitejs/vite#20338)) ([9465ae1](vitejs/vite@9465ae1)) - **deps:** update all non-major dependencies ([#20366](vitejs/vite#20366)) ([43ac73d](vitejs/vite@43ac73d)) ##### Miscellaneous Chores - **deps:** update dependency dotenv to v17 ([#20325](vitejs/vite#20325)) ([45040d4](vitejs/vite@45040d4)) - **deps:** update dependency rolldown to ^1.0.0-beta.24 ([#20365](vitejs/vite#20365)) ([5ab25e7](vitejs/vite@5ab25e7)) - use `n/prefer-node-protocol` rule ([#20368](vitejs/vite#20368)) ([38bb268](vitejs/vite@38bb268)) ##### Code Refactoring - minor changes to reduce diff between normal Vite and rolldown-vite ([#20354](vitejs/vite#20354)) ([2e8050e](vitejs/vite@2e8050e)) ## [v7.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-702-2025-07-04-small) ##### Bug Fixes - **css:** resolve relative paths in sass, revert [#20300](vitejs/vite#20300) ([#20349](vitejs/vite#20349)) ([db8bd41](vitejs/vite@db8bd41)) ## [v7.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-701-2025-07-03-small) ##### Bug Fixes - **css:** skip resolving resolved paths in sass ([#20300](vitejs/vite#20300)) ([ac528a4](vitejs/vite@ac528a4)) - **deps:** update all non-major dependencies ([#20324](vitejs/vite#20324)) ([3e81af3](vitejs/vite@3e81af3)) - **types:** add a global interface for Worker ([#20243](vitejs/vite#20243)) ([37bdfc1](vitejs/vite@37bdfc1)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20323](vitejs/vite#20323)) ([30d2f1b](vitejs/vite@30d2f1b)) - fix typos and grammatical errors across documentation and comments ([#20337](vitejs/vite#20337)) ([c1c951d](vitejs/vite@c1c951d)) - group commits by category in changelog ([#20310](vitejs/vite#20310)) ([41e83f6](vitejs/vite@41e83f6)) - rearrange 7.0 changelog ([#20280](vitejs/vite#20280)) ([eafd28a](vitejs/vite@eafd28a)) ## [v7.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#700-2025-06-24) - fix: keep `import.meta.url` in bundled Vite ([#20235](vitejs/vite#20235)) ([3bf3a8a](vitejs/vite@3bf3a8a)), closes [#20235](vitejs/vite#20235) - fix(deps): update all non-major dependencies ([#20271](vitejs/vite#20271)) ([6b64d63](vitejs/vite@6b64d63)), closes [#20271](vitejs/vite#20271) - fix(module-runner): export `ssrExportNameKey` ([#20266](vitejs/vite#20266)) ([ac302a7](vitejs/vite@ac302a7)), closes [#20266](vitejs/vite#20266) - fix(module-runner): expose `normalizeModuleId` ([#20277](vitejs/vite#20277)) ([9b98dcb](vitejs/vite@9b98dcb)), closes [#20277](vitejs/vite#20277) - feat(types): use terser types from terser package ([#20274](vitejs/vite#20274)) ([a5799fa](vitejs/vite@a5799fa)), closes [#20274](vitejs/vite#20274) - chore: "indentity" → "identity" in test description ([#20225](vitejs/vite#20225)) ([ea9aed7](vitejs/vite@ea9aed7)), closes [#20225](vitejs/vite#20225) - chore: typos in comments ([#20259](vitejs/vite#20259)) ([b135918](vitejs/vite@b135918)), closes [#20259](vitejs/vite#20259) - chore(deps): update rolldown-related dependencies ([#20270](vitejs/vite#20270)) ([f7377c3](vitejs/vite@f7377c3)), closes [#20270](vitejs/vite#20270) - perf(utils): improve performance of `numberToPos` ([#20244](vitejs/vite#20244)) ([3f46901](vitejs/vite@3f46901)), closes [#20244](vitejs/vite#20244) ## [v6.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small635-2025-05-05-small) - fix(ssr): handle uninitialized export access as undefined ([#19959](vitejs/vite#19959)) ([fd38d07](vitejs/vite@fd38d07)), closes [#19959](vitejs/vite#19959) ## [v6.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small634-2025-04-30-small) - fix: check static serve file inside sirv ([#19965](vitejs/vite#19965)) ([c22c43d](vitejs/vite@c22c43d)), closes [#19965](vitejs/vite#19965) - fix(optimizer): return plain object when using `require` to import externals in optimized dependenci ([efc5eab](vitejs/vite@efc5eab)), closes [#19940](vitejs/vite#19940) - refactor: remove duplicate plugin context type ([#19935](vitejs/vite#19935)) ([d6d01c2](vitejs/vite@d6d01c2)), closes [#19935](vitejs/vite#19935) ## [v6.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small633-2025-04-24-small) - fix: ignore malformed uris in tranform middleware ([#19853](vitejs/vite#19853)) ([e4d5201](vitejs/vite@e4d5201)), closes [#19853](vitejs/vite#19853) - fix(assets): ensure ?no-inline is not included in the asset url in the production environment ([#1949](vitejs/vite#1949) ([16a73c0](vitejs/vite@16a73c0)), closes [#19496](vitejs/vite#19496) - fix(css): resolve relative imports in sass properly on Windows ([#19920](vitejs/vite#19920)) ([ffab442](vitejs/vite@ffab442)), closes [#19920](vitejs/vite#19920) - fix(deps): update all non-major dependencies ([#19899](vitejs/vite#19899)) ([a4b500e](vitejs/vite@a4b500e)), closes [#19899](vitejs/vite#19899) - fix(ssr): fix execution order of re-export ([#19841](vitejs/vite#19841)) ([ed29dee](vitejs/vite@ed29dee)), closes [#19841](vitejs/vite#19841) - fix(ssr): fix live binding of default export declaration and hoist exports getter ([#19842](vitejs/vite#19842)) ([80a91ff](vitejs/vite@80a91ff)), closes [#19842](vitejs/vite#19842) - perf: skip sourcemap generation for renderChunk hook of import-analysis-build plugin ([#19921](vitejs/vite#19921)) ([55cfd04](vitejs/vite@55cfd04)), closes [#19921](vitejs/vite#19921) - test(ssr): test `ssrTransform` re-export deps and test stacktrace with first line ([#19629](vitejs/vite#19629)) ([9399cda](vitejs/vite@9399cda)), closes [#19629](vitejs/vite#19629)
| datasource | package | from | to | | ---------- | ------- | ----- | ----- | | npm | vite | 6.3.2 | 7.1.3 | ## [v7.1.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-713-2025-08-19-small) ##### Features - **cli:** add Node.js version warning for unsupported versions ([#20638](vitejs/vite#20638)) ([a1be1bf](vitejs/vite@a1be1bf)) - generate code frame for parse errors thrown by terser ([#20642](vitejs/vite#20642)) ([a9ba017](vitejs/vite@a9ba017)) - support long lines in `generateCodeFrame` ([#20640](vitejs/vite#20640)) ([1559577](vitejs/vite@1559577)) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20634](vitejs/vite#20634)) ([4851cab](vitejs/vite@4851cab)) - **optimizer:** incorrect incompatible error ([#20439](vitejs/vite#20439)) ([446fe83](vitejs/vite@446fe83)) - support multiline new URL(..., import.meta.url) expressions ([#20644](vitejs/vite#20644)) ([9ccf142](vitejs/vite@9ccf142)) ##### Performance Improvements - **cli:** dynamically import `resolveConfig` ([#20646](vitejs/vite#20646)) ([f691f57](vitejs/vite@f691f57)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20633](vitejs/vite#20633)) ([98b92e8](vitejs/vite@98b92e8)) ##### Code Refactoring - replace startsWith with strict equality ([#20603](vitejs/vite#20603)) ([42816de](vitejs/vite@42816de)) - use `import` in worker threads ([#20641](vitejs/vite#20641)) ([530687a](vitejs/vite@530687a)) ##### Tests - remove `checkNodeVersion` test ([#20647](vitejs/vite#20647)) ([731d3e6](vitejs/vite@731d3e6)) ## [v7.1.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-712-2025-08-12-small) ##### Bug Fixes - **client:** add `[vite]` prefixes to debug logs ([#20595](vitejs/vite#20595)) ([7cdef61](vitejs/vite@7cdef61)) - **config:** make debugger work with bundle loader ([#20573](vitejs/vite#20573)) ([c583927](vitejs/vite@c583927)) - **deps:** update all non-major dependencies ([#20587](vitejs/vite#20587)) ([20d4817](vitejs/vite@20d4817)) - don't consider ids with `npm:` prefix as a built-in module ([#20558](vitejs/vite#20558)) ([ab33803](vitejs/vite@ab33803)) - **hmr:** watch non-inlined assets referenced by CSS ([#20581](vitejs/vite#20581)) ([b7d494b](vitejs/vite@b7d494b)) - **module-runner:** prevent crash when sourceMappingURL pattern appears in string literals ([#20554](vitejs/vite#20554)) ([2770478](vitejs/vite@2770478)) ##### Miscellaneous Chores - **deps:** migrate to `@jridgewell/remapping` from `@ampproject/remapping` ([#20577](vitejs/vite#20577)) ([0a6048a](vitejs/vite@0a6048a)) - **deps:** update rolldown-related dependencies ([#20586](vitejs/vite#20586)) ([77632c5](vitejs/vite@77632c5)) ## [v7.1.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-711-2025-08-08-small) ##### Bug Fixes - **deps:** update `launch-editor-middleware` ([#20569](vitejs/vite#20569)) ([826b394](vitejs/vite@826b394)) ##### Miscellaneous Chores - fix changelog beta links ([#20561](vitejs/vite#20561)) ([2e0c21a](vitejs/vite@2e0c21a)) - update 7.1 changelog ([#20560](vitejs/vite#20560)) ([d8869b8](vitejs/vite@d8869b8)) ## [v7.1.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#710-2025-08-07) ##### Features - support files with more than 1000 lines by `generateCodeFrame` ([#20508](vitejs/vite#20508)) ([e7d0b2a](vitejs/vite@e7d0b2a)) ##### Bug Fixes - **css:** avoid warnings for `image-set` containing `__VITE_ASSET__` ([#20520](vitejs/vite#20520)) ([f1a2635](vitejs/vite@f1a2635)) - **css:** empty CSS entry points should generate CSS files, not JS files ([#20518](vitejs/vite#20518)) ([bac9f3e](vitejs/vite@bac9f3e)) - **dev:** denied request stalled when requested concurrently ([#20503](vitejs/vite#20503)) ([64a52e7](vitejs/vite@64a52e7)) - **manifest:** initialize `entryCssAssetFileNames` as an empty Set ([#20542](vitejs/vite#20542)) ([6a46cda](vitejs/vite@6a46cda)) - skip prepareOutDirPlugin in workers ([#20556](vitejs/vite#20556)) ([97d5111](vitejs/vite@97d5111)) ##### Tests - detect ts support via `process.features` ([#20544](vitejs/vite#20544)) ([856d3f0](vitejs/vite@856d3f0)) - fix unimportant errors in test-unit ([#20545](vitejs/vite#20545)) ([1f23554](vitejs/vite@1f23554)) ## [v7.0.6](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-706-2025-07-24-small) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20442](vitejs/vite#20442)) ([e49f505](vitejs/vite@e49f505)) - **dev:** incorrect sourcemap when optimized CJS is imported ([#20458](vitejs/vite#20458)) ([ead2dec](vitejs/vite@ead2dec)) - **module-runner:** normalize file:// on windows ([#20449](vitejs/vite#20449)) ([1c9cb49](vitejs/vite@1c9cb49)) - respond with correct headers and status code for HEAD requests ([#20421](vitejs/vite#20421)) ([23d04fc](vitejs/vite@23d04fc)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20441](vitejs/vite#20441)) ([f689d61](vitejs/vite@f689d61)) - remove some files from prettier ignore ([#20459](vitejs/vite#20459)) ([8403f69](vitejs/vite@8403f69)) ##### Code Refactoring - use environment transform request ([#20430](vitejs/vite#20430)) ([24e6a0c](vitejs/vite@24e6a0c)) ## [v7.0.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-705-2025-07-17-small) ##### Bug Fixes - **deps:** update all non-major dependencies ([#20406](vitejs/vite#20406)) ([1a1cc8a](vitejs/vite@1a1cc8a)) - remove special handling for `Accept: text/html` ([#20376](vitejs/vite#20376)) ([c9614b9](vitejs/vite@c9614b9)) - watch assets referenced by `new URL(, import.meta.url)` ([#20382](vitejs/vite#20382)) ([6bc8bf6](vitejs/vite@6bc8bf6)) ##### Miscellaneous Chores - **deps:** update dependency rolldown to ^1.0.0-beta.27 ([#20405](vitejs/vite#20405)) ([1165667](vitejs/vite@1165667)) ##### Code Refactoring - use `foo.endsWith("bar")` instead of `/bar$/.test(foo)` ([#20413](vitejs/vite#20413)) ([862e192](vitejs/vite@862e192)) ## [v7.0.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-704-2025-07-10-small) ##### Bug Fixes - allow resolving bare specifiers to relative paths for entries ([#20379](vitejs/vite#20379)) ([324669c](vitejs/vite@324669c)) ##### Build System - remove `@oxc-project/runtime` devDep ([#20389](vitejs/vite#20389)) ([5e29602](vitejs/vite@5e29602)) ## [v7.0.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-703-2025-07-08-small) ##### Bug Fixes - **client:** protect against window being defined but addEv undefined ([#20359](vitejs/vite#20359)) ([31d1467](vitejs/vite@31d1467)) - **define:** replace optional values ([#20338](vitejs/vite#20338)) ([9465ae1](vitejs/vite@9465ae1)) - **deps:** update all non-major dependencies ([#20366](vitejs/vite#20366)) ([43ac73d](vitejs/vite@43ac73d)) ##### Miscellaneous Chores - **deps:** update dependency dotenv to v17 ([#20325](vitejs/vite#20325)) ([45040d4](vitejs/vite@45040d4)) - **deps:** update dependency rolldown to ^1.0.0-beta.24 ([#20365](vitejs/vite#20365)) ([5ab25e7](vitejs/vite@5ab25e7)) - use `n/prefer-node-protocol` rule ([#20368](vitejs/vite#20368)) ([38bb268](vitejs/vite@38bb268)) ##### Code Refactoring - minor changes to reduce diff between normal Vite and rolldown-vite ([#20354](vitejs/vite#20354)) ([2e8050e](vitejs/vite@2e8050e)) ## [v7.0.2](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-702-2025-07-04-small) ##### Bug Fixes - **css:** resolve relative paths in sass, revert [#20300](vitejs/vite#20300) ([#20349](vitejs/vite#20349)) ([db8bd41](vitejs/vite@db8bd41)) ## [v7.0.1](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small-701-2025-07-03-small) ##### Bug Fixes - **css:** skip resolving resolved paths in sass ([#20300](vitejs/vite#20300)) ([ac528a4](vitejs/vite@ac528a4)) - **deps:** update all non-major dependencies ([#20324](vitejs/vite#20324)) ([3e81af3](vitejs/vite@3e81af3)) - **types:** add a global interface for Worker ([#20243](vitejs/vite#20243)) ([37bdfc1](vitejs/vite@37bdfc1)) ##### Miscellaneous Chores - **deps:** update rolldown-related dependencies ([#20323](vitejs/vite#20323)) ([30d2f1b](vitejs/vite@30d2f1b)) - fix typos and grammatical errors across documentation and comments ([#20337](vitejs/vite#20337)) ([c1c951d](vitejs/vite@c1c951d)) - group commits by category in changelog ([#20310](vitejs/vite#20310)) ([41e83f6](vitejs/vite@41e83f6)) - rearrange 7.0 changelog ([#20280](vitejs/vite#20280)) ([eafd28a](vitejs/vite@eafd28a)) ## [v7.0.0](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#700-2025-06-24) - fix: keep `import.meta.url` in bundled Vite ([#20235](vitejs/vite#20235)) ([3bf3a8a](vitejs/vite@3bf3a8a)), closes [#20235](vitejs/vite#20235) - fix(deps): update all non-major dependencies ([#20271](vitejs/vite#20271)) ([6b64d63](vitejs/vite@6b64d63)), closes [#20271](vitejs/vite#20271) - fix(module-runner): export `ssrExportNameKey` ([#20266](vitejs/vite#20266)) ([ac302a7](vitejs/vite@ac302a7)), closes [#20266](vitejs/vite#20266) - fix(module-runner): expose `normalizeModuleId` ([#20277](vitejs/vite#20277)) ([9b98dcb](vitejs/vite@9b98dcb)), closes [#20277](vitejs/vite#20277) - feat(types): use terser types from terser package ([#20274](vitejs/vite#20274)) ([a5799fa](vitejs/vite@a5799fa)), closes [#20274](vitejs/vite#20274) - chore: "indentity" → "identity" in test description ([#20225](vitejs/vite#20225)) ([ea9aed7](vitejs/vite@ea9aed7)), closes [#20225](vitejs/vite#20225) - chore: typos in comments ([#20259](vitejs/vite#20259)) ([b135918](vitejs/vite@b135918)), closes [#20259](vitejs/vite#20259) - chore(deps): update rolldown-related dependencies ([#20270](vitejs/vite#20270)) ([f7377c3](vitejs/vite@f7377c3)), closes [#20270](vitejs/vite#20270) - perf(utils): improve performance of `numberToPos` ([#20244](vitejs/vite#20244)) ([3f46901](vitejs/vite@3f46901)), closes [#20244](vitejs/vite#20244) ## [v6.3.5](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small635-2025-05-05-small) - fix(ssr): handle uninitialized export access as undefined ([#19959](vitejs/vite#19959)) ([fd38d07](vitejs/vite@fd38d07)), closes [#19959](vitejs/vite#19959) ## [v6.3.4](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small634-2025-04-30-small) - fix: check static serve file inside sirv ([#19965](vitejs/vite#19965)) ([c22c43d](vitejs/vite@c22c43d)), closes [#19965](vitejs/vite#19965) - fix(optimizer): return plain object when using `require` to import externals in optimized dependenci ([efc5eab](vitejs/vite@efc5eab)), closes [#19940](vitejs/vite#19940) - refactor: remove duplicate plugin context type ([#19935](vitejs/vite#19935)) ([d6d01c2](vitejs/vite@d6d01c2)), closes [#19935](vitejs/vite#19935) ## [v6.3.3](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small633-2025-04-24-small) - fix: ignore malformed uris in tranform middleware ([#19853](vitejs/vite#19853)) ([e4d5201](vitejs/vite@e4d5201)), closes [#19853](vitejs/vite#19853) - fix(assets): ensure ?no-inline is not included in the asset url in the production environment ([#1949](vitejs/vite#1949) ([16a73c0](vitejs/vite@16a73c0)), closes [#19496](vitejs/vite#19496) - fix(css): resolve relative imports in sass properly on Windows ([#19920](vitejs/vite#19920)) ([ffab442](vitejs/vite@ffab442)), closes [#19920](vitejs/vite#19920) - fix(deps): update all non-major dependencies ([#19899](vitejs/vite#19899)) ([a4b500e](vitejs/vite@a4b500e)), closes [#19899](vitejs/vite#19899) - fix(ssr): fix execution order of re-export ([#19841](vitejs/vite#19841)) ([ed29dee](vitejs/vite@ed29dee)), closes [#19841](vitejs/vite#19841) - fix(ssr): fix live binding of default export declaration and hoist exports getter ([#19842](vitejs/vite#19842)) ([80a91ff](vitejs/vite@80a91ff)), closes [#19842](vitejs/vite#19842) - perf: skip sourcemap generation for renderChunk hook of import-analysis-build plugin ([#19921](vitejs/vite#19921)) ([55cfd04](vitejs/vite@55cfd04)), closes [#19921](vitejs/vite#19921) - test(ssr): test `ssrTransform` re-export deps and test stacktrace with first line ([#19629](vitejs/vite#19629)) ([9399cda](vitejs/vite@9399cda)), closes [#19629](vitejs/vite#19629)
Description
This bug was causing an incorrect error message and was causing confusion (#17738).