Change8

Migrating to SvelteKit @sveltejs/kit@3.0.0-next.8

Version @sveltejs/kit@3.0.0-next.8 introduces 4 breaking changes. This guide details how to update your code.

Released: 7/14/2026

4
Breaking Changes
1
Migration Steps
13
Affected Symbols

⚠️ Check Your Code

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

experimental.handleRenderingErrorsgetRequestsetResponsepage.urlinvalidateAllrefreshAllloadactionspaths.relativecookies.getAllcookies.get<svelte:boundary>MAX_COOKIE_SIZE

Breaking Changes

Issue #1

The `experimental.handleRenderingErrors` flag has been removed. There is no direct replacement, but error handling should now be managed through standard SvelteKit error handling mechanisms.

Issue #2

The `getRequest` and `setResponse` functions are now synchronous. If you were using them asynchronously, you will need to update your code to reflect this change.

Issue #3

The `page.url` property is now immutable at the type level. This means you cannot directly modify `page.url`. If you need to construct a new URL, create a new URL object.

Issue #4

The `invalidateAll` function has been deprecated and replaced by `refreshAll`. Use `refreshAll` for new implementations.

Migration Steps

  1. 1
    Replace calls to `invalidateAll` with `refreshAll`.

Release Summary

This release introduces several breaking changes including synchronous request/response functions and immutable page URLs, alongside new features like hyphen support in route parameters and a new `refreshAll` function.

Need More Details?

View the full release notes and all changes for SvelteKit @sveltejs/kit@3.0.0-next.8.

View Full Changelog