Skip to content

Conversation

sapphi-red
Copy link
Member

Description

This bug was causing an incorrect error message and was causing confusion (#17738).

@sapphi-red sapphi-red added p3-minor-bug An edge case that only affects very specific usage (priority) feat: deps optimizer Esbuild Dependencies Optimization labels Jul 20, 2025
@@ -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)
Copy link
Member Author

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.

Comment on lines -80 to +81
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
Copy link
Member Author

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])
Copy link
Member Author

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.

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.

Copilot

This comment was marked as outdated.

@sapphi-red sapphi-red requested review from Copilot and removed request for Copilot August 18, 2025 12:14
Copy link

@Copilot Copilot AI left a 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

@sapphi-red
Copy link
Member Author

/ecosystem-ci run

Copy link

pkg-pr-new bot commented Aug 18, 2025

Open in StackBlitz

npm i https://pkg.pr.new/vite@20439

commit: 62fe45e

@vite-ecosystem-ci

This comment was marked as outdated.

@vite-ecosystem-ci
Copy link

@sapphi-red
Copy link
Member Author

Let's try this one out.

@sapphi-red sapphi-red merged commit 446fe83 into vitejs:main Aug 18, 2025
20 checks passed
@sapphi-red sapphi-red deleted the fix/optimizer-incorrect-incompatible-error branch August 21, 2025 12:47
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 23, 2025
| 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)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Aug 24, 2025
| 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)
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Sep 1, 2025
| 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)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feat: deps optimizer Esbuild Dependencies Optimization p3-minor-bug An edge case that only affects very specific usage (priority) trigger: preview
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant