Next generation frontend tooling.
Release activity
| Jun | Jul | Aug | Sep | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Sunday | No releases on Jul 5, 2026 | No releases on Jul 12, 2026 | No releases on Jul 19, 2026 | No releases on Jul 26, 2026 | No releases on Aug 2, 2026 | No releases on Aug 9, 2026 | No releases on Aug 16, 2026 | No releases on Aug 23, 2026 | No releases on Aug 30, 2026 | No releases on Sep 6, 2026 | ||||||
| Monday | No releases on Jul 6, 2026 | No releases on Jul 13, 2026 | No releases on Jul 20, 2026 | No releases on Jul 27, 2026 | No releases on Aug 3, 2026 | No releases on Aug 10, 2026 | No releases on Aug 17, 2026 | 1 release on Aug 24, 2026 | No releases on Aug 31, 2026 | 1 release on Sep 7, 2026 | ||||||
| Tuesday | 3 releases on Jun 30, 2026 | No releases on Jul 7, 2026 | No releases on Jul 14, 2026 | No releases on Jul 21, 2026 | No releases on Jul 28, 2026 | No releases on Aug 4, 2026 | No releases on Aug 11, 2026 | No releases on Aug 18, 2026 | No releases on Aug 25, 2026 | No releases on Sep 1, 2026 | No releases on Sep 8, 2026 | |||||
| Wednesday | No releases on Jul 1, 2026 | No releases on Jul 8, 2026 | No releases on Jul 15, 2026 | 1 release on Jul 22, 2026 | No releases on Jul 29, 2026 | No releases on Aug 5, 2026 | No releases on Aug 12, 2026 | No releases on Aug 19, 2026 | No releases on Aug 26, 2026 | 1 release on Sep 2, 2026 | No releases on Sep 9, 2026 | |||||
| Thursday | 1 release on Jul 2, 2026 | 2 releases on Jul 9, 2026 | 2 releases on Jul 16, 2026 | 1 release on Jul 23, 2026 | 2 releases on Jul 30, 2026 | 2 releases on Aug 6, 2026 | No releases on Aug 13, 2026 | 1 release on Aug 20, 2026 | No releases on Aug 27, 2026 | No releases on Sep 3, 2026 | 2 releases on Sep 10, 2026 | |||||
| Friday | No releases on Jul 3, 2026 | No releases on Jul 10, 2026 | No releases on Jul 17, 2026 | No releases on Jul 24, 2026 | No releases on Jul 31, 2026 | No releases on Aug 7, 2026 | No releases on Aug 14, 2026 | No releases on Aug 21, 2026 | No releases on Aug 28, 2026 | No releases on Sep 4, 2026 | ||||||
| Saturday | No releases on Jul 4, 2026 | No releases on Jul 11, 2026 | No releases on Jul 18, 2026 | No releases on Jul 25, 2026 | No releases on Aug 1, 2026 | No releases on Aug 8, 2026 | No releases on Aug 15, 2026 | No releases on Aug 22, 2026 | No releases on Aug 29, 2026 | No releases on Sep 5, 2026 |
20 releases since Jun 30, 2026, busiest day 3
Changelog
- Avoid settling seen preload dependencies for performance in build
- Pre-compile context matchers at server creation for proxy performance
- Handle CRLF line endings in code frame positions
- Only treat whole node_modules path segments as dependencies
From Vite
v8.3.0-beta.1
Pre-release- Enable dev server integration for devtools
- Keep hash placeholders as-is in resolveFileUrl hook
- Mark payload delivered on client report in bundled-dev
- Do not inline preload link targets in HTML
- Resolve the actual package root in findNearestMainPackageData for nested package.json
- Fix shortcuts extend error
From Vite
Features
Bug Fixes
- build: keep hash placeholders as-is in
resolveFileUrlhook (#23422) (e8d6a4d) - bundled-dev: mark payload delivered on client report (#23373) (a6d43bc)
- deps: update all non-major dependencies (#23445) (fc7c104)
- html: don't inline preload link targets (fix #13355) (#23387) (12e709c)
- resolve the actual package root in findNearestMainPackageData for nested package.json (#23356) (8492422)
- shortcuts extend error (#23447) (4ec58d1)
Miscellaneous Chores
v8.3.0-beta.0
Pre-release- Accept Rolldown watch options in server.watch
- Add closeServer and closePreviewServer hooks
- Add top-level tsconfig option
- Add warning for unsupported hooks in plugin returned from applyToEnvironment hook
- Support naming the CPU profile via --profile [name] in CLI
- Warn on named imports from JSON modules in config
- Minify style tag in CSS
- Preserve search params attached to workers
- Support subpath imports in dynamic import statements
- Use import.meta.ROLLDOWN_FILE_URL_* for assets in JS
- Use import.meta.ROLLDOWN_FILE_URL_* for other plugins
- Remove worker chunk if it's detected that it's not referenced
- Close bundles when generation fails
- Keep newline-separated srcset candidates intact in CSS
- Run closeBundle after buildEnd failure in dev
- Handle import.meta.hot.invalidate in virtual module for HMR
- Handle dot in srcset density descriptor in utils
- Match timestamp query parameter with proper delimiters in utils
- Delete unused PluginContainerOptions
- Delete unused esbuildPlugin
From Vite
Features
- accept Rolldown watch options in
server.watch(#23133) (1b5cfe3) - add closeServer and closePreviewServer hooks (#23110) (e17d2d5)
- add top-level
tsconfigoption (#23310) (93164c3) - add warning for unsupported hooks in plugin returned from
applyToEnvironmenthook (#23191) (fdef04f) - cli: support naming the CPU profile via --profile [name] (#23042) (a500dee)
- config: warn on named imports from JSON modules (#23378) (472385e)
- css: minify style tag (#23183) (8156684)
- searched params attached to workers are now preserved (#22280) (517b97f)
- support subpath imports in dynamic import statements (#23185) (b78e2f1)
- use
import.meta.ROLLDOWN_FILE_URL_*for assets in JS (#22888) (4366ac4) - use
import.meta.ROLLDOWN_FILE_URL_*for other plugins (#22894) (e38f29e) - worker: remove worker chunk if it's detected that it's not referenced (#22473) (924997a)
Bug Fixes
- config: close bundles when generation fails (#23256) (6bacc95)
- css: keep newline-separated srcset candidates intact (#23265) (4f9d2f4)
- deps: update all non-major dependencies (#23337) (d550815)
- deps: update all non-major dependencies (#23404) (238ad81)
- deps: update rolldown-related dependencies (#23338) (76e8082)
- deps: update rolldown-related dependencies (#23405) (b882566)
- dev: run closeBundle after buildEnd failure (#23165) (8cb872e)
- hmr: handle
import.meta.hot.invalidatein virtual module (#23171) (6162968) - utils: handle dot in srcset density descriptor (#23346) (b50e1b4)
- utils: match timestamp query parameter with proper delimiters (#23364) (41f3c6f)
Miscellaneous Chores
Code Refactoring
- delete unused
esbuildPlugin(#23381) (f40efef) - exclude postfix from
__VITE_ASSET__(#22886) (a6c08e1) - remove HmrUrl concept (#23172) (67a6807)
- use
urlIdofimport.meta.ROLLDOWN_FILE_URLin wasm plugin (#22962) (92bd2a7)
Tests
- Add nub package manager support
- Update moved eslint-react plugin links in generated README
From Vite
Features
Bug Fixes
- create-vite: update moved eslint-react plugin links in generated README (#23284) (1cbf7d6)
- deps: update all non-major dependencies (#23136) (14454fd)
- deps: update all non-major dependencies (#23217) (ba958bd)
- deps: update all non-major dependencies (#23337) (d550815)
- deps: update rolldown-related dependencies (#23070) (7ac6f7f)
Miscellaneous Chores
- Widen @vitejs/devtools peer range to v0.5.0
- Handle lazy request error in bundled-dev
- Hot update through circular imports instead of reloading in bundled-dev
- Resolve sourcemap paths against sourcemap location
- Don't pass empty targets to lightningcss
- Fix match escaped dots to support $-prefixed define keys
- Update all non-major dependencies
- Update rolldown-related dependencies
- Exclude completed modules from in-flight cycle detection in module-runner
- Close custom extension analysis bundles in optimizer
- Reduce Windows 8.3-short-name detection false-positives
- Respect resolve.preserveSymlinks when resolving root
- Rewrite computed key of destructing parameter in SSR
- Update outdated upstream file links in license comments
From Vite
Features
Bug Fixes
- bundled-dev: handle lazy request error (#23291) (3ba026d)
- bundled-dev: hot update through circular imports instead of reloading (#23259) (3dbddef)
- config: resolve sourcemap paths against sourcemap location (#23239) (05a003e)
- css: don't pass empty targets to lightningcss (#23295) (2804636)
- define: fix match escaped dots to support $-prefixed define keys (#23249) (dcf88bd)
- deps: update all non-major dependencies (#23217) (ba958bd)
- deps: update rolldown-related dependencies (#23218) (83ecb2c)
- module-runner: exclude completed modules from in-flight cycle detection (fix #22999) (#23009) (d9b10a9)
- optimizer: close custom extension analysis bundles (#23207) (8fb7675)
- reduce Windows 8.3-short-name detection false-positives (#23066) (02cffa9)
- respect
resolve.preserveSymlinkswhen resolving root (fix #23197) (#23198) (8413052) - ssr: rewrite computed key of destructing parameter (#23307) (9db0b61)
- vite: update outdated upstream file links in license comments (#23285) (c0f2fc6)
Documentation
Miscellaneous Chores
Code Refactoring
- use JSON import attributes instead of readFileSync in constants (#23258) (1d9fa39)
- use named regex constants over inline literals (#22964) (5c1c6c6)
Tests
- define: close rolldown bundler after generate (#23231) (b4d66fe)
- module-runner: add TLA circular import case (#23299) (4a261f2)
- module-runner: simplify server-hmr tests (#23300) (599b44b)
- ssr: add destructing assignment case for moduleRunnerTransform (#23308) (cb77e2a)
Build System
Please refer to CHANGELOG.md for details.
- Look up pure CSS chunks through a Set for improved performance
- Make client chunkImportMap work with `sharedPlugins: true`
- Inject client script tag before chunk scripts in bundled-dev
- Don't re-run lightningcss visitor during minify
- Don't mutate the user config when resolving the lib entry from the top-level `input`
- Handle shebang ending with uncommon line terminators
- Use a random port when port is 0 in server
From Vite
Bug Fixes
- build: make client chunkImportMap work with
sharedPlugins: true(#23184) (15f0307) - bundled-dev: inject client script tag before chunk scripts (#23161) (eac0cc8)
- css: don't re-run lightningcss visitor during minify (fix #23146) (#23147) (de041a7)
- deps: update all non-major dependencies (#23136) (14454fd)
- deps: update rolldown-related dependencies (#23070) (7ac6f7f)
- don't mutate the user config when resolving the lib entry from the top-level
input(#23135) (b4bf596) - handle shebang ending with uncommon line terminators (#23038) (17f7b2f)
- server: use a random port when port is 0 (#23158) (fddf4ea)
Performance Improvements
Documentation
Miscellaneous Chores
- deps: update dependency rolldown-plugin-dts to ^0.28.0 (#23137) (4adc1e7)
- deps: update dependency strip-literal to v4 (#23140) (9db65ce)
Code Refactoring
- bundled-dev: avoid injecting server values in the bundle (#22967) (23b8a08)
- bundled-dev: remove rolldown lazy stub module workaround (#23129) (e72036e)
Tests
Please refer to CHANGELOG.md for details.
- Add `input` to `server.fs.allow`
- Support worker file update accepted by HMR in bundled-dev
- Include column in config incompatibility location
- Resolve interface name for explicit host in network URLs
- Reload once after rebuild instead of via the fallback page in bundled-dev
- Print build errors to the terminal when an HMR update fails in bundledDev
- Preserve environment snapshot during server restart
- Interop imports injected into optimized dep files by plugins
- Keep stack trace interception working when `Object.prototype` is frozen in module-runner
- Strip base in indexHtml module graph lookup
- Support resolving top-level input option with plugins
From Vite
Features
- add
inputtoserver.fs.allow(#23035) (95a3cda) - bundled-dev: reload once after rebuild instead of via the fallback page (#23106) (b24381d)
- bundled-dev: support worker file update accepted by HMR (#23068) (0d04351)
- config: include column in config incompatibility location (#23064) (8a24572)
- dev: resolve interface name for explicit host in network URLs (#22965) (3ac77d9)
Bug Fixes
- bundledDev: print build errors to the terminal when an HMR update fails (#23024) (41c4658)
- deps: update all non-major dependencies (#23069) (4c07b74)
- hmr: preserve environment snapshot during server restart (#22992) (b1186c3)
- importAnalysis: interop imports injected into optimized dep files by plugins (#23029) (8c2a87d)
- module-runner: keep stack trace interception working when
Object.prototypeis frozen (#23073) (599c5b0) - server: strip base in indexHtml module graph lookup (#22932) (fa005d1)
- support resolving top-level input option with plugins (#23101) (41df81a)
Documentation
Tests
Please refer to CHANGELOG.md for details.
v8.2.0-beta.0
Pre-release- Add `input` option
- Export PostCSS config type for type-safe configs
- Label network URLs with their interface name in dev output
- Support aube lockfile in optimizer
- Support nub lockfile in optimizer
- Update rolldown-related dependencies and use client-side HMR in bundled-dev
- Expand WebAssembly test suite, unwrap WebAssembly.Global and enable js-string builtins
- Warn features incompatible with native loader in bundle loader
- Skip native config compat check when warning is ignored
- Check popular package manager lockfiles first in optimizer
- Remove `@experimental` from `resolve.tsconfigPaths` JSDoc
- Map CSS chunks in chunk import maps
- Exclude virtual modules from native config compat check
- Rewrite urls in OnceExit-injected content
- Update all non-major dependencies
- Update dependency magic-string to v1
- Remove hot data after prune
- Resolve root to real path
From Vite
Features
- add
inputoption (#22642) (9beae37) - config: warn features incompatible with native loader in bundle loader (#22850) (05302b0)
- css: export PostCSS config type for type-safe configs (#22792) (302c755)
- dev: label network URLs with their interface name (#22830) (78accc4)
- optimizer: support aube lockfile (#22813) (6319827)
- optimizer: support nub lockfile (#22891) (65d3604)
- update rolldown-related dependencies and use client-side HMR in bundled-dev (#22961) (960e9ef)
- wasm: expand test suite, unwrap WebAssembly.Global and enable js-string builtins (#22674) (9e79b51)
Bug Fixes
- build: map CSS chunks in chunk import maps (fix #22946) (#22947) (e16ff3a)
- config: exclude virtual modules from native config compat check (#22979) (2ced1fe)
- css: rewrite urls in OnceExit-injected content (#22983) (abb793e)
- deps: update all non-major dependencies (#22985) (04f345b)
- deps: update dependency magic-string to v1 (#22998) (c60b4d7)
- hmr: remove hot data after prune (#23002) (be96316)
- resolve root to real path (#22832) (55bba7b)
Performance Improvements
- config: skip native config compat check when warning is ignored (#23000) (18535d1)
- optimizer: check popular package manager lockfiles first (#22909) (14fcb66)
Documentation
Miscellaneous Chores
- Avoid duplicated buildEnd in bundled-dev
- Align overlay error message format with rolldown
- Update all non-major dependencies
- Update rolldown-related dependencies
- Don't crash stack-trace source mapping in module-runner when globalThis.Buffer is absent
- Respect importer module format for dynamic import interop with CJS deps in optimizer
- Scope switch-case declarations to the switch, not the function in SSR
From Vite
Bug Fixes
- bundled-dev: avoid duplicated
buildEnd(#22931) (8100320) - client: overlay error message format align rolldown (#22869) (5a72b87)
- deps: update all non-major dependencies (#22921) (fef682d)
- deps: update rolldown-related dependencies (#22922) (3c345e4)
- module-runner: don't crash stack-trace source mapping when globalThis.Buffer is absent (#22945) (f8b38e3)
- optimizer: respect importer module format for dynamic import interop with CJS deps (#22951) (6c08c39)
- ssr: scope switch-case declarations to the switch, not the function (#22893) (b59a73f)
Documentation
- build: fix incorrect
@defaultfor build.cssMinify (#22948) (c88c236) - build: fix incorrect
@defaultfor build.lib.formats (#22911) (369ed60)
Tests
Please refer to CHANGELOG.md for details.
Please refer to CHANGELOG.md for details.
- Prefer oxc as minifier for legacy builds
- Update all non-major dependencies
- Update rolldown-related dependencies
- Update dependency postcss-modules to v9
- Replace deprecated `onwarn` with `onLog`
- Add workaround for building on stackblitz
- Keep `import.meta.url` in preload function as-is
- Avoid backtracking in import-only check
- Avoid optimizer run for transform request before init
- Align named export function call stacktrace column with Node in SSR
- Strip pure CSS chunk imports when chunkImportMap is enabled
- Eliminate ineffectiveDynamicImport warn
From Vite
Features
Bug Fixes
- build: add workaround for building on stackblitz (#22840) (575c32c)
- build: keep
import.meta.urlin preload function as-is (#22839) (f1f90ed) - deps: update all non-major dependencies (#22865) (d4295a9)
- deps: update rolldown-related dependencies (#22866) (7cf07e4)
- html: avoid backtracking in import-only check (#22848) (b5868c0)
- optimizer: avoid optimizer run for transform request before init (#22852) (72a5e21)
- ssr: align named export function call stacktrace column with Node (#22829) (173a1b6)
- strip pure CSS chunk imports when chunkImportMap is enabled (#22841) (648bd04)
Documentation
Miscellaneous Chores
Code Refactoring
Tests
Build System
- Inject inlined CSS after the shebang line
- Bump es-module-lexer to 2.3.0
- Preload CSS for nested dynamic imports
- Correct stacktrace column position for first line in SSR
From Vite
- revert es-module-lexer to 2.1.0
- restore fix for resolving pnpm .modules.yaml from workspace root instead of cwd
- revert fix for escaping ids with multiple null bytes
- revert fix for resolving pnpm .modules.yaml from workspace root instead of cwd
From Vite
Bug Fixes
- deps: revert es-module-lexer to 2.1.0 (#22827) (0d3bd7c)
- restore, "fix: resolve pnpm .modules.yaml from workspace root instead of cwd (#22757)" (#22825) (efb98cc)
- revert, "fix: escape ids with multiple null bytes (#22687)" (cccef55)
- revert, "fix: resolve pnpm .modules.yaml from workspace root instead of cwd (#22757)" (cf97711)
Please refer to CHANGELOG.md for details.
- Update dynamic import warning to link to Vite docs
- Improve dependency optimizer messages
- Avoid stack overflow on import.meta.hot.invalidate() in bundled dev
- Serve assets emitted during HMR/lazy compile in bundled dev
- Skip plugin transform hooks for rolldown-lazy stub modules in bundledDev
- Preserve dollar signs in external @import urls with lightningcss
- Resolve tsconfig paths in CSS and Sass @import
- Escape ids with multiple null bytes
- Hide console window when running 'net use' on Windows
- Ignore bundled config temp dir
- Invert esbuild.jsxSideEffects when converting to oxc.jsx.pure
- Ignore ERR_CLOSED_SERVER in optimize-deps scanner
- Scanner should resolve input from root in optimizer
- Resolve pnpm .modules.yaml from workspace root instead of cwd
- Return sourcemap field from some plugins that were lacking
- Handle malformed URI in indexHtmlMiddleware on server
- Remove lightningcss null byte bug workaround in CSS
From Vite
Features
Bug Fixes
- bundled-dev: avoid stack overflow on
import.meta.hot.invalidate()(#22797) (709eb8e) - bundled-dev: serve assets emitted during HMR/lazy compile (#22745) (5876b2c)
- bundledDev: skip plugin transform hooks for rolldown-lazy stub modules (#22778) (8f925e2)
- css: preserve dollar signs in external
@importurls with lightningcss (#22718) (9fa7ab4) - css: resolve tsconfig paths in CSS and Sass @import (#22775) (ef0b891)
- deps: update all non-major dependencies (#22734) (e635f49)
- deps: update all non-major dependencies (#22804) (8837400)
- deps: update rolldown-related dependencies (#22591) (2ce6677)
- escape ids with multiple null bytes (#22687) (833fc30)
- hide console window when running 'net use' on Windows (#22698) (92b63f2)
- ignore bundled config temp dir (#22800) (043a810)
- invert
esbuild.jsxSideEffectswhen converting tooxc.jsx.pure(#22809) (33895ba) - optimize-deps: ignore
ERR_CLOSED_SERVERin scanner (#22784) (085a0ab) - optimizer: scanner should resolve
inputfromroot(#22769) (9722b07) - resolve pnpm .modules.yaml from workspace root instead of cwd (#22757) (2531ac7)
- return sourcemap field from some plugins that were lacking (#22782) (7e18bf8)
- server: handle malformed URI in indexHtmlMiddleware (#22781) (84f5ccc)
Miscellaneous Chores
Code Refactoring
- css: remove lightningcss null byte bug workaround (#22822) (2dafd3b)
- use pre-defined environments variable to avoid duplicate
Object.valuescalls (#22790) (1113acf)
Tests
More in Developer Tools
View allFlutter makes it easy and fast to build beautiful apps for mobile and beyond
DeepSeek Harness: Everything is a Plugin.
A terminal multiplexer: many terminals in one screen, detachable and persistent.
Python tool for converting files and office documents to Markdown.
Anthropic's agentic coding tool for the terminal, IDE and web.
The free, open-source 2D and 3D game engine.
Discussion
If you publish Vite, you can claim this product by proving you administer its repository.