Closed renovate[bot] closed 6 months ago
Descriptor | Linter | Files | Fixed | Errors | Elapsed time |
---|---|---|---|---|---|
β ACTION | actionlint | 30 | 47 | 0.48s | |
β οΈ BASH | bash-exec | 5 | 2 | 0.01s | |
β BASH | shellcheck | 5 | 8 | 0.16s | |
β BASH | shfmt | 5 | 5 | 0 | 0.16s |
β COPYPASTE | jscpd | yes | 70 | 12.98s | |
β CSS | scss-lint | 1 | 0 | 0.52s | |
β CSS | stylelint | 4 | 3 | 1 | 4.92s |
β DOCKERFILE | hadolint | 3 | 1 | 0.12s | |
β EDITORCONFIG | editorconfig-checker | 1091 | 1 | 6.07s | |
β HTML | djlint | 1 | 2 | 0.9s | |
β HTML | htmlhint | 1 | 1 | 0.33s | |
β JAVASCRIPT | standard | 2 | 0 | 0 | 1.69s |
β JSON | jsonlint | 23 | 1 | 0.23s | |
β JSON | prettier | 23 | 19 | 0 | 1.16s |
β JSON | v8r | 23 | 0 | 13.97s | |
β οΈ MARKDOWN | markdownlint | 9 | 5 | 37 | 1.6s |
β MARKDOWN | markdown-link-check | 9 | 24 | 15.21s | |
β MARKDOWN | markdown-table-formatter | 9 | 6 | 0 | 0.54s |
β OPENAPI | spectral | 3 | 3 | 8.25s | |
β PROTOBUF | protolint | 6 | 6 | 0 | 1.29s |
β REPOSITORY | checkov | yes | 49 | 35.59s | |
β REPOSITORY | gitleaks | yes | 22 | 11.81s | |
β REPOSITORY | git_diff | yes | no | 0.18s | |
β REPOSITORY | grype | yes | 1 | 30.98s | |
β REPOSITORY | secretlint | yes | no | 7.64s | |
β REPOSITORY | trivy | yes | 1 | 12.78s | |
β REPOSITORY | trivy-sbom | yes | no | 10.1s | |
β REPOSITORY | trufflehog | yes | no | 4.95s | |
β SPELL | cspell | 1092 | 4775 | 131.53s | |
β SPELL | lychee | 101 | 92 | 1.52s | |
β SQL | sql-lint | 1 | 0 | 0.33s | |
β TYPESCRIPT | ts-standard | 175 | 0 | 1 | 0.71s |
β XML | xmllint | 14 | 0 | 0 | 0.2s |
β YAML | prettier | 63 | 49 | 0 | 5.99s |
β YAML | v8r | 63 | 1 | 118.92s | |
β YAML | yamllint | 63 | 0 | 4.89s |
See detailed report in MegaLinter reports
This PR contains the following updates:
4.0.5
->4.5.3
GitHub Vulnerability Alerts
CVE-2024-23331
Summary
Vite dev server option
server.fs.deny
can be bypassed on case-insensitive file systems using case-augmented versions of filenames. Notably this affects servers hosted on Windows.This bypass is similar to https://nvd.nist.gov/vuln/detail/CVE-2023-34092 -- with surface area reduced to hosts having case-insensitive filesystems.
Patches
Fixed in vite@5.0.12, vite@4.5.2, vite@3.2.8, vite@2.9.17
Details
Since
picomatch
defaults to case-sensitive glob matching, but the file server doesn't discriminate; a blacklist bypass is possible.See
picomatch
usage, wherenocase
is defaulted tofalse
: https://github.com/vitejs/vite/blob/v5.1.0-beta.1/packages/vite/src/node/server/index.ts#L632By requesting raw filesystem paths using augmented casing, the matcher derived from
config.server.fs.deny
fails to block access to sensitive files.PoC
Setup
npm create vite@latest
on a Standard Azure hosted Windows 10 instance.npm run dev -- --host 0.0.0.0
custom.secret
andproduction.pem
vite.config.js
withReproduction
curl -s http://20.12.242.81:5173/@​fs//
curl -s http://20.12.242.81:5173/@​fs/C:/Users/darbonzo/Desktop/vite-project/vite.config.js
curl -s http://20.12.242.81:5173/@​fs/C:/Users/darbonzo/Desktop/vite-project/custom.sEcReT
Proof
Impact
Who
What
server.fs.deny
are both discoverable, and accessibleCVE-2024-31207
Summary
Vite dev server option
server.fs.deny
did not deny requests for patterns with directories. An example of such a pattern is/foo/**/*
.Impact
Only apps setting a custom
server.fs.deny
that includes a pattern with directories, and explicitly exposing the Vite dev server to the network (using--host
orserver.host
config option) are affected.Patches
Fixed in vite@5.2.6, vite@5.1.7, vite@5.0.13, vite@4.5.3, vite@3.2.10, vite@2.9.18
Details
server.fs.deny
uses picomatch with the config of{ matchBase: true }
. matchBase only matches the basename of the file, not the path due to a bug (https://github.com/micromatch/picomatch/issues/89). The vite config docs read like you should be able to set fs.deny to glob with picomatch. Vite also does not set{ dot: true }
and that causes dotfiles not to be denied unless they are explicitly defined.Reproduction
Set fs.deny to
['**/.git/**']
and then curl for/.git/config
.matchBase: true
, you can get any file under.git/
(config, HEAD, etc).matchBase: false
, you cannot get any file under.git/
(config, HEAD, etc).Release Notes
vitejs/vite (vite)
### [`v4.5.3`](https://togithub.com/vitejs/vite/compare/v4.5.2...aac695e9f8f29da43c2f7c50c549fa3d3dfeeadc) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.5.2...v4.5.3) ### [`v4.5.2`](https://togithub.com/vitejs/vite/releases/tag/v4.5.2) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.5.1...v4.5.2) Please refer to [CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.5.2/packages/vite/CHANGELOG.md) for details. ### [`v4.5.1`](https://togithub.com/vitejs/vite/releases/tag/v4.5.1) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.5.0...v4.5.1) Please refer to [CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.5.1/packages/vite/CHANGELOG.md) for details. ### [`v4.5.0`](https://togithub.com/vitejs/vite/releases/tag/v4.5.0) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.12...v4.5.0) Please refer to [CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.5.0/packages/vite/CHANGELOG.md) for details. ### [`v4.4.12`](https://togithub.com/vitejs/vite/releases/tag/v4.4.12) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.11...v4.4.12) Please refer to [CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.4.12/packages/vite/CHANGELOG.md) for details. ### [`v4.4.11`](https://togithub.com/vitejs/vite/releases/tag/v4.4.11) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.10...v4.4.11) Please refer to [CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.4.11/packages/vite/CHANGELOG.md) for details. ### [`v4.4.10`](https://togithub.com/vitejs/vite/releases/tag/v4.4.10) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.9...v4.4.10) Please refer to [CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.4.10/packages/vite/CHANGELOG.md) for details. ### [`v4.4.9`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small449-2023-08-07-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.8...v4.4.9) - chore: fix eslint warnings ([#14031](https://togithub.com/vitejs/vite/issues/14031)) ([4021a0e](https://togithub.com/vitejs/vite/commit/4021a0e)), closes [#14031](https://togithub.com/vitejs/vite/issues/14031) - chore(deps): update all non-major dependencies ([#13938](https://togithub.com/vitejs/vite/issues/13938)) ([a1b519e](https://togithub.com/vitejs/vite/commit/a1b519e)), closes [#13938](https://togithub.com/vitejs/vite/issues/13938) - fix: dynamic import vars ignored warning ([#14006](https://togithub.com/vitejs/vite/issues/14006)) ([4479431](https://togithub.com/vitejs/vite/commit/4479431)), closes [#14006](https://togithub.com/vitejs/vite/issues/14006) - fix(build): silence warn dynamic import module when inlineDynamicImports true ([#13970](https://togithub.com/vitejs/vite/issues/13970)) ([7a77aaf](https://togithub.com/vitejs/vite/commit/7a77aaf)), closes [#13970](https://togithub.com/vitejs/vite/issues/13970) - perf: improve build times and memory utilization ([#14016](https://togithub.com/vitejs/vite/issues/14016)) ([9d7d45e](https://togithub.com/vitejs/vite/commit/9d7d45e)), closes [#14016](https://togithub.com/vitejs/vite/issues/14016) - perf: replace startsWith with === ([#14005](https://togithub.com/vitejs/vite/issues/14005)) ([f5c1224](https://togithub.com/vitejs/vite/commit/f5c1224)), closes [#14005](https://togithub.com/vitejs/vite/issues/14005) ### [`v4.4.8`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small448-2023-07-31-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.7...v4.4.8) - fix: modulePreload false ([#13973](https://togithub.com/vitejs/vite/issues/13973)) ([488085d](https://togithub.com/vitejs/vite/commit/488085d)), closes [#13973](https://togithub.com/vitejs/vite/issues/13973) - fix: multiple entries with shared css and no JS ([#13962](https://togithub.com/vitejs/vite/issues/13962)) ([89a3db0](https://togithub.com/vitejs/vite/commit/89a3db0)), closes [#13962](https://togithub.com/vitejs/vite/issues/13962) - fix: use file extensions on type imports so they work with `moduleResolution: 'node16'` ([#13947](https://togithub.com/vitejs/vite/issues/13947)) ([aeef670](https://togithub.com/vitejs/vite/commit/aeef670)), closes [#13947](https://togithub.com/vitejs/vite/issues/13947) - fix(css): enhance error message for missing preprocessor dependency ([#11485](https://togithub.com/vitejs/vite/issues/11485)) ([65e5c22](https://togithub.com/vitejs/vite/commit/65e5c22)), closes [#11485](https://togithub.com/vitejs/vite/issues/11485) - fix(esbuild): fix static properties transpile when useDefineForClassFields false ([#13992](https://togithub.com/vitejs/vite/issues/13992)) ([4ca7c13](https://togithub.com/vitejs/vite/commit/4ca7c13)), closes [#13992](https://togithub.com/vitejs/vite/issues/13992) - fix(importAnalysis): strip url base before passing as safeModulePaths ([#13712](https://togithub.com/vitejs/vite/issues/13712)) ([1ab06a8](https://togithub.com/vitejs/vite/commit/1ab06a8)), closes [#13712](https://togithub.com/vitejs/vite/issues/13712) - fix(importMetaGlob): avoid unnecessary hmr of negative glob ([#13646](https://togithub.com/vitejs/vite/issues/13646)) ([844451c](https://togithub.com/vitejs/vite/commit/844451c)), closes [#13646](https://togithub.com/vitejs/vite/issues/13646) - fix(optimizer): avoid double-commit of optimized deps when discovery is disabled ([#13865](https://togithub.com/vitejs/vite/issues/13865)) ([df77991](https://togithub.com/vitejs/vite/commit/df77991)), closes [#13865](https://togithub.com/vitejs/vite/issues/13865) - fix(optimizer): enable experimentalDecorators by default ([#13981](https://togithub.com/vitejs/vite/issues/13981)) ([f8a5ffc](https://togithub.com/vitejs/vite/commit/f8a5ffc)), closes [#13981](https://togithub.com/vitejs/vite/issues/13981) - perf: replace startsWith with === ([#13989](https://togithub.com/vitejs/vite/issues/13989)) ([3aab14e](https://togithub.com/vitejs/vite/commit/3aab14e)), closes [#13989](https://togithub.com/vitejs/vite/issues/13989) - perf: single slash does not need to be replaced ([#13980](https://togithub.com/vitejs/vite/issues/13980)) ([66f522c](https://togithub.com/vitejs/vite/commit/66f522c)), closes [#13980](https://togithub.com/vitejs/vite/issues/13980) - perf: use Intl.DateTimeFormatter instead of toLocaleTimeString ([#13951](https://togithub.com/vitejs/vite/issues/13951)) ([af53a1d](https://togithub.com/vitejs/vite/commit/af53a1d)), closes [#13951](https://togithub.com/vitejs/vite/issues/13951) - perf: use Intl.NumberFormat instead of toLocaleString ([#13949](https://togithub.com/vitejs/vite/issues/13949)) ([a48bf88](https://togithub.com/vitejs/vite/commit/a48bf88)), closes [#13949](https://togithub.com/vitejs/vite/issues/13949) - perf: use magic-string hires boundary for sourcemaps ([#13971](https://togithub.com/vitejs/vite/issues/13971)) ([b9a8d65](https://togithub.com/vitejs/vite/commit/b9a8d65)), closes [#13971](https://togithub.com/vitejs/vite/issues/13971) - chore(reporter): remove unnecessary map ([#13972](https://togithub.com/vitejs/vite/issues/13972)) ([dd9d4c1](https://togithub.com/vitejs/vite/commit/dd9d4c1)), closes [#13972](https://togithub.com/vitejs/vite/issues/13972) - refactor: add new overload to the type of defineConfig ([#13958](https://togithub.com/vitejs/vite/issues/13958)) ([24c12fe](https://togithub.com/vitejs/vite/commit/24c12fe)), closes [#13958](https://togithub.com/vitejs/vite/issues/13958) ### [`v4.4.7`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small447-2023-07-24-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.6...v4.4.7) - fix: `optimizeDeps.include` not working with paths inside packages ([#13922](https://togithub.com/vitejs/vite/issues/13922)) ([06e4f57](https://togithub.com/vitejs/vite/commit/06e4f57)), closes [#13922](https://togithub.com/vitejs/vite/issues/13922) - fix: lightningcss fails with html-proxy ([#13776](https://togithub.com/vitejs/vite/issues/13776)) ([6b56094](https://togithub.com/vitejs/vite/commit/6b56094)), closes [#13776](https://togithub.com/vitejs/vite/issues/13776) - fix: prepend `config.base` to vite/env path ([#13941](https://togithub.com/vitejs/vite/issues/13941)) ([8e6cee8](https://togithub.com/vitejs/vite/commit/8e6cee8)), closes [#13941](https://togithub.com/vitejs/vite/issues/13941) - fix(html): support `import.meta.env` define replacement without quotes ([#13425](https://togithub.com/vitejs/vite/issues/13425)) ([883089c](https://togithub.com/vitejs/vite/commit/883089c)), closes [#13425](https://togithub.com/vitejs/vite/issues/13425) - fix(proxy): handle error when proxy itself errors ([#13929](https://togithub.com/vitejs/vite/issues/13929)) ([4848e41](https://togithub.com/vitejs/vite/commit/4848e41)), closes [#13929](https://togithub.com/vitejs/vite/issues/13929) - chore(eslint): allow type annotations ([#13920](https://togithub.com/vitejs/vite/issues/13920)) ([d1264fd](https://togithub.com/vitejs/vite/commit/d1264fd)), closes [#13920](https://togithub.com/vitejs/vite/issues/13920) ### [`v4.4.6`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small446-2023-07-21-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.5...v4.4.6) - fix: constrain inject helpers for iife ([#13909](https://togithub.com/vitejs/vite/issues/13909)) ([c89f677](https://togithub.com/vitejs/vite/commit/c89f677)), closes [#13909](https://togithub.com/vitejs/vite/issues/13909) - fix: display manualChunks warning only when a function is not used ([#13797](https://togithub.com/vitejs/vite/issues/13797)) ([#13798](https://togithub.com/vitejs/vite/issues/13798)) ([51c271f](https://togithub.com/vitejs/vite/commit/51c271f)), closes [#13797](https://togithub.com/vitejs/vite/issues/13797) [#13798](https://togithub.com/vitejs/vite/issues/13798) - fix: do not append `browserHash` on optimized deps during build ([#13906](https://togithub.com/vitejs/vite/issues/13906)) ([0fb2340](https://togithub.com/vitejs/vite/commit/0fb2340)), closes [#13906](https://togithub.com/vitejs/vite/issues/13906) - fix: use Bun's implementation of `ws` instead of the bundled one ([#13901](https://togithub.com/vitejs/vite/issues/13901)) ([049404c](https://togithub.com/vitejs/vite/commit/049404c)), closes [#13901](https://togithub.com/vitejs/vite/issues/13901) - feat(client): add guide to press Esc for closing the overlay ([#13896](https://togithub.com/vitejs/vite/issues/13896)) ([da389cc](https://togithub.com/vitejs/vite/commit/da389cc)), closes [#13896](https://togithub.com/vitejs/vite/issues/13896) ### [`v4.4.5`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small445-2023-07-20-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.4...v4.4.5) - fix: "EISDIR: illegal operation on a directory, realpath" error on RAβ¦ ([#13655](https://togithub.com/vitejs/vite/issues/13655)) ([6bd5434](https://togithub.com/vitejs/vite/commit/6bd5434)), closes [#13655](https://togithub.com/vitejs/vite/issues/13655) - fix: transform error message add file info ([#13687](https://togithub.com/vitejs/vite/issues/13687)) ([6dca41c](https://togithub.com/vitejs/vite/commit/6dca41c)), closes [#13687](https://togithub.com/vitejs/vite/issues/13687) - fix: warn when publicDir and outDir are nested ([#13742](https://togithub.com/vitejs/vite/issues/13742)) ([4eb3154](https://togithub.com/vitejs/vite/commit/4eb3154)), closes [#13742](https://togithub.com/vitejs/vite/issues/13742) - fix(build): remove warning about ineffective dynamic import from node_modules ([#13884](https://togithub.com/vitejs/vite/issues/13884)) ([33002dd](https://togithub.com/vitejs/vite/commit/33002dd)), closes [#13884](https://togithub.com/vitejs/vite/issues/13884) - fix(build): style insert order for UMD builds (fix [#13668](https://togithub.com/vitejs/vite/issues/13668)) ([#13669](https://togithub.com/vitejs/vite/issues/13669)) ([49a1b99](https://togithub.com/vitejs/vite/commit/49a1b99)), closes [#13668](https://togithub.com/vitejs/vite/issues/13668) [#13669](https://togithub.com/vitejs/vite/issues/13669) - fix(deps): update all non-major dependencies ([#13872](https://togithub.com/vitejs/vite/issues/13872)) ([975a631](https://togithub.com/vitejs/vite/commit/975a631)), closes [#13872](https://togithub.com/vitejs/vite/issues/13872) - fix(types): narrow down the return type of `defineConfig` ([#13792](https://togithub.com/vitejs/vite/issues/13792)) ([c971f26](https://togithub.com/vitejs/vite/commit/c971f26)), closes [#13792](https://togithub.com/vitejs/vite/issues/13792) - chore: fix typos ([#13862](https://togithub.com/vitejs/vite/issues/13862)) ([f54e8da](https://togithub.com/vitejs/vite/commit/f54e8da)), closes [#13862](https://togithub.com/vitejs/vite/issues/13862) - chore: replace `any` with `string` ([#13850](https://togithub.com/vitejs/vite/issues/13850)) ([4606fd8](https://togithub.com/vitejs/vite/commit/4606fd8)), closes [#13850](https://togithub.com/vitejs/vite/issues/13850) - chore(deps): update dependency prettier to v3 ([#13759](https://togithub.com/vitejs/vite/issues/13759)) ([5a56941](https://togithub.com/vitejs/vite/commit/5a56941)), closes [#13759](https://togithub.com/vitejs/vite/issues/13759) - docs: fix build.cssMinify link ([#13840](https://togithub.com/vitejs/vite/issues/13840)) ([8a2a3e1](https://togithub.com/vitejs/vite/commit/8a2a3e1)), closes [#13840](https://togithub.com/vitejs/vite/issues/13840) ### [`v4.4.4`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small444-2023-07-14-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.3...v4.4.4) - chore: warning about ssr cjs format removal ([#13827](https://togithub.com/vitejs/vite/issues/13827)) ([4646e9f](https://togithub.com/vitejs/vite/commit/4646e9f)), closes [#13827](https://togithub.com/vitejs/vite/issues/13827) - fix(esbuild): enable experimentalDecorators by default ([#13805](https://togithub.com/vitejs/vite/issues/13805)) ([e8880f0](https://togithub.com/vitejs/vite/commit/e8880f0)), closes [#13805](https://togithub.com/vitejs/vite/issues/13805) - fix(scan): skip tsconfigRaw fallback if tsconfig is set ([#13823](https://togithub.com/vitejs/vite/issues/13823)) ([b6155a1](https://togithub.com/vitejs/vite/commit/b6155a1)), closes [#13823](https://togithub.com/vitejs/vite/issues/13823) - feat(client): close `vite-error-overlay` with Escape key ([#13795](https://togithub.com/vitejs/vite/issues/13795)) ([85bdcda](https://togithub.com/vitejs/vite/commit/85bdcda)), closes [#13795](https://togithub.com/vitejs/vite/issues/13795) ### [`v4.4.3`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small443-2023-07-11-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.4.2...v4.4.3) - fix: avoid early error when server is closed in ssr ([#13787](https://togithub.com/vitejs/vite/issues/13787)) ([89d01eb](https://togithub.com/vitejs/vite/commit/89d01eb)), closes [#13787](https://togithub.com/vitejs/vite/issues/13787) - fix(deps): update all non-major dependencies ([#13758](https://togithub.com/vitejs/vite/issues/13758)) ([8ead116](https://togithub.com/vitejs/vite/commit/8ead116)), closes [#13758](https://togithub.com/vitejs/vite/issues/13758) - fix(server): remove restart guard on restart ([#13789](https://togithub.com/vitejs/vite/issues/13789)) ([2a38ef7](https://togithub.com/vitejs/vite/commit/2a38ef7)), closes [#13789](https://togithub.com/vitejs/vite/issues/13789) ### [`v4.4.2`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small442-2023-07-07-small) [Compare Source](https://togithub.com/vitejs/vite/compare/487bdcde3399463ac68eb5ab5bc19e5096b4623b...v4.4.2) - fix(css): use single postcss instance ([#13738](https://togithub.com/vitejs/vite/issues/13738)) ([c02fac4](https://togithub.com/vitejs/vite/commit/c02fac4)), closes [#13738](https://togithub.com/vitejs/vite/issues/13738) ### [`v4.4.1`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small441-2023-07-06-small) [Compare Source](https://togithub.com/vitejs/vite/compare/3b47e34af89b8220c0aeb119f813e8315e98668e...487bdcde3399463ac68eb5ab5bc19e5096b4623b) - fix: revert [#13073](https://togithub.com/vitejs/vite/issues/13073), use consistent virtual module ID in module graph ([#13734](https://togithub.com/vitejs/vite/issues/13734)) ([f589ac0](https://togithub.com/vitejs/vite/commit/f589ac0)), closes [#13073](https://togithub.com/vitejs/vite/issues/13073) [#13734](https://togithub.com/vitejs/vite/issues/13734) - fix: revert import config module as data ([#13731](https://togithub.com/vitejs/vite/issues/13731)) ([b0bfa01](https://togithub.com/vitejs/vite/commit/b0bfa01)), closes [#13731](https://togithub.com/vitejs/vite/issues/13731) - chore: changelog notes and clean for 4.4 ([#13728](https://togithub.com/vitejs/vite/issues/13728)) ([3f4e36e](https://togithub.com/vitejs/vite/commit/3f4e36e)), closes [#13728](https://togithub.com/vitejs/vite/issues/13728) ### [`v4.4.0`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#440-2023-07-06) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.3.9...3b47e34af89b8220c0aeb119f813e8315e98668e) ##### Experimental support for Lightning CSS Starting from Vite 4.4, there is experimental support for [Lightning CSS](https://lightningcss.dev/). You can opt into it by adding [`css.transformer: 'lightningcss'`](https://main.vitejs.dev/config/shared-options.html#css-transformer) to your config file and install the optional [`lightningcss`](https://www.npmjs.com/package/lightningcss) dev dependency. If enabled, CSS files will be processed by Lightning CSS instead of PostCSS. Lightning CSS can also be used as the CSS minifier with [`build.cssMinify: 'lightningcss'`](https://main.vitejs.dev/config/build-options.html#build-cssminify). See beta docs at the [Lighting CSS guide](https://main.vitejs.dev/guide/features.html#lightning-css). ##### esbuild 0.18 update [esbuild 0.18](https://togithub.com/evanw/esbuild/blob/main/CHANGELOG.md#0180) contains backwards-incompatible changes to esbuild's handling of `tsconfig.json` files. We think they shouldn't affect Vite users, you can review [#13525](https://togithub.com/vitejs/vite/issues/13525) for more information. ##### Templates for Solid and Qwik in create-vite New starter templates have been added to [create-vite](https://vitejs.dev/guide/#scaffolding-your-first-vite-project) for [Solid](https://www.solidjs.com/) and [Qwik](https://qwik.builder.io/). Try them online at [vite.new/solid-ts](https://vite.new/solid-ts) and [vite.new/qwik-ts](https://vite.new/qwik-ts). ##### Korean Translation Vite's docs are now translated to Korean, available at [ko.vitejs.dev](https://ko.vitejs.dev). ##### Features - feat: preview mode add keyboard shortcuts ([#12968](https://togithub.com/vitejs/vite/issues/12968)) ([126e93e](https://togithub.com/vitejs/vite/commit/126e93e)), closes [#12968](https://togithub.com/vitejs/vite/issues/12968) - feat: asset type add apng ([#13294](https://togithub.com/vitejs/vite/issues/13294)) ([a11b6f6](https://togithub.com/vitejs/vite/commit/a11b6f6)), closes [#13294](https://togithub.com/vitejs/vite/issues/13294) - feat: emit event to handle chunk load errors ([#12084](https://togithub.com/vitejs/vite/issues/12084)) ([2eca54e](https://togithub.com/vitejs/vite/commit/2eca54e)), closes [#12084](https://togithub.com/vitejs/vite/issues/12084) - feat: import public non-asset URL ([#13422](https://togithub.com/vitejs/vite/issues/13422)) ([3a98558](https://togithub.com/vitejs/vite/commit/3a98558)), closes [#13422](https://togithub.com/vitejs/vite/issues/13422) - feat: support files for `fs.allow` ([#12863](https://togithub.com/vitejs/vite/issues/12863)) ([4a06e66](https://togithub.com/vitejs/vite/commit/4a06e66)), closes [#12863](https://togithub.com/vitejs/vite/issues/12863) - feat(build): warn dynamic import module with a static import alongside ([#12850](https://togithub.com/vitejs/vite/issues/12850)) ([127c334](https://togithub.com/vitejs/vite/commit/127c334)), closes [#12850](https://togithub.com/vitejs/vite/issues/12850) - feat(client): add debounce on page reload ([#13545](https://togithub.com/vitejs/vite/issues/13545)) ([d080b51](https://togithub.com/vitejs/vite/commit/d080b51)), closes [#13545](https://togithub.com/vitejs/vite/issues/13545) - feat(client): add WebSocket connections events ([#13334](https://togithub.com/vitejs/vite/issues/13334)) ([eb75103](https://togithub.com/vitejs/vite/commit/eb75103)), closes [#13334](https://togithub.com/vitejs/vite/issues/13334) - feat(config): friendly ESM file require error ([#13283](https://togithub.com/vitejs/vite/issues/13283)) ([b9a6ba0](https://togithub.com/vitejs/vite/commit/b9a6ba0)), closes [#13283](https://togithub.com/vitejs/vite/issues/13283) - feat(css): add support for Lightning CSS ([#12807](https://togithub.com/vitejs/vite/issues/12807)) ([c6c5d49](https://togithub.com/vitejs/vite/commit/c6c5d49)), closes [#12807](https://togithub.com/vitejs/vite/issues/12807) - feat(css): support at import preprocessed styles ([#8400](https://togithub.com/vitejs/vite/issues/8400)) ([2bd6077](https://togithub.com/vitejs/vite/commit/2bd6077)), closes [#8400](https://togithub.com/vitejs/vite/issues/8400) - feat(html): support image set in inline style ([#13473](https://togithub.com/vitejs/vite/issues/13473)) ([2c0faba](https://togithub.com/vitejs/vite/commit/2c0faba)), closes [#13473](https://togithub.com/vitejs/vite/issues/13473) - feat(importMetaGlob): support sub imports pattern ([#12467](https://togithub.com/vitejs/vite/issues/12467)) ([e355c9c](https://togithub.com/vitejs/vite/commit/e355c9c)), closes [#12467](https://togithub.com/vitejs/vite/issues/12467) - feat(optimizer): support glob includes ([#12414](https://togithub.com/vitejs/vite/issues/12414)) ([7792515](https://togithub.com/vitejs/vite/commit/7792515)), closes [#12414](https://togithub.com/vitejs/vite/issues/12414) - feat!: update esbuild to 0.18.2 ([#13525](https://togithub.com/vitejs/vite/issues/13525)) ([ab967c0](https://togithub.com/vitejs/vite/commit/ab967c0)), closes [#13525](https://togithub.com/vitejs/vite/issues/13525) ##### Bug Fixes - fix: check document before detect script rel ([#13559](https://togithub.com/vitejs/vite/issues/13559)) ([be4b0c0](https://togithub.com/vitejs/vite/commit/be4b0c0)), closes [#13559](https://togithub.com/vitejs/vite/issues/13559) - fix(define): stringify object parse error in build mode ([#13600](https://togithub.com/vitejs/vite/issues/13600)) ([71516db](https://togithub.com/vitejs/vite/commit/71516db)), closes [#13600](https://togithub.com/vitejs/vite/issues/13600) - fix(deps): update all non-major dependencies ([#13701](https://togithub.com/vitejs/vite/issues/13701)) ([02c6bc3](https://togithub.com/vitejs/vite/commit/02c6bc3)), closes [#13701](https://togithub.com/vitejs/vite/issues/13701) - fix(esbuild): use `useDefineForClassFields: false` when no `compilerOptions.target` is declared ([#13](https://togithub.com/vitejs/vite/issues/13) ([7ef2472](https://togithub.com/vitejs/vite/commit/7ef2472)), closes [#13708](https://togithub.com/vitejs/vite/issues/13708) - fix(pluginContainer): drop previous sourcesContent ([#13722](https://togithub.com/vitejs/vite/issues/13722)) ([9310b3a](https://togithub.com/vitejs/vite/commit/9310b3a)), closes [#13722](https://togithub.com/vitejs/vite/issues/13722) - fix: lightningCSS should load external URL in CSS file ([#13692](https://togithub.com/vitejs/vite/issues/13692)) ([8517645](https://togithub.com/vitejs/vite/commit/8517645)), closes [#13692](https://togithub.com/vitejs/vite/issues/13692) - fix: shortcut open browser when set host ([#13677](https://togithub.com/vitejs/vite/issues/13677)) ([6f1c55e](https://togithub.com/vitejs/vite/commit/6f1c55e)), closes [#13677](https://togithub.com/vitejs/vite/issues/13677) - fix(cli): convert the sourcemap option to boolean (fix [#13638](https://togithub.com/vitejs/vite/issues/13638)) ([#13663](https://togithub.com/vitejs/vite/issues/13663)) ([d444bfe](https://togithub.com/vitejs/vite/commit/d444bfe)), closes [#13638](https://togithub.com/vitejs/vite/issues/13638) [#13663](https://togithub.com/vitejs/vite/issues/13663) - fix(css): use esbuild legalComments config when minifying CSS ([#13661](https://togithub.com/vitejs/vite/issues/13661)) ([2d9008e](https://togithub.com/vitejs/vite/commit/2d9008e)), closes [#13661](https://togithub.com/vitejs/vite/issues/13661) - fix(sourcemap): preserve original sourcesContent ([#13662](https://togithub.com/vitejs/vite/issues/13662)) ([f6362b6](https://togithub.com/vitejs/vite/commit/f6362b6)), closes [#13662](https://togithub.com/vitejs/vite/issues/13662) - fix(ssr): transform superclass identifier ([#13635](https://togithub.com/vitejs/vite/issues/13635)) ([c5b2c8f](https://togithub.com/vitejs/vite/commit/c5b2c8f)), closes [#13635](https://togithub.com/vitejs/vite/issues/13635) - fix: show error position ([#13623](https://togithub.com/vitejs/vite/issues/13623)) ([90271a6](https://togithub.com/vitejs/vite/commit/90271a6)), closes [#13623](https://togithub.com/vitejs/vite/issues/13623) - fix(hmr): only invalidate `lastHMRTimestamp` of importers if the invalidated module is not a HMR bou ([1143e0b](https://togithub.com/vitejs/vite/commit/1143e0b)), closes [#13024](https://togithub.com/vitejs/vite/issues/13024) - fix(indexHtml): decode html URI ([#13581](https://togithub.com/vitejs/vite/issues/13581)) ([f8868af](https://togithub.com/vitejs/vite/commit/f8868af)), closes [#13581](https://togithub.com/vitejs/vite/issues/13581) - fix: avoid binding ClassExpression ([#13572](https://togithub.com/vitejs/vite/issues/13572)) ([1a0c806](https://togithub.com/vitejs/vite/commit/1a0c806)), closes [#13572](https://togithub.com/vitejs/vite/issues/13572) - fix: the shortcut fails to open browser when set the host ([#13579](https://togithub.com/vitejs/vite/issues/13579)) ([e0a48c5](https://togithub.com/vitejs/vite/commit/e0a48c5)), closes [#13579](https://togithub.com/vitejs/vite/issues/13579) - fix(proxy): forward SSE close event ([#13578](https://togithub.com/vitejs/vite/issues/13578)) ([4afbccb](https://togithub.com/vitejs/vite/commit/4afbccb)), closes [#13578](https://togithub.com/vitejs/vite/issues/13578) - fix: allow using vite as a proxy for another vite server ([#13218](https://togithub.com/vitejs/vite/issues/13218)) ([711dd80](https://togithub.com/vitejs/vite/commit/711dd80)), closes [#13218](https://togithub.com/vitejs/vite/issues/13218) - fix: await requests to before server restart ([#13262](https://togithub.com/vitejs/vite/issues/13262)) ([0464398](https://togithub.com/vitejs/vite/commit/0464398)), closes [#13262](https://togithub.com/vitejs/vite/issues/13262) - fix: esm detection with `export const { A, B }` pattern ([#13483](https://togithub.com/vitejs/vite/issues/13483)) ([ea1bcc9](https://togithub.com/vitejs/vite/commit/ea1bcc9)), closes [#13483](https://togithub.com/vitejs/vite/issues/13483) - fix: keep track of ssr version of imported modules separately ([#11973](https://togithub.com/vitejs/vite/issues/11973)) ([8fe6952](https://togithub.com/vitejs/vite/commit/8fe6952)), closes [#11973](https://togithub.com/vitejs/vite/issues/11973) - fix: make optimize error available to meta-framework ([#13495](https://togithub.com/vitejs/vite/issues/13495)) ([b70e783](https://togithub.com/vitejs/vite/commit/b70e783)), closes [#13495](https://togithub.com/vitejs/vite/issues/13495) - fix: only show the listened IP when host is specified ([#13412](https://togithub.com/vitejs/vite/issues/13412)) ([20b0cae](https://togithub.com/vitejs/vite/commit/20b0cae)), closes [#13412](https://togithub.com/vitejs/vite/issues/13412) - fix: race condition creation module in graph in transformRequest ([#13085](https://togithub.com/vitejs/vite/issues/13085)) ([43cbbcf](https://togithub.com/vitejs/vite/commit/43cbbcf)), closes [#13085](https://togithub.com/vitejs/vite/issues/13085) - fix: remove deprecated config.server.base ([#13482](https://togithub.com/vitejs/vite/issues/13482)) ([dc597bd](https://togithub.com/vitejs/vite/commit/dc597bd)), closes [#13482](https://togithub.com/vitejs/vite/issues/13482) - fix: remove extra path shorten when resolving from a dir ([#13381](https://togithub.com/vitejs/vite/issues/13381)) ([5503198](https://togithub.com/vitejs/vite/commit/5503198)), closes [#13381](https://togithub.com/vitejs/vite/issues/13381) - fix: show network URLs when `--host 0.0.0.0` ([#13438](https://togithub.com/vitejs/vite/issues/13438)) ([00ee8c1](https://togithub.com/vitejs/vite/commit/00ee8c1)), closes [#13438](https://togithub.com/vitejs/vite/issues/13438) - fix: timestamp config dynamicImport ([#13502](https://togithub.com/vitejs/vite/issues/13502)) ([6a87c65](https://togithub.com/vitejs/vite/commit/6a87c65)), closes [#13502](https://togithub.com/vitejs/vite/issues/13502) - fix: unexpected config temporary file ([#13269](https://togithub.com/vitejs/vite/issues/13269)) ([ff3ce31](https://togithub.com/vitejs/vite/commit/ff3ce31)), closes [#13269](https://togithub.com/vitejs/vite/issues/13269) - fix: use consistent virtual module ID in module graph ([#13073](https://togithub.com/vitejs/vite/issues/13073)) ([aa1776f](https://togithub.com/vitejs/vite/commit/aa1776f)), closes [#13073](https://togithub.com/vitejs/vite/issues/13073) - fix(build): make output warning message clearer ([#12924](https://togithub.com/vitejs/vite/issues/12924)) ([54ab3c8](https://togithub.com/vitejs/vite/commit/54ab3c8)), closes [#12924](https://togithub.com/vitejs/vite/issues/12924) - fix(debug): import performance from perf_hooks ([#13464](https://togithub.com/vitejs/vite/issues/13464)) ([d458ccd](https://togithub.com/vitejs/vite/commit/d458ccd)), closes [#13464](https://togithub.com/vitejs/vite/issues/13464) - fix(deps): update all non-major dependencies ([#13059](https://togithub.com/vitejs/vite/issues/13059)) ([123ef4c](https://togithub.com/vitejs/vite/commit/123ef4c)), closes [#13059](https://togithub.com/vitejs/vite/issues/13059) - fix(deps): update all non-major dependencies ([#13488](https://togithub.com/vitejs/vite/issues/13488)) ([bd09248](https://togithub.com/vitejs/vite/commit/bd09248)), closes [#13488](https://togithub.com/vitejs/vite/issues/13488) - fix(deps): update sirv to 2.0.3 ([#13057](https://togithub.com/vitejs/vite/issues/13057)) ([d814d6c](https://togithub.com/vitejs/vite/commit/d814d6c)), closes [#13057](https://togithub.com/vitejs/vite/issues/13057) - fix(mergeConfig): don't accept callback config ([#13135](https://togithub.com/vitejs/vite/issues/13135)) ([998512b](https://togithub.com/vitejs/vite/commit/998512b)), closes [#13135](https://togithub.com/vitejs/vite/issues/13135) - fix(optimizer): include exports for css modules ([#13519](https://togithub.com/vitejs/vite/issues/13519)) ([1fd9919](https://togithub.com/vitejs/vite/commit/1fd9919)), closes [#13519](https://togithub.com/vitejs/vite/issues/13519) - fix(resolve): always use `module` condition ([#13370](https://togithub.com/vitejs/vite/issues/13370)) ([367920b](https://togithub.com/vitejs/vite/commit/367920b)), closes [#13370](https://togithub.com/vitejs/vite/issues/13370) - fix(ssr): fix crash when a pnpm/Yarn workspace depends on a CJS package ([#9763](https://togithub.com/vitejs/vite/issues/9763)) ([9e1086b](https://togithub.com/vitejs/vite/commit/9e1086b)), closes [#9763](https://togithub.com/vitejs/vite/issues/9763) ##### Previous Changelogs ##### [4.4.0-beta.4](https://togithub.com/vitejs/vite/compare/v4.4.0-beta.3....v4.4.0-beta.4) (2023-07-03) See [4.4.0-beta.4 changelog](https://togithub.com/vitejs/vite/blob/v4.4.0-beta.4/packages/vite/CHANGELOG.md) ##### [4.4.0-beta.3](https://togithub.com/vitejs/vite/compare/v4.4.0-beta.2....v4.4.0-beta.3) (2023-06-25) See [4.4.0-beta.3 changelog](https://togithub.com/vitejs/vite/blob/v4.4.0-beta.3/packages/vite/CHANGELOG.md) ##### [4.4.0-beta.2](https://togithub.com/vitejs/vite/compare/v4.4.0-beta.1....v4.4.0-beta.2) (2023-06-22) See [4.4.0-beta.2 changelog](https://togithub.com/vitejs/vite/blob/v4.4.0-beta.2/packages/vite/CHANGELOG.md) ##### [4.4.0-beta.1](https://togithub.com/vitejs/vite/compare/v4.4.0-beta.0....v4.4.0-beta.1) (2023-06-21) See [4.4.0-beta.1 changelog](https://togithub.com/vitejs/vite/blob/v4.4.0-beta.1/packages/vite/CHANGELOG.md) ##### [4.4.0-beta.0](https://togithub.com/vitejs/vite/compare/v4.3.9....v4.4.0-beta.0) (2023-06-20) See [4.4.0-beta.0 changelog](https://togithub.com/vitejs/vite/blob/v4.4.0-beta.0/packages/vite/CHANGELOG.md) ### [`v4.3.9`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small439-2023-05-26-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.3.8...v4.3.9) - fix: fs.deny with leading double slash ([#13348](https://togithub.com/vitejs/vite/issues/13348)) ([813ddd6](https://togithub.com/vitejs/vite/commit/813ddd6)), closes [#13348](https://togithub.com/vitejs/vite/issues/13348) - fix: optimizeDeps during build and external ids ([#13274](https://togithub.com/vitejs/vite/issues/13274)) ([e3db771](https://togithub.com/vitejs/vite/commit/e3db771)), closes [#13274](https://togithub.com/vitejs/vite/issues/13274) - fix(css): return deps if have no postcss plugins ([#13344](https://togithub.com/vitejs/vite/issues/13344)) ([28923fb](https://togithub.com/vitejs/vite/commit/28923fb)), closes [#13344](https://togithub.com/vitejs/vite/issues/13344) - fix(legacy): style insert order ([#13266](https://togithub.com/vitejs/vite/issues/13266)) ([e444375](https://togithub.com/vitejs/vite/commit/e444375)), closes [#13266](https://togithub.com/vitejs/vite/issues/13266) - chore: revert prev release commit ([2a30a07](https://togithub.com/vitejs/vite/commit/2a30a07)) - release: v4.3.9 ([5c9abf7](https://togithub.com/vitejs/vite/commit/5c9abf7)) - docs: optimizeDeps.needsInterop ([#13323](https://togithub.com/vitejs/vite/issues/13323)) ([b34e79c](https://togithub.com/vitejs/vite/commit/b34e79c)), closes [#13323](https://togithub.com/vitejs/vite/issues/13323) - test: respect commonjs options in playgrounds ([#13273](https://togithub.com/vitejs/vite/issues/13273)) ([19e8c68](https://togithub.com/vitejs/vite/commit/19e8c68)), closes [#13273](https://togithub.com/vitejs/vite/issues/13273) - refactor: simplify SSR options' if statement ([#13254](https://togithub.com/vitejs/vite/issues/13254)) ([8013a66](https://togithub.com/vitejs/vite/commit/8013a66)), closes [#13254](https://togithub.com/vitejs/vite/issues/13254) - perf(ssr): calculate stacktrace offset lazily ([#13256](https://togithub.com/vitejs/vite/issues/13256)) ([906c4c1](https://togithub.com/vitejs/vite/commit/906c4c1)), closes [#13256](https://togithub.com/vitejs/vite/issues/13256) ### [`v4.3.8`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small438-2023-05-18-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.3.7...v4.3.8) - fix: avoid outdated module to crash in importAnalysis after restart ([#13231](https://togithub.com/vitejs/vite/issues/13231)) ([3609e79](https://togithub.com/vitejs/vite/commit/3609e79)), closes [#13231](https://togithub.com/vitejs/vite/issues/13231) - fix(ssr): skip updateCjsSsrExternals if legacy flag disabled ([#13230](https://togithub.com/vitejs/vite/issues/13230)) ([13fc345](https://togithub.com/vitejs/vite/commit/13fc345)), closes [#13230](https://togithub.com/vitejs/vite/issues/13230) ### [`v4.3.7`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small437-2023-05-16-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.3.6...v4.3.7) - fix: revert only watch .env files in envDir ([#12587](https://togithub.com/vitejs/vite/issues/12587)) ([#13217](https://togithub.com/vitejs/vite/issues/13217)) ([0fd4616](https://togithub.com/vitejs/vite/commit/0fd4616)), closes [#12587](https://togithub.com/vitejs/vite/issues/12587) [#13217](https://togithub.com/vitejs/vite/issues/13217) - fix(assetImportMetaUrl): allow ternary operator in template literal urls ([#13121](https://togithub.com/vitejs/vite/issues/13121)) ([d5d9a31](https://togithub.com/vitejs/vite/commit/d5d9a31)), closes [#13121](https://togithub.com/vitejs/vite/issues/13121) ### [`v4.3.6`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small436-2023-05-15-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.3.5...v4.3.6) - fix: avoid dev-server crash when ws proxy error ([#12829](https://togithub.com/vitejs/vite/issues/12829)) ([87e1f58](https://togithub.com/vitejs/vite/commit/87e1f58)), closes [#12829](https://togithub.com/vitejs/vite/issues/12829) - fix: call `tryFsResolve` for relative `new URL(foo, import.meta.url)` ([#13142](https://togithub.com/vitejs/vite/issues/13142)) ([eeb0617](https://togithub.com/vitejs/vite/commit/eeb0617)), closes [#13142](https://togithub.com/vitejs/vite/issues/13142) - fix: don't inject CSS sourcemap for direct requests ([#13115](https://togithub.com/vitejs/vite/issues/13115)) ([7d80a47](https://togithub.com/vitejs/vite/commit/7d80a47)), closes [#13115](https://togithub.com/vitejs/vite/issues/13115) - fix: handle more yarn pnp load errors ([#13160](https://togithub.com/vitejs/vite/issues/13160)) ([adf61d9](https://togithub.com/vitejs/vite/commit/adf61d9)), closes [#13160](https://togithub.com/vitejs/vite/issues/13160) - fix(build): declare moduleSideEffects for vite:modulepreload-polyfill ([#13099](https://togithub.com/vitejs/vite/issues/13099)) ([d63129b](https://togithub.com/vitejs/vite/commit/d63129b)), closes [#13099](https://togithub.com/vitejs/vite/issues/13099) - fix(css): respect `esbuild.charset` when minify ([#13190](https://togithub.com/vitejs/vite/issues/13190)) ([4fd35ed](https://togithub.com/vitejs/vite/commit/4fd35ed)), closes [#13190](https://togithub.com/vitejs/vite/issues/13190) - fix(server): intercept ping requests ([#13117](https://togithub.com/vitejs/vite/issues/13117)) ([d06cc42](https://togithub.com/vitejs/vite/commit/d06cc42)), closes [#13117](https://togithub.com/vitejs/vite/issues/13117) - fix(ssr): stacktrace uses abs path with or without sourcemap ([#12902](https://togithub.com/vitejs/vite/issues/12902)) ([88c855e](https://togithub.com/vitejs/vite/commit/88c855e)), closes [#12902](https://togithub.com/vitejs/vite/issues/12902) - perf: skip windows absolute paths for node resolve ([#13162](https://togithub.com/vitejs/vite/issues/13162)) ([e640939](https://togithub.com/vitejs/vite/commit/e640939)), closes [#13162](https://togithub.com/vitejs/vite/issues/13162) - chore: remove useless dep ([#13165](https://togithub.com/vitejs/vite/issues/13165)) ([9a7ec98](https://togithub.com/vitejs/vite/commit/9a7ec98)), closes [#13165](https://togithub.com/vitejs/vite/issues/13165) - chore(reporter): reuse clearLine ([#13156](https://togithub.com/vitejs/vite/issues/13156)) ([535795a](https://togithub.com/vitejs/vite/commit/535795a)), closes [#13156](https://togithub.com/vitejs/vite/issues/13156) ### [`v4.3.5`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small435-2023-05-05-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.3.4...v4.3.5) - fix: location is not defined error in cleanScssBugUrl ([#13100](https://togithub.com/vitejs/vite/issues/13100)) ([91d7b67](https://togithub.com/vitejs/vite/commit/91d7b67)), closes [#13100](https://togithub.com/vitejs/vite/issues/13100) - fix: unwrapId and pass ssr flag when adding to moduleGraph in this.load ([#13083](https://togithub.com/vitejs/vite/issues/13083)) ([9041e19](https://togithub.com/vitejs/vite/commit/9041e19)), closes [#13083](https://togithub.com/vitejs/vite/issues/13083) - fix(assetImportMetaUrl): reserve dynamic template literal query params ([#13034](https://togithub.com/vitejs/vite/issues/13034)) ([7089528](https://togithub.com/vitejs/vite/commit/7089528)), closes [#13034](https://togithub.com/vitejs/vite/issues/13034) - fix(debug): skip filter object args ([#13098](https://togithub.com/vitejs/vite/issues/13098)) ([d95a9af](https://togithub.com/vitejs/vite/commit/d95a9af)), closes [#13098](https://togithub.com/vitejs/vite/issues/13098) - fix(scan): handle html script tag attributes that contain ">" ([#13101](https://togithub.com/vitejs/vite/issues/13101)) ([8a37de6](https://togithub.com/vitejs/vite/commit/8a37de6)), closes [#13101](https://togithub.com/vitejs/vite/issues/13101) - fix(ssr): ignore \__esModule for ssrExportAll ([#13084](https://togithub.com/vitejs/vite/issues/13084)) ([8a8ea1d](https://togithub.com/vitejs/vite/commit/8a8ea1d)), closes [#13084](https://togithub.com/vitejs/vite/issues/13084) ### [`v4.3.4`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small434-2023-05-02-small) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.3.3...v4.3.4) - fix(define): incorrect raw expression value type in build ([#13003](https://togithub.com/vitejs/vite/issues/13003)) ([8f4cf07](https://togithub.com/vitejs/vite/commit/8f4cf07)), closes [#13003](https://togithub.com/vitejs/vite/issues/13003) - fix(importAnalysisBuild): support parsing '**VITE_PRELOAD**' ([#13023](https://togithub.com/vitejs/vite/issues/13023)) ([447df7c](https://togithub.com/vitejs/vite/commit/447df7c)), closes [#13023](https://togithub.com/vitejs/vite/issues/13023) - fix(server): should respect hmr port when middlewareMode=false ([#13040](https://togithub.com/vitejs/vite/issues/13040)) ([1ee0014](https://togithub.com/vitejs/vite/commit/1ee0014)), closes [#13040](https://togithub.com/vitejs/vite/issues/13040) - fix(ssr): track for statements as block scope ([#13021](https://togithub.com/vitejs/vite/issues/13021)) ([2f8502f](https://togithub.com/vitejs/vite/commit/2f8502f)), closes [#13021](https://togithub.com/vitejs/vite/issues/13021) - chore: add changelog for vite 4.2.2 and 3.2.6 ([#13055](https://togithub.com/vitejs/vite/issues/13055)) ([0c9f1f4](https://togithub.com/vitejs/vite/commit/0c9f1f4)), closes [#13055](https://togithub.com/vitejs/vite/issues/13055) ### [`v4.3.3`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small433-2023-04-26-small) [Compare Source](https://togithub.com/vitejs/vite/compare/1bc42cfb2abb2912a613f8f1d9de3d4348b41144...v4.3.3) - fix: address file path mismatch when loading Vite config file on Windows (fix [#12923](https://togithub.com/vitejs/vite/issues/12923)) ([#13005](https://togithub.com/vitejs/vite/issues/13005)) ([84c4118](https://togithub.com/vitejs/vite/commit/84c4118)), closes [#12923](https://togithub.com/vitejs/vite/issues/12923) [#13005](https://togithub.com/vitejs/vite/issues/13005) - fix: undefined document in worker ([#12988](https://togithub.com/vitejs/vite/issues/12988)) ([08c1452](https://togithub.com/vitejs/vite/commit/08c1452)), closes [#12988](https://togithub.com/vitejs/vite/issues/12988) - fix(resolve): deep import resolvedId error ([#13010](https://togithub.com/vitejs/vite/issues/13010)) ([30a41ff](https://togithub.com/vitejs/vite/commit/30a41ff)), closes [#13010](https://togithub.com/vitejs/vite/issues/13010) - feat: optimize deps option to turn off auto discovery ([#13000](https://togithub.com/vitejs/vite/issues/13000)) ([bd86375](https://togithub.com/vitejs/vite/commit/bd86375)), closes [#13000](https://togithub.com/vitejs/vite/issues/13000) - chore(deps): update all non-major dependencies ([#12805](https://togithub.com/vitejs/vite/issues/12805)) ([5731ac9](https://togithub.com/vitejs/vite/commit/5731ac9)), closes [#12805](https://togithub.com/vitejs/vite/issues/12805) ### [`v4.3.2`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small432-2023-04-25-small) [Compare Source](https://togithub.com/vitejs/vite/compare/2a8779c5779ddcf1dd726be39c4547b4851b45cf...1bc42cfb2abb2912a613f8f1d9de3d4348b41144) - fix: status optional in windows network drive regex (fix: [#12948](https://togithub.com/vitejs/vite/issues/12948)) ([#12949](https://togithub.com/vitejs/vite/issues/12949)) ([f781fc6](https://togithub.com/vitejs/vite/commit/f781fc6)), closes [#12948](https://togithub.com/vitejs/vite/issues/12948) [#12949](https://togithub.com/vitejs/vite/issues/12949) - fix: use realpathSync for node <16.18 on windows ([#12971](https://togithub.com/vitejs/vite/issues/12971)) ([965839c](https://togithub.com/vitejs/vite/commit/965839c)), closes [#12971](https://togithub.com/vitejs/vite/issues/12971) - fix(ssr): hoist statements after hashbang ([#12985](https://togithub.com/vitejs/vite/issues/12985)) ([07bd6d1](https://togithub.com/vitejs/vite/commit/07bd6d1)), closes [#12985](https://togithub.com/vitejs/vite/issues/12985) - chore: build time message setting color ([#12940](https://togithub.com/vitejs/vite/issues/12940)) ([ada7cd5](https://togithub.com/vitejs/vite/commit/ada7cd5)), closes [#12940](https://togithub.com/vitejs/vite/issues/12940) - chore: remove extra ) in changelog ([#12932](https://togithub.com/vitejs/vite/issues/12932)) ([e7924d2](https://togithub.com/vitejs/vite/commit/e7924d2)), closes [#12932](https://togithub.com/vitejs/vite/issues/12932) - chore: upgrade rollup ([#12965](https://togithub.com/vitejs/vite/issues/12965)) ([bdb2f25](https://togithub.com/vitejs/vite/commit/bdb2f25)), closes [#12965](https://togithub.com/vitejs/vite/issues/12965) - refactor: resolveExports ([#10917](https://togithub.com/vitejs/vite/issues/10917)) ([ad21ec3](https://togithub.com/vitejs/vite/commit/ad21ec3)), closes [#10917](https://togithub.com/vitejs/vite/issues/10917) ### [`v4.3.1`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small431-2023-04-20-small) [Compare Source](https://togithub.com/vitejs/vite/compare/d6468a3b1fa11f066a0f38515874f71da7b9640e...2a8779c5779ddcf1dd726be39c4547b4851b45cf) - fix: revert ensure module in graph before transforming ([#12774](https://togithub.com/vitejs/vite/issues/12774)) ([#12929](https://togithub.com/vitejs/vite/issues/12929)) ([9cc93a5](https://togithub.com/vitejs/vite/commit/9cc93a5)), closes [#12774](https://togithub.com/vitejs/vite/issues/12774) [#12929](https://togithub.com/vitejs/vite/issues/12929) - docs: 4.3 announcement and release notes ([#12925](https://togithub.com/vitejs/vite/issues/12925)) ([f29c582](https://togithub.com/vitejs/vite/commit/f29c582)), closes [#12925](https://togithub.com/vitejs/vite/issues/12925) - chore: clean up 4.3 changelog ([55ec023](https://togithub.com/vitejs/vite/commit/55ec023)) ### [`v4.3.0`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#430-2023-04-20) [Compare Source](https://togithub.com/vitejs/vite/compare/v4.2.3...d6468a3b1fa11f066a0f38515874f71da7b9640e) Vite 4.3 is out! Read the [announcement blog post here](https://vitejs.dev/blog/announcing-vite4-3) [![Vite 4.3, It's Fast](https://vitejs.dev/og-image-announcing-vite4-3.png)](https://vitejs.dev/blog/announcing-vite4-3) In this minor, we focused on improving the dev server performance. The resolve logic got streamlined, improving hot paths and implementing smarter caching for finding `package.json`, TS config files, and resolved URL in general. You can read a detailed walkthrough of the performance work done in this blog post by one of Vite Contributors: [How we made Vite 4.3 faaaaster π](https://sun0day.github.io/blog/vite/why-vite4\_3-is-faster.html). This sprint resulted in speed improvements across the board compared to Vite 4.2. These are the performance improvements as measured by [sapphi-red/performance-compare](https://togithub.com/sapphi-red/performance-compare), which tests an app with 1000 React Components cold and warm dev server startup time as well as HMR times for a root and a leaf component: | **Vite (babel)** | Vite 4.2 | Vite 4.3 | Improvement | | :----------------- | --------: | -------: | -----------: | | **dev cold start** | 17249.0ms | 5132.4ms | -70.2% | | **dev warm start** | 6027.8ms | 4536.1ms | -24.7% | | **Root HMR** | 46.8ms | 26.7ms | -42.9% | | **Leaf HMR** | 27.0ms | 12.9ms | -52.2% | | **Vite (swc)** | Vite 4.2 | Vite 4.3 | Improvement | | :----------------- | --------: | -------: | -----------: | | **dev cold start** | 13552.5ms | 3201.0ms | -76.4% | | **dev warm start** | 4625.5ms | 2834.4ms | -38.7% | | **Root HMR** | 30.5ms | 24.0ms | -21.3% | | **Leaf HMR** | 16.9ms | 10.0ms | -40.8% | You can read more information about the benchmark [here](https://gist.github.com/sapphi-red/25be97327ee64a3c1dce793444afdf6e) ##### Features - feat: expose `isFileServingAllowed` as public utility ([#12894](https://togithub.com/vitejs/vite/issues/12894)) ([93e095c](https://togithub.com/vitejs/vite/commit/93e095c)), closes [#12894](https://togithub.com/vitejs/vite/issues/12894) - feat: reuse existing style elements in dev ([#12678](https://togithub.com/vitejs/vite/issues/12678)) ([3a41bd8](https://togithub.com/vitejs/vite/commit/3a41bd8)), closes [#12678](https://togithub.com/vitejs/vite/issues/12678) - feat: skip pinging the server when the tab is not shown ([#12698](https://togithub.com/vitejs/vite/issues/12698)) ([bedcd8f](https://togithub.com/vitejs/vite/commit/bedcd8f)), closes [#12698](https://togithub.com/vitejs/vite/issues/12698) - feat(create-vite): use typescript 5.0 in templates ([#12481](https://togithub.com/vitejs/vite/issues/12481)) ([8582e2d](https://togithub.com/vitejs/vite/commit/8582e2d)), closes [#12481](https://togithub.com/vitejs/vite/issues/12481) - feat: use preview server parameter in preview server hook ([#11647](https://togithub.com/vitejs/vite/issues/11647)) ([4c142ea](https://togithub.com/vitejs/vite/commit/4c142ea)), closes [#11647](https://togithub.com/vitejs/vite/issues/11647) - feat(reporter): show gzip info for all compressible files (fix [#11288](https://togithub.com/vitejs/vite/issues/11288)) ([#12485](https://togithub.com/vitejs/vite/issues/12485)) ([03502c8](https://togithub.com/vitejs/vite/commit/03502c8)), closes [#11288](https://togithub.com/vitejs/vite/issues/11288) [#12485](https://togithub.com/vitejs/vite/issues/12485) - feat(server): allow to import `data:` uris ([#12645](https://togithub.com/vitejs/vite/issues/12645)) ([4886d9f](https://togithub.com/vitejs/vite/commit/4886d9f)), closes [#12645](https://togithub.com/vitejs/vite/issues/12645) - feat: add opus filetype to assets & mime types ([#12526](https://togithub.com/vitejs/vite/issues/12526)) ([63524ba](https://togithub.com/vitejs/vite/commit/63524ba)), closes [#12526](https://togithub.com/vitejs/vite/issues/12526) ##### Performance - perf: parallelize await exportsData from depsInfo ([#12869](https://togithub.com/vitejs/vite/issues/12869)) ([ab3a530](https://togithub.com/vitejs/vite/commit/ab3a530)), closes [#12869](https://togithub.com/vitejs/vite/issues/12869) - perf: avoid side effects resolving in dev and in the optimizer/scanner ([#12789](https://togithub.com/vitejs/vite/issues/12789)) ([fb904f9](https://togithub.com/vitejs/vite/commit/fb904f9)), closes [#12789](https://togithub.com/vitejs/vite/issues/12789) - perf: parallelize imports processing in import analysis plugin ([#12754](https://togithub.com/vitejs/vite/issues/12754)) ([037a6c7](https://togithub.com/vitejs/vite/commit/037a6c7)), closes [#12754](https://togithub.com/vitejs/vite/issues/12754) - perf: unresolvedUrlToModule promise cache ([#12725](https://togithub.com/vitejs/vite/issues/12725)) ([80c5Configuration
π Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
π¦ Automerge: Enabled.
β» Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
π Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.