@sveltejs/adapter-node@6.0.0
sveltejs/kit@sveltejs/adapter-node@6.0.0Oct 1, 2026by github-actions[bot]
Upgrading?
AI Summary
A major update to the Node adapter requiring SvelteKit 3 and Vite 8, featuring a migration from Rollup to Rolldown, updated static asset handling, and a new instrumentation API.
Key Highlights
- Requires SvelteKit 3 and Vite 8.0.12+ (bundling stable Rolldown).
- Migrated from Rollup to Rolldown for bundling.
- Updated instrumentation API to populate env vars before `instrumentation.server.js` is evaluated.
- Changed static asset serving to record assets at build time using content-hash ETags.
- Introduced `kit.paths.origin` config option.
Breaking Changes
- Populate env vars before `instrumentation.server.js` is evaluated.
- Require SvelteKit 3.
- Add `kit.paths.origin` config option, remove `kit.prerender.origin` and `ORIGIN` environment variable.
- Require `vite@^8.0.12`.
- Replace `builder.generateManifest` with `builder.generateServerInstance` and `builder.manifest`.
- Record static assets at build time; files added later are not served.
- Serve static assets only to `GET` and `HEAD` requests.
New Features
- Serve static assets from tables recorded at adapt time instead of using sirv.
- Better error logging.
- Abort `request.signal` when the response closes prematurely.
Full Release Notes
### Major Changes - breaking: populate env vars before `instrumentation.server.js` is evaluated and update the adapter instrumentation API ([#16303](https://github.com/sveltejs/kit/pull/16303)) - chore: migrate from rollup to rolldown ([#15297](https://github.com/sveltejs/kit/pull/15297)) - breaking: require SvelteKit 3 ([#15506](https://github.com/sveltejs/kit/pull/15506)) - breaking: add `kit.paths.origin` config option, remove `kit.prerender.origin` and the `adapter-node` `ORIGIN` environment variable ([#16161](https://github.com/sveltejs/kit/pull/16161)) - breaking: require `vite@^8.0.12`, the first Vite 8 release bundling stable `rolldown` 1.0.0 ([#16134](https://github.com/sveltejs/kit/pull/16134)) - breaking: replace the `builder.generateManifest` with `builder.generateServerInstance` and `builder.manifest` ([#16875](https://github.com/sveltejs/kit/pull/16875)) - breaking: record the list of static assets at build time, files added to the output afterwards are not served ([#16908](https://github.com/sveltejs/kit/pull/16908)) - breaking: validate static assets with content-hash `ETag`s and stop sending `Last-Modified` ([#16908](https://github.com/sveltejs/kit/pull/16908)) - breaking: serve static assets only to `GET` and `HEAD` requests ([#16908](https://github.com/sveltejs/kit/pull/16908)) ### Minor Changes - feat: serve static assets from tables recorded at adapt time, instead of using sirv ([#16908](https://github.com/sveltejs/kit/pull/16908)) - feat: better error logging ([#16374](https://github.com/sveltejs/kit/pull/16374)) ### Patch Changes - fix: prevent scheme-like path segments from causing off-site trailing-slash redirects ([#17294](https://github.com/sveltejs/kit/pull/17294)) - fix: serve static files with the Content-Type recorded in the manifest ([#16564](https://github.com/sveltejs/kit/pull/16564)) - chore: bundle the adapter's server source directly instead of prebuilding it with rolldown ([#17109](https://github.com/sveltejs/kit/pull/17109)) - chore: use `node:fs` instead of deprecated `builder.rimraf` and `builder.mkdirp` ([#16610](https://github.com/sveltejs/kit/pull/16610)) - chore: hand adapt-time values to the server as a module instead of patching built chunks ([#17103](https://github.com/sveltejs/kit/pull/17103)) - fix: externalize `@opentelemetry/api` to prevent bundler chunk colocation between `instrumentation.server.js` and application code ([#16302](https://github.com/sveltejs/kit/pull/16302)) - feat: abort `request.signal` when the response closes prematurely, via a new `response` option for `getRequest` ([#16793](https://github.com/sveltejs/kit/pull/16793)) - fix: allow prerelease versions of SvelteKit 3 to satisfy the peer dependency range ([#16286](https://github.com/sveltejs/kit/pull/16286)) - fix: always bundle dev dependencies ([#17210](https://github.com/sveltejs/kit/pull/17210)) - chore: avoid bundling the server twice ([#17068](https://github.com/sveltejs/kit/pull/17068)) - fix: correctly bundle entrypoints on Windows ([#16367](https://github.com/sveltejs/kit/pull/16367)) - fix: bundle Svelte libraries listed in `dependencies` instead of externalising them ([#17234](https://github.com/sveltejs/kit/pull/17234)) - chore: bump `rolldown` to 1.2.3 ([#16745](https://github.com/sveltejs/kit/pull/16745)) - chore: use `builder.config` to access SvelteKit config settings ([#16895](https://github.com/sveltejs/kit/pull/16895)) - fix: preserve stripped path prefixes by making trailing-slash redirects relative ([#16431](https://github.com/sveltejs/kit/pull/16431)) - chore: bump Rolldown to `1.2.0` ([#16455](https://github.com/sveltejs/kit/pull/16455)) - fix: don't send `Vary: Accept-Encoding` for assets that were never precompressed ([#16566](https://github.com/sveltejs/kit/pull/16566)) - chore: remove polka, attach the handler to the http server directly ([#16907](https://github.com/sveltejs/kit/pull/16907)) - Updated dependencies: - @sveltejs/kit@3.0.0
Related Repositories
affaan-m/ECC★ 285,870
The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
react/react★ 251,627
The library for web and native user interfaces.
nodejs/node★ 122,523
Node.js JavaScript runtime ✨🐢🚀✨
Leonxlnx/taste-skill★ 100,690
Agent skills that give coding agents taste: art direction, reference images and a browser check instead of generic AI pages
louislam/uptime-kuma★ 92,733
A fancy self-hosted monitoring tool