Change8

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

4
Breaking Changes
3
Migration Steps
5
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

$app/pathsgotopreloadDataform actionsremote functions

Breaking 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

  1. 1
    Remove usages of `base`, `assets`, and `resolveRoute` from `$app/paths`.
  2. 2
    Update how Svelte config options are passed; they must now go through the Vite plugin.
  3. 3
    Handle 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