unstale

npm / vite

vite

What changed in vite 7 to 8, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-17.

1 breaking7 security1 new APIs and options2 performance33 fixes and other

vite 843 changes

Breaking changes 1

Security 6

  • The server checks fs.serve for requests using this query, ensuring the serving restriction is applied.

    8.3.3release notes

  • launch-editor: NTLMv2 hash disclosure via UNC path handling on Windows

    6.4.3, 7.3.5, 8.0.16security advisory

  • vite: server.fs.deny bypass on Windows alternate paths

    6.4.3, 7.3.5, 8.0.16security advisory

  • Vite: server.fs.deny bypassed with queries

    7.3.2, 8.0.5security advisory

  • Vite Vulnerable to Arbitrary File Read via Vite Dev Server WebSocket

    6.4.2, 7.3.2, 8.0.5security advisory

  • Vite Vulnerable to Path Traversal in Optimized Deps .map Handling

    6.4.2, 7.3.2, 8.0.5security advisory

New APIs and options 1

  • Bundled dev supports import.meta.hot.acceptExports.

    8.3.4release notes

Performance 2

  • Avoids settling seen preload dependencies to improve build performance.

    8.3.0release notes

  • Pre-compiles context matchers at server creation to improve proxy performance.

    8.3.0release notes

Fixes and other changes 33

  • Skips rewriting adopted styles that have not changed.

    8.3.4release notes

  • Corrects preloads when chunkImportMap is enabled with a non-root base.

    8.3.4release notes

  • Skips caching CSS of chunks in a cycle.

    8.3.4release notes

  • The optimizer scans deep imports with custom extensions.

    8.3.4release notes

  • Normalizes the file before the root check in ensureWatchedFile.

    8.3.4release notes

  • HTML handling no longer adds the filesystem root to the watcher.

    8.3.4release notes

  • Vite no longer mutates HMR defaults.

    8.3.4release notes

  • Modules ending with a js-like query are no longer treated as JavaScript.

    8.3.4release notes

  • Resolves imported preprocessors from their file path when using lightningcss.

    8.3.4release notes

  • Waits for in-flight stylesheets in the preload helper.

    8.3.4release notes

  • A restart requested during another restart is no longer dropped.

    8.3.4release notes

  • Static aliases are matched on path boundaries.

    8.3.4release notes

  • Bundled dev serves /@vite/client.

    8.3.4release notes

  • Bundled dev stubs @vite/env.

    8.3.4release notes

  • The filename passed to transformIndexHtml no longer includes queries, so plugins receive the expected filename.

    8.3.3release notes

  • Browser:false mappings no longer produce unsupported warnings during dependency optimization.

    8.3.2release notes

  • The minify option is now merged correctly.

    8.3.2release notes

  • CSS is preloaded correctly when renderBuiltUrl returns URLs with queries.

    8.3.2release notes

  • The server handles file watcher errors without crashing.

    8.3.2release notes

  • Object and array printing is limited in size when using forwardConsole.

    8.3.2release notes

  • Bundled dev now serves sourcemaps for lazy chunks.

    8.3.2release notes

  • Whitespace is encoded in the SSR module runner sourceURL.

    8.3.2release notes

  • Excluded optional peer require fallbacks are now preserved by the optimizer.

    8.3.2release notes

  • Queries are now passed to renderBuiltUrl, allowing URL handling to account for query strings.

    8.3.2release notes

  • Bundled dev serves the rolldown runtime from the installed rolldown.

    8.3.2release notes

  • Percent-encoded srcset URLs are now resolved correctly.

    8.3.2release notes

  • Worker URLs are aligned between client and server when using terser.

    8.3.2release notes

  • The build configuration now merges build.rolldownOptions.output.comments correctly.

    8.3.1release notes

  • The optimizer no longer skips imports whose binding starts with type.

    8.3.1release notes

  • mergeConfig now handles server.ws: false correctly.

    8.3.1release notes

  • Source-map generation now skips URL source roots when injecting sources content.

    8.3.1release notes

  • Handles CRLF line endings when calculating code frame positions.

    8.3.0release notes

  • Treats only whole node_modules path segments as dependencies.

    8.3.0release notes

vite 71 changes

Security 1

  • vite allows server.fs.deny bypass via backslash on Windows

    5.4.21 … 7.1.11security advisory