7.0.4 (2025-07-10)
7.0.3 (2025-07-08)
- client: protect against window being defined but addEv undefined (#20359) (31d1467)
- define: replace optional values (#20338) (9465ae1)
- deps: update all non-major dependencies (#20366) (43ac73d)
- deps: update dependency dotenv to v17 (#20325) (45040d4)
- deps: update dependency rolldown to ^1.0.0-beta.24 (#20365) (5ab25e7)
- use
n/prefer-node-protocolrule (#20368) (38bb268)
7.0.2 (2025-07-04)
7.0.1 (2025-07-03)
- css: skip resolving resolved paths in sass (#20300) (ac528a4)
- deps: update all non-major dependencies (#20324) (3e81af3)
- types: add a global interface for Worker (#20243) (37bdfc1)
- deps: update rolldown-related dependencies (#20323) (30d2f1b)
- fix typos and grammatical errors across documentation and comments (#20337) (c1c951d)
- group commits by category in changelog (#20310) (41e83f6)
- rearrange 7.0 changelog (#20280) (eafd28a)
7.0.0 (2025-06-24)
Today, we're excited to announce the release of the next Vite major:
- Vite 7.0 announcement blog post
- Docs (translations: 简体中文, 日本語, Español, Português, 한국어, Deutsch, فارسی)
- Migration Guide
- ssr: don't access
Objectvariable in ssr transformed code (#19996) - remove
experimental.skipSsrTransformoption (#20038) - remove
HotBroadcaster(#19988) - css: always use sass compiler API (#19978)
- bump
build.targetand name itbaseline-widely-available(#20007) - bump required node version to 20.19+, 22.12+ and remove cjs build (#20032)
- css: remove sass legacy API support (#19977)
- remove deprecated
HotBroadcasterrelated types (#19987) - remove deprecated no-op type only properties (#19985)
- remove node 18 support (#19972)
- remove deprecated hook-level
enforce/transformfromtransformIndexHtmlhook (#19349) - remove deprecated splitVendorChunkPlugin (#19255)
- types: use terser types from terser package (#20274) (a5799fa)
- apply some middlewares before
configurePreviewServerhook (#20224) (b989c42) - apply some middlewares before
configureServerhook (#20222) (f5cc4c0) - add base option to import.meta.glob (#20163) (253d6c6)
- add
this.meta.viteVersion(#20088) (f55bf41) - allow passing down resolved config to vite's
createServer(#19894) (c1ae9bd) - buildApp hook (#19971) (5da659d)
- build: provide names for asset entrypoints (#19912) (c4e01dc)
- bump
build.targetand name itbaseline-widely-available(#20007) (4a8aa82) - client: support opening fileURL in editor (#20040) (1bde4d2)
- make PluginContext available for Vite-specific hooks (#19936) (7063839)
- resolve environments plugins at config time (#20120) (f6a28d5)
- stabilize
css.preprocessorMaxWorkersand default totrue(#19992) (70aee13) - stabilize
optimizeDeps.noDiscovery(#19984) (6d2dcb4)
- deps: update all non-major dependencies (#20271) (6b64d63)
- keep
import.meta.urlin bundled Vite (#20235) (3bf3a8a) - module-runner: export
ssrExportNameKey(#20266) (ac302a7) - module-runner: expose
normalizeModuleId(#20277) (9b98dcb) - deps: update all non-major dependencies (#20181) (d91d4f7)
- deps: update all non-major dependencies (#20212) (a80339b)
- align dynamic import detection (#20115) (1ea2222)
- applyToEnvironment after configResolved (#20170) (a330b80)
- deps: update all non-major dependencies (#20141) (89ca65b)
- handle dynamic import with
.then(m => m.a)(#20117) (7b7410a) - hmr: use monotonicDateNow for timestamp (#20158) (8d26785)
- optimizer: align relative
build.rollupOptions.inputresolution with rollup (#20080) (9759c29) - ssr: don't access
Objectvariable in ssr transformed code (#19996) (fceff60) - types: prefer sass-embedded types over sass types for
preprocessorOptions.sass(fix #20150) (#20166) (7db56be) - virtual svg module (#20144) (7dfcb31)
- client: render the last part of the stacktrace (#20039) (c7c1743)
- cli: make
cleanGlobalCLIOptions()clean--force(#19999) (d4a171a) - css: remove alias exclude logic from rebaseUrl (#20100) (44c6d01)
- css: sass rebase url in relative imported modules (#20067) (261fad9)
- css: should not wrap with double quote when the url rebase feature bailed out (#20068) (a33d0c7)
- deps: update all non-major dependencies (#19953) (ac8e1fb)
- deps: update all non-major dependencies (#20061) (7b58856)
- importing an optional peer dep should throw an runtime error (#20029) (d0221cd)
- merge
environments.*.resolve.noExternalproperly (#20077) (daf4a25) - merge
server.allowedHosts: truecorrectly (#20138) (2ade756) - optimizer: non object module.exports for Node builtin modules in CJS external facade (#20048) (00ac6e4)
- optimizer: show error when
computeEntriesfailed (#20079) (b742b46) - treat all
optimizeDeps.entriesvalues as globs (#20045) (1422395) - types: expose additional PluginContext types (#20129) (b6df9aa)
- "indentity" → "identity" in test description (#20225) (ea9aed7)
- deps: update rolldown-related dependencies (#20270) (f7377c3)
- typos in comments (#20259) (b135918)
- deps: update rolldown-related dependencies (#20182) (6172f41)
- deps: update rolldown-related dependencies (#20211) (b13b7f5)
- add a way to disable source maps when developing Vite (#20168) (3a30c0a)
- deps: update rolldown-related dependencies (#20140) (0387447)
- fix source map support when developing Vite (#20167) (279ab0d)
- use destructuring alias in buildEnvironment function (#19472) (501572a)
- declare version range for peer dependencies (#19979) (c9bfd57)
- deprecate
ResolvedConfig.createResolverand recommendcreateIdResolver(#20031) (d101d64) - fix comment for
devEnvironmentOptions.moduleRunnerTransform(#20035) (338081d) - generate dts internally by rolldown-plugin-dts (#20093) (a66afa3)
- remove deprecated splitVendorChunkPlugin (#19255) (91a92c7)
- remove node 18 support (#19972) (00b8a98)
- remove redundant word in comment (#20139) (9b2964d)
- remove unused deps (#20097) (d11ae6b)
- rename rollup to rolldown where appropriate (#20096) (306e250)
- speed up typechecking (#20131) (a357c19)
- use plugin hooks filter for
patch-typesplugin for bundling vite (#20089) (c127955) - use rolldown to bundle Vite itself (#19925) (7753b02)
- use rolldown-plugin-dts for dts bundling (#19990) (449d7f3)
- worker: set virtual file content in load hook (#20160) (0d60667)
- bump required node version to 20.19+, 22.12+ and remove cjs build (#20032) (2b80243)
- css: always use sass compiler API (#19978) (3bfe5c5)
- css: remove sass legacy API support (#19977) (6eaccc9)
- merge
src/node/publicUtils.tstosrc/node/index.ts(#20086) (999a1ed) - remove
experimental.skipSsrTransformoption (#20038) (6c3dd8e) - remove
HotBroadcaster(#19988) (cda8c94) - remove
options?.ssrsupport in clientInjectionsPlugin (#19589) (88e0076) - remove backward compat for calling internal plugins directly (#20001) (9072a72)
- remove deprecated
HotBroadcasterrelated types (#19987) (86b5e00) - remove deprecated env api properties (#19986) (52e5a1b)
- remove deprecated hook-level
enforce/transformfromtransformIndexHtmlhook (#19349) (6198b9d) - remove deprecated no-op type only properties (#19985) (9151c24)
- remove no-op
legacy.proxySsrExternalModules(#20013) (a37ac83) - ssr: remove ssrTransform line offset preservation (#19829) (61b6b96)
- use
hostValidationMiddleware(#20019) (83bf90e) - use
mergeWithDefaultsfor experimental option (#20012) (98c5741) - use hook filters from rollup (#19755) (0d18fc1)
- correct esbuild
useDefineForClassFieldstest (#20143) (d90796e) - skip writing files in build hook filter test (#20076) (bf8b07d)
7.0.0-beta.2 (2025-06-17)
7.0.0-beta.1 (2025-06-10)
7.0.0-beta.0 (2025-06-02)
6.3.5 (2025-05-05)
6.3.4 (2025-04-30)
- check static serve file inside sirv (#19965) (c22c43d)
- optimizer: return plain object when using
requireto import externals in optimized dependencies (#19940) (efc5eab)
6.3.3 (2025-04-24)
- assets: ensure ?no-inline is not included in the asset url in the production environment (#19496) (16a73c0)
- css: resolve relative imports in sass properly on Windows (#19920) (ffab442)
- deps: update all non-major dependencies (#19899) (a4b500e)
- ignore malformed uris in tranform middleware (#19853) (e4d5201)
- ssr: fix execution order of re-export (#19841) (ed29dee)
- ssr: fix live binding of default export declaration and hoist exports getter (#19842) (80a91ff)
6.3.2 (2025-04-18)
- css: respect
css.lightningcssoption in css minification process (#19879) (b5055e0) - deps: update all non-major dependencies (#19698) (bab4cb9)
- match default asserts case insensitive (#19852) (cbdab1d)
- open first url if host does not match any urls (#19886) (6abbdce)
6.3.1 (2025-04-17)
- avoid using
Promise.allSettledin preload function (#19805) (35c7f35) - backward compat for internal plugin
transformcalls (#19878) (a152b7c)
6.3.0 (2025-04-16)
- hmr: avoid infinite loop happening with
hot.invalidatein circular deps (#19870) (d4ee5e8) - preview: use host url to open browser (#19836) (5003434)
6.3.0-beta.2 (2025-04-11)
- addWatchFile doesn't work if base is specified (fixes #19792) (#19794) (8bed1de)
- correct the behavior when multiple transform filter options are specified (#19818) (7200dee)
- css: remove empty chunk imports correctly when chunk file name contained special characters (#19814) (b125172)
- dev: make query selector regexes more inclusive (fix #19213) (#19767) (f530a72)
- fs check with svg and relative paths (#19782) (62d7e81)
- hmr: run HMR handler sequentially (#19793) (380c10e)
- keep entry asset files imported by other files (#19779) (2fa1495)
- module-runner: allow already resolved id as entry (#19768) (e2e11b1)
- reject requests with
#in request-target (#19830) (175a839) - types: remove the
keepProcessEnvfrom theDefaultEnvironmentOptionstype (#19796) (36935b5) - unbundle
fdirto fixcommonjsOptions.dynamicRequireTargets(#19791) (71227be)
6.3.0-beta.1 (2025-04-03)
- env: add false option for envDir to disable env loading (#19503) (bca89e1)
- types: make CustomPluginOptionsVite backward compatible (#19760) (821edf1)
- align plugin hook filter behavior with pluginutils (#19736) (0bbdd2c)
- fs check in transform middleware (#19761) (5967313)
- hmr: throw non-standard error info causes logical error (#19776) (6b648c7)
6.3.0-beta.0 (2025-03-26)
- config: improve bad character warning (#19683) (998303b)
- css: support preprocessor with lightningcss (#19071) (d3450ca)
- experimental: add fetchable environment interface (#19664) (c5b7191)
- implement hook filters (#19602) (04d58b4)
- types: expose
CustomPluginOptionsVitetype (#19557) (15abc01) - types: make ImportMetaEnv strictly available (#19077) (6cf5141)
- types: type hints for hmr events (#19579) (95424b2)
- warn if
define['process.env']containspathkey with a value (#19517) (832b2c4)
- add back
.mtsto defaultresolve.extensions(#19701) (ae91bd0) - css: parse image-set without space after comma correctly (#19661) (d0d4c66)
- css: scoped css order with non-scoped css (#19678) (a3a94ab)
- deps: update all non-major dependencies (#19649) (f4e712f)
- fs raw query with query separators (#19702) (262b5ec)
- optimizer: fix incorrect picomatch usage in filter() (#19646) (300280d)
- ssr: hoist export to handle cyclic import better (#18983) (8c04c69)
[hookName].handlerin plugins (#19586) (9827df2)- reporter: only call modulesReporter when logLevel is info (#19708) (7249553)
6.2.2 (2025-03-14)
- show friendly error for malformed
base(#19616) (2476391) - worker: show asset filename conflict warning (#19591) (367d968)
- await client buildStart on top level buildStart (#19624) (b31faab)
- css: inline css correctly for double quote use strict (#19590) (d0aa833)
- deps: update all non-major dependencies (#19613) (363d691)
- indexHtml: ensure correct URL when querying module graph (#19601) (dc5395a)
- preview: use preview https config, not server (#19633) (98b3160)
- ssr: use optional chaining to prevent "undefined is not an object" happening in
ssrRewriteStacktrace(#19612) (4309755)
6.2.1 (2025-03-07)
- css: stabilize css module hashes with lightningcss in dev mode (#19481) (92125b4)
- deps: update all non-major dependencies (#19555) (f612e0f)
- reporter: fix incorrect bundle size calculation with non-ASCII characters (#19561) (437c0ed)
- sourcemap: combine sourcemaps with multiple sources without matched source (#18971) (e3f6ae1)
- ssr: named export should overwrite export all (#19534) (2fd2fc1)
- css: move environment destructuring after condition check (#19492) (c9eda23)
- html: remove unnecessary value check (#19491) (797959f)
- remove
isBuildcheck from preAliasPlugin (#19587) (c9e086d) - restore endsWith usage (#19554) (6113a96)
- use
applyToEnvironmentin internal plugins (#19588) (f678442)
- add glob import test case (#19516) (aa1d807)
- convert config playground to unit tests (#19568) (c0e68da)
- convert resolve-config playground to unit tests (#19567) (db5fb48)
6.2.0 (2025-02-25)
- deps: update all non-major dependencies (#19501) (c94c9e0)
- worker: string interpolation in dynamic worker options (#19476) (07091a1)
6.2.0-beta.1 (2025-02-21)
6.2.0-beta.0 (2025-02-21)
- css: allow scoping css to importers exports (#19418) (3ebd838)
- show
modeon server start and add env debugger (#18808) (c575b82) - use host url to open browser (#19414) (f6926ca)
6.1.1 (2025-02-19)
- css: run rewrite plugin if postcss plugin exists (#19371) (bcdb51a)
- deps: bump tsconfck (#19375) (746a583)
- deps: update all non-major dependencies (#19392) (60456a5)
- deps: update all non-major dependencies (#19440) (ccac73d)
- ensure
.[cm]?[tj]sx?static assets are JS mime (#19453) (e7ba55e) - html: ignore malformed src attrs (#19397) (aff7812)
- ignore
*.ipv4address in cert (#19416) (973283b) - worker: fix web worker type detection (#19462) (edc65ea)
6.1.0 (2025-02-05)
- show hosts in cert in CLI (#19317) (a5e306f)
- support for env var for defining allowed hosts (#19325) (4d88f6c)
- use native runtime to import the config (#19178) (7c2a794)
- print
portin the logged error message after failed WS connection withEADDRINUSE(#19212) (14027b0) - add support for
.jxl(#18855) (57b397c) - add the
builtinsenvironmentresolve(#18584) (2c2d521) - call Logger for plugin logs in build (#13757) (bf3e410)
- css: add friendly errors for IE hacks that are not supported by lightningcss (#19072) (caad985)
- export
defaultAllowedOriginsfor user-land config and 3rd party plugins (#19259) (dc8946b) - expose createServerModuleRunnerTransport (#18730) (8c24ee4)
- optimizer: support bun text lockfile (#18403) (05b005f)
- reporter: add
wasmto the compressible assets regex (#19085) (ce84142) - support async for proxy.bypass (#18940) (a6b9587)
- support log related functions in dev (#18922) (3766004)
- use module runner to import the config (#18637) (b7e0e42)
- worker: support dynamic worker option fields (#19010) (d0c3523)
- avoid builtStart during vite optimize (#19356) (fdb36e0)
- build: fix stale build manifest on watch rebuild (#19361) (fcd5785)
- allow expanding env vars in reverse order (#19352) (3f5f2bd)
- avoid packageJson without name in
resolveLibCssFilename(#19324) (f183bdf) - html: fix css disorder when building multiple entry html (#19143) (e7b4ba3)
- css: less
[@plugin](https://github.com/plugin)imports of JS files treated as CSS and rebased (fix #19268) (#19269) (602b373) - deps: update all non-major dependencies (#19296) (2bea7ce)
- don't call buildStart hooks for
vite optimize(#19347) (19ffad0) - don't call next middleware if user sent response in proxy.bypass (#19318) (7e6364d)
- resolve: preserve hash/search of file url (#19300) (d1e1b24)
- resolve: warn if node-like builtin was imported when
resolve.builtinis empty (#19312) (b7aba0b) - respect top-level
server.preTransformRequests(#19272) (12aaa58) - ssr: fix transform error due to export all id scope (#19331) (e28bce2)
- ssr: pretty print plugin error in
ssrLoadModule(#19290) (353c467) - use
nodeLikeBuiltinsforssr.target: 'webworker'withoutnoExternal: true(#19313) (9fc31b6) - change ResolvedConfig type to interface to allow extending it (#19210) (bc851e3)
- correctly resolve hmr dep ids and fallback to url (#18840) (b84498b)
- deps: update all non-major dependencies (#19190) (f2c07db)
- hmr: register inlined assets as a dependency of CSS file (#18979) (eb22a74)
- make
--forcework for all environments (#18901) (51a42c6) - resolve: support resolving TS files by JS extension specifiers in JS files (#18889) (612332b)
- ssr: combine empty source mappings (#19226) (ba03da2)
- use loc.file from rollup errors if available (#19222) (ce3fe23)
- utils: clone
RegExpvalues withnew RegExpinstead ofstructuredClone(fix #19245, fix #18875) (#19247) (56ad2be)
- rephrase browser range and features relation (#19286) (97569ef)
- update
build.manifestjsdocs (#19332) (4583781)
- update deprecate links domain (#19353) (2b2299c)
- deps: update dependency strip-literal to v3 (#19231) (1172d65)
- remove outdated code comment about
scanImportsnot being used in ssr (#19285) (fbbc6da) - unneeded name in lockfileFormats (#19275) (96092cb)
6.1.0-beta.2 (2025-02-04)
6.1.0-beta.1 (2025-02-04)
6.1.0-beta.0 (2025-01-24)
6.0.11 (2025-01-21)
preview.allowedHostswith specific values was not respected (#19246) (aeb3ec8)- allow CORS from loopback addresses by default (#19249) (3d03899)
6.0.10 (2025-01-20)
6.0.9 (2025-01-20)
- check host header to prevent DNS rebinding attacks and introduce
server.allowedHosts - default
server.cors: falseto disallow fetching from untrusted origins
- check host header to prevent DNS rebinding attacks and introduce
server.allowedHosts(bd896fb) - default
server.cors: falseto disallow fetching from untrusted origins (b09572a) - verify token for HMR WebSocket connection (029dcd6)
6.0.8 (2025-01-20)
- avoid SSR HMR for HTML files (#19193) (3bd55bc)
- build time display 7m 60s (#19108) (cf0d2c8)
- deps: update all non-major dependencies (#19098) (8639538)
- don't resolve URL starting with double slash (#19059) (35942cd)
- ensure
server.close()only called once (#19204) (db81c2d) - optimizer: use correct default install state path for yarn PnP (#19119) (e690d8b)
- resolve.conditions in ResolvedConfig was
defaultServerConditions(#19174) (ad75c56) - tree shake stringified JSON imports (#19189) (f2aed62)
- types: improve
ESBuildOptions.include / excludetype to allowreadonly (string | RegExp)[](#19146) (ea53e70) - use shared sigterm callback (#19203) (47039f4)
6.0.7 (2025-01-02)
- fix
minifywhenbuilder.sharedPlugins: true(#19025) (f7b1964) - html: error while removing
vite-ignoreattribute for inline script (#19062) (a492253) - skip the plugin if it has been called before with the same id and importer (#19016) (b178c90)
- ssr: fix semicolon injection by ssr transform (#19097) (1c102d5)
6.0.6 (2024-12-26)
- css: resolve style tags in HTML files correctly for lightningcss (#19001) (afff05c)
- css: show correct error when unknown placeholder is used for CSS modules pattern in lightningcss (#19070) (9290d85)
- replace runner-side path normalization with
fetchModule-side resolve (#18361) (9f10261) - resolve: handle package.json with UTF-8 BOM (#19000) (902567a)
- ssrTransform: preserve line offset when transforming imports (#19004) (1aa434e)
6.0.5 (2024-12-20)
6.0.4 (2024-12-19)
this.resolveskipSelf should not skip for differentidorimport(#18903) (4727320)- css: escape double quotes in
url()when lightningcss is used (#18997) (3734f80) - css: root relative import in sass modern API on Windows (#18945) (c4b532c)
- css: skip non css in custom sass importer (#18970) (21680bd)
- deps: update all non-major dependencies (#18967) (d88d000)
- deps: update all non-major dependencies (#18996) (2b4f115)
- fallback terser to main thread when function options are used (#18987) (12b612d)
- merge client and ssr values for
pluginContainer.getModuleInfo(#18895) (258cdd6) - optimizer: keep NODE_ENV as-is when keepProcessEnv is
true(#18899) (8a6bb4e) - ssr: recreate ssrCompatModuleRunner on restart (#18973) (7d6dd5d)
- better validation error message for dts build (#18948) (63b82f1)
- deps: update all non-major dependencies (#18916) (ef7a6a3)
- deps: update dependency @rollup/plugin-node-resolve to v16 (#18968) (62fad6d)
- make internal invoke event to use the same interface with
handleInvoke(#18902) (27f691b) - simplify manifest plugin code (#18890) (1bfe21b)
- test
ModuleRunnerTransportinvokeAPI (#18865) (e5f5301) - test output hash changes (#18898) (bfbb130)
6.0.3 (2024-12-05)
- config: bundle files referenced with imports field (#18887) (2b5926a)
- config: make stacktrace path correct when sourcemap is enabled (#18833) (20fdf21)
- css: rewrite url when image-set and url exist at the same time (#18868) (d59efd8)
- deps: update all non-major dependencies (#18853) (5c02236)
- handle postcss load unhandled rejections (#18886) (d5fb653)
- html: allow unexpected question mark in tag name (#18852) (1b54e50)
- make handleInvoke interface compatible with invoke (#18876) (a1dd396)
- make result interfaces for
ModuleRunnerTransport[#invoke](https://github.com/vitejs/vite/issues/invoke)more explicit (#18851) (a75fc31) - merge
environments.ssr.resolvewith rootssrconfig (#18857) (3104331) - module-runner: decode uri for file url passed to import (#18837) (88e49aa)
- no permission to create vite config file (#18844) (ff47778)
- remove CSS import in CJS correctly in some cases (#18885) (690a36f)
6.0.2 (2024-12-02)
- css: referencing aliased svg asset with lightningcss enabled errored (#18819) (ae68958)
- don't store temporary vite config file in
node_modulesif deno (#18823) (a20267b) - manifest: use
style.cssas a key for the style file forcssCodesplit: false(#18820) (ec51115) - optimizer: resolve all promises when cancelled (#18826) (d6e6194)
- resolve: don't set builtinModules to
externalby default (#18821) (2250ffa) - ssr: set
ssr.target: 'webworker'defaults as fallback (#18827) (b39e696)
- run typecheck in unit tests (#18858) (49f20bb)
- update broken links in changelog (#18802) (cb754f8)
- update broken links in changelog (#18804) (47ec49f)
6.0.1 (2024-11-27)
- default empty server
proxyprevents starting http2 server (#18788) (bbaf514) - manifest: do not override existing js manifest entry (#18776) (3b0837e)
- server: close _ssrCompatModuleRunner on server close (#18784) (9b4c410)
- server: skip hot channel client normalization for wsServer (#18782) (cc7670a)
- worker: fix
applyToEnvironmenthooks on worker build (#18793) (0c6cdb0)
- flat v6 config file (#18777) (c7b3308)
- split changelog (#18787) (8542632)
- update changelog for v6 (#18773) (b254fac)
6.0.0 (2024-11-26)
Today, we're taking another big step in Vite's story. The Vite team, contributors, and ecosystem partners are excited to announce the release of the next Vite major:
- Vite 6.0 announcement blog post
- Docs
- Translations: 简体中文, 日本語, Español, Português, 한국어, Deutsch
- Migration Guide
We want to thank the more than 1K contributors to Vite Core and the maintainers and contributors of Vite plugins, integrations, tools, and translations that have helped us craft this new major. We invite you to get involved and help us improve Vite for the whole ecosystem. Learn more at our Contributing Guide.
- drop node 21 support in version ranges (#18729)
- deps: update dependency dotenv-expand to v12 (#18697)
- resolve: allow removing conditions (#18395)
- html: support more asset sources (#11138)
- remove fs.cachedChecks option (#18493)
- proxy bypass with WebSocket (#18070)
- css: remove default import in ssr dev (#17922)
- lib: use package name for css output file name (#18488)
- update to chokidar v4 (#18453)
- support
file://resolution (#18422) - deps: update postcss-load-config to v6 (#15235)
- css: change default sass api to modern/modern-compiler (#17937)
- css: load postcss config within workspace root only (#18440)
- default
build.cssMinifyto'esbuild'for SSR (#15637) - json: add
json.stringify: 'auto'and make that the default (#18303) - bump minimal terser version to 5.16.0 (#18209)
- deps: migrate
fast-globtotinyglobby(#18243)
- add support for .cur type (#18680) (5ec9eed)
- drop node 21 support in version ranges (#18729) (a384d8f)
- enable HMR by default on ModuleRunner side (#18749) (4d2abc7)
- support
module-synccondition when loading config if enabled (#18650) (cf5028d) - add
isSsrTargetWebWorkerflag toconfigEnvironmenthook (#18620) (3f5fab0) - add
ssr.resolve.mainFieldsoption (#18646) (a6f5f5b) - expose default mainFields/conditions (#18648) (c12c653)
- extended applyToEnvironment and perEnvironmentPlugin (#18544) (8fa70cd)
- optimizer: allow users to specify their esbuild
platformoption (#18611) (0924879) - show error when accessing variables not exposed in CJS build (#18649) (87c5502)
- asset: add
?inlineand?no-inlinequeries to control inlining (#15454) (9162172) - asset: inline svg in dev if within limit (#18581) (f08b146)
- use a single transport for fetchModule and HMR support (#18362) (78dc490)
- html: support more asset sources (#11138) (8a7af50)
- resolve: allow removing conditions (#18395) (d002e7d)
- html: support
vite-ignoreattribute to opt-out of processing (#18494) (d951310) - lib: use package name for css output file name (#18488) (61cbf6f)
- log complete config in debug mode (#18289) (04f6736)
- proxy bypass with WebSocket (#18070) (3c9836d)
- support
file://resolution (#18422) (6a7e313) - update to chokidar v4 (#18453) (192d555)
- allow custom
consoleincreateLogger(#18379) (0c497d9) - css: add more stricter typing of lightningcss (#18460) (b9b925e)
- css: change default sass api to modern/modern-compiler (#17937) (d4e0442)
- read
sec-fetch-destheader to detect JS in transform (#9981) (e51dc40) - css: load postcss config within workspace root only (#18440) (d23a493)
- json: add
json.stringify: 'auto'and make that the default (#18303) (b80daa7) - add .git to deny list by default (#18382) (105ca12)
- add
environment::listen(#18263) (4d5f51d) - enable dependencies discovery and pre-bundling in ssr environments (#18358) (9b21f69)
- restrict characters useable for environment name (#18255) (9ab6180)
- support arbitrary module namespace identifier imports from cjs deps (#18236) (4389a91)
- introduce RunnableDevEnvironment (#18190) (fb292f2)
- support
this.environmentinoptionsandonLoghook (#18142) (7722c06) - css: support es2023 build target for lightningcss (#17998) (1a76300)
- Environment API (#16471) (242f550)
- expose
EnvironmentOptionstype (#18080) (35cf59c)
createRunnableDevEnvironmentreturnsRunnableDevEnvironment, notDevEnvironment(#18673) (74221c3)getModulesByFileshould return aserverModule(#18715) (b80d5ec)- catch error in full reload handler (#18713) (a10e741)
- client: overlay not appearing when multiple vite clients were loaded (#18647) (27d70b5)
- deps: update all non-major dependencies (#18691) (f005461)
- deps: update dependency dotenv-expand to v12 (#18697) (0c658de)
- display pre-transform error details (#18764) (554f45f)
- exit code on
SIGTERM(#18741) (cc55e36) - expose missing
InterceptorOptionstype (#18766) (6252c60) - html: fix inline proxy modules invalidation (#18696) (8ab04b7)
- log error when send in module runner failed (#18753) (ba821bb)
- module-runner: make evaluator optional (#18672) (fd1283f)
- optimizer: detect npm / yarn / pnpm dependency changes correctly (#17336) (#18560) (818cf3e)
- optimizer: trigger onCrawlEnd after manual included deps are registered (#18733) (dc60410)
- optimizer: workaround firefox's false warning for no sources source map (#18665) (473424e)
- ssr: replace
__vite_ssr_identity__with(0, ...)and inject;between statements (#18748) (94546be) - cjs build for perEnvironmentState et al (#18656) (95c4b3c)
- html: externalize
rollup.externalscripts correctly (#18618) (55461b4) - include more modules to prefix-only module list (#18667) (5a2103f)
- ssr: format
ssrTransformparse error (#18644) (d9be921) - ssr: preserve fetchModule error details (#18626) (866a433)
- browser field should not be included by default for
consumer: 'server'(#18575) (87b2347) - client: detect ws close correctly (#18548) (637d31b)
- resolve: run ensureVersionQuery for SSR (#18591) (63207e5)
- use
server.perEnvironmentStartEndDuringDev(#18549) (fe30349) - allow nested dependency selector to be used for
optimizeDeps.includefor SSR (#18506) (826c81a) - asset
new URL(,import.meta.url)match (#18194) (5286a90) - close watcher if it's disabled (#18521) (85bd0e9)
- config: write temporary vite config to node_modules (#18509) (72eaef5)
- css:
cssCodeSplituses the current environment configuration (#18486) (eefe895) - json: don't
json.stringifyarrays (#18541) (fa50b03) - less: prevent rebasing
[@import](https://github.com/import) url(...)(#17857) (aec5fdd) - lib: only resolve css bundle name if have styles (#18530) (5d6dc49)
- scss: improve error logs (#18522) (3194a6a)
definein environment config was not working (#18515) (052799e)- build: apply resolve.external/noExternal to server environments (#18495) (5a967cb)
- config: remove error if require resolve to esm (#18437) (f886f75)
- consider URLs with any protocol to be external (#17369) (a0336bd)
- css: remove default import in ssr dev (#17922) (eccf663)
- use picomatch to align with tinyglobby (#18503) (437795d)
- css:
cssCodeSplitinenvironments.xxx.buildis invalid (#18464) (993e71c) - css: make sass types work with sass-embedded (#18459) (89f8303)
- deps: update all non-major dependencies (#18484) (2ec12df)
- handle warmup glob hang (#18462) (409fa5c)
- manifest: non entry CSS chunk src was wrong (#18133) (c148676)
- module-runner: delay function eval until module runner instantiation (#18480) (472afbd)
- plugins: noop if config hook returns same config reference (#18467) (bd540d5)
- return the same instance of ModuleNode for the same EnvironmentModuleNode (#18455) (5ead461)
- set scripts imported by HTML moduleSideEffects=true (#18411) (2ebe4b4)
- use websocket to test server liveness before client reload (#17891) (7f9f8c6)
- add typing to
CSSOptions.preprocessorOptions(#18001) (7eeb6f2) - default
build.cssMinifyto'esbuild'for SSR (#15637) (f1d3bf7) - dev: prevent double URL encoding in server.open on macOS (#18443) (56b7176)
- preview: set resolvedUrls null after close (#18445) (65014a3)
- ssr: inject identity function at the top (#18449) (0ab20a3)
- ssr: preserve source maps for hoisted imports (fix #16355) (#16356) (8e382a6)
- augment hash for CSS files to prevent chromium erroring by loading previous files (#18367) (a569f42)
- cli:
--watchshould not overridebuild.watchoptions (#18390) (b2965c8) - css: don't transform sass function calls with namespace (#18414) (dbb2604)
- deps: update
opendependency to 10.1.0 (#18349) (5cca4bf) - deps: update all non-major dependencies (#18345) (5552583)
- more robust plugin.sharedDuringBuild (#18351) (47b1270)
- ssr:
thisin exported function should beundefined(#18329) (bae6a37) - worker: rewrite rollup
output.formatwithworker.formaton worker build error (#18165) (dc82334) injectQuerydouble encoding (#18246) (2c5f948)- add position to import analysis resolve exception (#18344) (0fe95d4)
- assets: make srcset parsing HTML spec compliant (#16323) (#18242) (0e6d4a5)
- css: dont remove JS chunk for pure CSS chunk when the export is used (#18307) (889bfc0)
- deps: bump tsconfck (#18322) (67783b2)
- deps: update all non-major dependencies (#18292) (5cac054)
- destroy the runner when runnable environment is closed (#18282) (5212d09)
- handle yarn command fail when root does not exist (#18141) (460aaff)
- hmr: don't try to rewrite imports for direct CSS soft invalidation (#18252) (a03bb0e)
- make it easier to configure environment runner (#18273) (fb35a78)
- middleware-mode: call all hot.listen when server restart (#18261) (007773b)
- optimizer: don't externalize transitive dep package name with asset extension (#18152) (fafc7e2)
- resolve: fix resolve cache key for external conditions (#18332) (93d286c)
- resolve: fix resolve cache to consider
conditionsand more (#18302) (2017a33) - types: add more overload to
defineConfig(#18299) (94e34cf) - asset import should skip handling data URIs (#18163) (70813c7)
- cache the runnable environment module runner (#18215) (95020ab)
- call
this.hot.closefor non-ws HotChannel (#18212) (bad0ccc) - close HotChannel on environment close (#18206) (2d148e3)
- config: treat all files as ESM on deno (#18081) (c1ed8a5)
- css: ensure sass compiler initialized only once (#18128) (4cc5322)
- css: fix lightningcss dep url resolution with custom root (#18125) (eb08f60)
- css: fix missing source file warning with sass modern api custom importer (#18113) (d7763a5)
- data-uri: only match ids starting with
data:(#18241) (ec0efe8) - deps: update all non-major dependencies (#18170) (c8aea5a)
- deps: upgrade rollup 4.22.4+ to ensure avoiding XSS (#18180) (ea1d0b9)
- html: make build-html plugin work with
sharedPlugins(#18214) (34041b9) - mixedModuleGraph: handle undefined id in getModulesByFile (#18201) (768a50f)
- optimizer: re-optimize when changing config
webCompatible(#18221) (a44b0a2) - require serialization for
HMRConnection.sendon implementation side (#18186) (9470011) - ssr: fix source map remapping with multiple sources (#18150) (e003a2c)
- use
config.consumerinstead ofoptions?.ssr/config.build.ssr(#18140) (21ec1ce) - vite: refactor "module cache" to "evaluated modules", pass down module to "runInlinedModule" (#18092) (e83beff)
- avoid DOM Clobbering gadget in
getRelativeUrlFromDocument(#18115) (ade1d89) - fs raw query (#18112) (9d2413c)
- preload: throw error preloading module as well (#18098) (ba56cf4)
- allow scanning exports from
script modulein svelte (#18063) (7d699aa) - build: declare
preload-helperhas no side effects (#18057) (587ad7b) - css: fallback to mainthread if logger or pkgImporter option is set for sass (#18071) (d81dc59)
- dynamicImportVars: correct glob pattern for paths with parentheses (#17940) (2a391a7)
- ensure req.url matches moduleByEtag URL to avoid incorrect 304 (#17997) (abf04c3)
- html: escape html attribute (#18067) (5983f36)
- incorrect environment consumer option resolution (#18079) (0e3467e)
- preload: allow ignoring dep errors (#18046) (3fb2889)
- store backwards compatible
ssrModuleandssrError(#18031) (cf8ced5)
- reduce bundle size for
Object.keys(import.meta.glob(...))/Object.values(import.meta.glob(...))(#18666) (ed99a2c) - worker: inline worker without base64 (#18752) (90c66c9)
- remove strip-ansi for a node built-in (#18630) (5182272)
- css: skip style.css extraction if code-split css (#18470) (34fdb6b)
- call
module.enableCompileCache()(#18323) (18f1dad) - use
crypto.hashwhen available (#18317) (2a14884)
- rename
HotUpdateContexttoHotUpdateOptions(#18718) (824c347) - add jsdocs to flags in BuilderOptions (#18516) (1507068)
- missing changes guides (#18491) (5da78a6)
- update fs.deny default in JSDoc (#18514) (1fcc83d)
- update homepage (#18274) (a99a0aa)
- fix typo in proxy.ts (#18162) (49087bd)
- add 5.4.x changelogs (#18768) (26b58c8)
- add some comments about mimes (#18705) (f07e9b9)
- deps: update all non-major dependencies (#18746) (0ad16e9)
- deps: update all non-major dependencies (#18634) (e2231a9)
- deps: update transitive deps (#18602) (0c8b152)
- tweak build config (#18622) (2a88f71)
- add warning for
/mapping inresolve.alias(#18588) (a51c254) - deps: update all non-major dependencies (#18562) (fb227ec)
- remove unused
ssrvariable (#18594) (23c39fc) - fix moduleSideEffects in build script on Windows (#18518) (25fe9e3)
- use premove instead of rimraf (#18499) (f97a578)
- deps: update postcss-load-config to v6 (#15235) (3a27f62)
- deps: update dependency picomatch to v4 (#15876) (3774881)
- combine deps license with same text (#18356) (b5d1a05)
- create-vite: mark template files as CC0 (#18366) (f6b9074)
- deps: bump TypeScript to 5.6 (#18254) (57a0e85)
- deps: migrate
fast-globtotinyglobby(#18243) (6f74a3a) - deps: update all non-major dependencies (#18404) (802839d)
- deps: update dependency sirv to v3 (#18346) (5ea4b00)
- fix grammar (#18385) (8030231)
- mark builder api experimental (#18436) (b57321c)
- tiny typo (#18374) (7d97a9b)
- update moduleResolution value casing (#18409) (ff018dc)
- deps: update dependency @rollup/plugin-commonjs to v28 (#18231) (78e749e)
- point deprecation error URLs to main branch docs (#18321) (11c0fb1)
- update all url references of vitejs.dev to vite.dev (#18276) (7052c8f)
- update built LICENSE (69b6764)
- update license copyright (#18278) (56eb869)
- deps: update all non-major dependencies (#18108) (a73bbaa)
- deps: update all non-major dependencies (#18230) (c0edd26)
- deps: update esbuild (#18173) (e59e2ca)
- escape template tag in CHANGELOG.md (#18126) (caaa683)
- optimizer: fix typo in comment (#18239) (b916ab6)
- deps: update all non-major dependencies (#18050) (7cac03f)
- enable some eslint rules (#18084) (e9a2746)
- remove npm-run-all2 (#18083) (41180d0)
- silence unnecessary logs during test (#18052) (a3ef052)
- first character judgment replacement regexp (#18658) (58f1df3)
- introduce
mergeWithDefaultsand organize how default values for config options are set (#18550) (0e1f437) - resolve: remove
allowLinkedExternalparameter fromtryNodeResolve(#18670) (b74d363) - resolve: remove
environmentsOptionsparameter (#18590) (3ef0bf1) - client-only top-level warmup (#18524) (a50ff60)
- remove fs.cachedChecks option (#18493) (94b0857)
- separate tsconfck caches per config in a weakmap (#17317) (b9b01d5)
- css: hide internal preprocessor types and expose types used for options (#18458) (c32837c)
- optimizeDeps back to top level (#18465) (1ac22de)
- top-level createEnvironment is client-only (#18475) (6022fc2)
- use
originalFileNames/names(#18240) (f2957c8) - bump minimal terser version to 5.16.0 (#18209) (19ce525)
- resolve: remove
tryEsmOnlyflag (#18394) (7cebe38) - use builder in
build(#18432) (cc61d16) - rename runner.destroy() to runner.close() (#18304) (cd368f9)
- break circular dependencies to fix test-unit (#18237) (a577828)
- remove
_onCrawlEnd(#18207) (bea0272) - remove the need for "processSourceMap" (#18187) (08ff233)
- replace
parsewithsplitFileAndPostfix(#18185) (6f030ec) - use
resolvePackageDatato get rollup version (#18208) (220d6ec) - create-vite: use picocolors (#18085) (ba37df0)
- remove custom resolveOptions from pre-alias plugin (#18041) (6f60adc)
- remove unnecessary escape (#18044) (8062d36)
- simplify
playground/json/__tests__/ssr(#18701) (f731ca2) - update filename regex (#18593) (dd25c1a)
- fix test conflict (#18446) (94cd1e6)
- remove unnecessary logs from output (#18368) (f50d358)
- replace fs mocking in css module compose test (#18413) (ddee0ad)
- ssr external / resolveId test (#18327) (4c5cf91)
- test optimized dep as ssr entry (#18301) (466f94a)
- fix server-worker-runner flaky test (#18247) (8f82730)
- move glob test root to reduce snapshot change (#18053) (04d7e77)
6.0.0-beta.10 (2024-11-14)
6.0.0-beta.9 (2024-11-07)
6.0.0-beta.8 (2024-11-01)
6.0.0-beta.7 (2024-10-30)
6.0.0-beta.6 (2024-10-28)
6.0.0-beta.5 (2024-10-24)
6.0.0-beta.4 (2024-10-23)
6.0.0-beta.3 (2024-10-15)
6.0.0-beta.2 (2024-10-01)
6.0.0-beta.1 (2024-09-16)
6.0.0-beta.0 (2024-09-12)
See 5.4.11 changelog
See 5.3.5 changelog
See 5.2.12 changelog
See 5.1.6 changelog
See 5.0.11 changelog
See 4.5.0 changelog
See 4.4.11 changelog
See 4.3.0 changelog
See 4.2.2 changelog
See 4.1.4 changelog
See 4.0.4 changelog
See 3.2.6 changelog
See 3.1.3 changelog
See 3.0.9 changelog
See 2.9.15 changelog
See 2.8.6 changelog
See 2.7.13 changelog
See 2.6.14 changelog
See 2.5.10 changelog
See 2.4.4 changelog
See 2.3.8 changelog
See 2.2.4 changelog
See 2.1.5 changelog
See 2.0.5 changelog

