Migrating to SvelteKit @sveltejs/kit@3.0.0-next.5
Version @sveltejs/kit@3.0.0-next.5 introduces 4 breaking changes. This guide details how to update your code.
Released: 7/6/2026
⚠️ Check Your Code
If you use any of these symbols, you need to read this guide:
$app/pathsgotopreloadDataform actionsremote functionsBreaking Changes
●Issue #1
The properties `base`, `assets`, and `resolveRoute` have been removed from `$app/paths`.
●Issue #2
`goto` now rejects if called with a URL that does not resolve to an internal app route, matching external URL behavior.
●Issue #3
Svelte configuration options must now be passed through the Vite plugin.
●Issue #4
The `preloadData` function now supports an 'error' result type.
Migration Steps
- 1Remove usages of `base`, `assets`, and `resolveRoute` from `$app/paths`.
- 2Update how Svelte config options are passed; they must now go through the Vite plugin.
- 3Handle the new 'error' result type in `preloadData` return values.
Release Summary
This release introduces significant breaking changes, including updates to `$app/paths` and configuration passing, alongside new features like form submission status exposure and improved SSE keep-alive handling.
Need More Details?
View the full release notes and all changes for SvelteKit @sveltejs/kit@3.0.0-next.5.
View Full Changelog