SvelteKit 3.0.0-next.0

3.0.0-next.0Pre-release
Added 2
  • Add config.kit.output.linkHeaderPreload to preload using the Link header
  • Add explicit env vars
Changed 4
  • Upgrade to cookie v1, cookie names must now contain only ASCII characters
  • Default the cookie path option to '/'
  • The delta property now only exists for popstate navigation events
  • Resolve paths using the Vite config root option instead of process.cwd() to better support monorepo configurations such as Vitest workspaces
Fixed 2
  • Remove check for svelte.config.js before running sync
  • Generate a placeholder tsconfig.json to squelch sync-time warnings
Removed 11
  • TypeScript 6 is now the minimum required version
  • Node 22 or newer is now required
  • Remove the preloadStrategy option, modulepreload will always be used
  • Remove @sveltejs/kit/node/polyfills
  • Require @sveltejs/vite-plugin-svelte v7
  • Remove createEntries from the Builder object passed to adapter functions
Deprecated 1
  • Deprecate Response helpers in favor of platform-provided alternatives
Major Changes
  • breaking: TypeScript 6 is now the minimum required version (#15930)

  • breaking: upgrade to cookie v1. Cookie names must now contain only ASCII characters (#13386)

  • breaking: require Node 22 or newer (#12548)

  • breaking: remove the preloadStrategy option. modulepreload will always be used (#15256)

  • breaking: default the cookie path option to '/' (#15398)

  • breaking: remove @sveltejs/kit/node/polyfills (#15430)

  • breaking: add config.kit.output.linkHeaderPreload to preload using the Link header (#15939)

  • breaking: require @sveltejs/vite-plugin-svelte v7 (#15371)

  • breaking: remove createEntries from the Builder object passed to adapter functions (#15509)

  • breaking: remove the deprecated CSRF checkOrigin option in favor of trustedOrigins (#15437)

  • breaking: the delta property now only exists for popstate navigation events (#15522)

  • breaking: remove deprecated pragma header in version polling for improved CORS support (#15428)

  • breaking: require Svelte 5.48.0 or newer (#15371)

  • chore: change error, isHttpError, redirect, and isRedirect to refer to public type instead of internal class (#15250)

  • breaking: require Vite 8. Provides new functionality even for existing Vite 8 users such as faster builds with Vite hook filters and more powerful SvelteKit adapters with the Vite environment API (#15371)

  • breaking: remove data-sveltekit-* option 'off' in favour of false (#15907)

Minor Changes
  • feat: resolve paths using the Vite config root option instead of process.cwd() to better support monorepo configurations such as Vitest workspaces (#15469)

  • chore: deprecate Response helpers in favor of platform-provided alternatives (#15448)

  • feat: explicit env vars (#15934)

Patch Changes
  • fix: remove check for svelte.config.js before running sync (#15946)

  • fix: generate a placeholder tsconfig.json to squelch sync-time warnings (#15948)

  • chore: remove dependency on kleur (#12548)

  • chore: remove dependency on set-cookie-parser (#15384)

  • fix: allow use of $app/env/public in service workers (#15950)

View original

Upgraded? How did it go?

Discussion