From 94a453d29f8d42c5cec348663bf04c11e97097f4 Mon Sep 17 00:00:00 2001
From: "svelte-docs-bot[bot]"
<196124396+svelte-docs-bot[bot]@users.noreply.github.com>
Date: Wed, 26 Nov 2025 01:57:32 +0000
Subject: [PATCH] sync svelte docs
---
.../svelte/06-runtime/03-lifecycle-hooks.md | 2 +-
.../docs/svelte/06-runtime/05-hydratable.md | 2 +-
.../content/docs/svelte/07-misc/02-testing.md | 2 +-
.../svelte/07-misc/06-v4-migration-guide.md | 6 ++--
.../svelte/07-misc/07-v5-migration-guide.md | 10 +++----
.../content/docs/svelte/07-misc/99-faq.md | 2 +-
.../.generated/client-warnings.md | 2 +-
.../svelte/98-reference/21-svelte-compiler.md | 28 ++++++++++++++++++-
.../98-reference/30-runtime-warnings.md | 2 +-
.../docs/svelte/99-legacy/10-legacy-on.md | 2 +-
10 files changed, 42 insertions(+), 16 deletions(-)
diff --git a/apps/svelte.dev/content/docs/svelte/06-runtime/03-lifecycle-hooks.md b/apps/svelte.dev/content/docs/svelte/06-runtime/03-lifecycle-hooks.md
index e11ed9e305..234b8403d9 100644
--- a/apps/svelte.dev/content/docs/svelte/06-runtime/03-lifecycle-hooks.md
+++ b/apps/svelte.dev/content/docs/svelte/06-runtime/03-lifecycle-hooks.md
@@ -95,7 +95,7 @@ Svelte 4 contained hooks that ran before and after the component as a whole was
```
-Instead of `beforeUpdate` use `$effect.pre` and instead of `afterUpdate` use `$effect` instead - these runes offer more granular control and only react to the changes you're actually interested in.
+Instead of `beforeUpdate` use `$effect.pre` and instead of `afterUpdate` use `$effect` instead — these runes offer more granular control and only react to the changes you're actually interested in.
### Chat window example
diff --git a/apps/svelte.dev/content/docs/svelte/06-runtime/05-hydratable.md b/apps/svelte.dev/content/docs/svelte/06-runtime/05-hydratable.md
index b840b14dd7..ad8a4ed08e 100644
--- a/apps/svelte.dev/content/docs/svelte/06-runtime/05-hydratable.md
+++ b/apps/svelte.dev/content/docs/svelte/06-runtime/05-hydratable.md
@@ -18,7 +18,7 @@ In Svelte, when you want to render asynchronous content data on the server, you
{user.name}
```
-That's silly, though. If we've already done the hard work of getting the data on the server, we don't want to get it again during hydration on the client. `hydratable` is a low-level API built to solve this problem. You probably won't need this very often -- it will be used behind the scenes by whatever datafetching library you use. For example, it powers [remote functions in SvelteKit](/docs/kit/remote-functions).
+That's silly, though. If we've already done the hard work of getting the data on the server, we don't want to get it again during hydration on the client. `hydratable` is a low-level API built to solve this problem. You probably won't need this very often — it will be used behind the scenes by whatever datafetching library you use. For example, it powers [remote functions in SvelteKit](/docs/kit/remote-functions).
To fix the example above:
diff --git a/apps/svelte.dev/content/docs/svelte/07-misc/02-testing.md b/apps/svelte.dev/content/docs/svelte/07-misc/02-testing.md
index 24bc2c15bc..18b952aea1 100644
--- a/apps/svelte.dev/content/docs/svelte/07-misc/02-testing.md
+++ b/apps/svelte.dev/content/docs/svelte/07-misc/02-testing.md
@@ -295,7 +295,7 @@ E2E (short for 'end to end') tests allow you to test your full application throu
You can use the Svelte CLI to [setup Playwright](/docs/cli/playwright) either during project creation or later on. You can also [set it up with `npm init playwright`](https://playwright.dev/docs/intro). Additionally, you may also want to install an IDE plugin such as [the VS Code extension](https://playwright.dev/docs/getting-started-vscode) to be able to execute tests from inside your IDE.
-If you've run `npm init playwright` or are not using Vite, you may need to adjust the Playwright config to tell Playwright what to do before running the tests - mainly starting your application at a certain port. For example:
+If you've run `npm init playwright` or are not using Vite, you may need to adjust the Playwright config to tell Playwright what to do before running the tests — mainly starting your application at a certain port. For example:
```js
/// file: playwright.config.js
diff --git a/apps/svelte.dev/content/docs/svelte/07-misc/06-v4-migration-guide.md b/apps/svelte.dev/content/docs/svelte/07-misc/06-v4-migration-guide.md
index 40c72ff6b4..c901368084 100644
--- a/apps/svelte.dev/content/docs/svelte/07-misc/06-v4-migration-guide.md
+++ b/apps/svelte.dev/content/docs/svelte/07-misc/06-v4-migration-guide.md
@@ -138,7 +138,7 @@ Transitions are now local by default to prevent confusion around page navigation
{/if}
```
-To make transitions global, add the `|global` modifier - then they will play when _any_ control flow block above is created/destroyed. The migration script will do this automatically for you. ([#6686](https://github.com/sveltejs/svelte/issues/6686))
+To make transitions global, add the `|global` modifier — then they will play when _any_ control flow block above is created/destroyed. The migration script will do this automatically for you. ([#6686](https://github.com/sveltejs/svelte/issues/6686))
## Default slot bindings
@@ -151,10 +151,10 @@ Default slot bindings are no longer exposed to named slots and vice versa:
- count in default slot - is available: {count}
+ count in default slot — is available: {count}
- count in bar slot - is not available: {count}
+ count in bar slot — is not available: {count}
```
diff --git a/apps/svelte.dev/content/docs/svelte/07-misc/07-v5-migration-guide.md b/apps/svelte.dev/content/docs/svelte/07-misc/07-v5-migration-guide.md
index 9b0dbaf3da..505c141c79 100644
--- a/apps/svelte.dev/content/docs/svelte/07-misc/07-v5-migration-guide.md
+++ b/apps/svelte.dev/content/docs/svelte/07-misc/07-v5-migration-guide.md
@@ -5,7 +5,7 @@ title: Svelte 5 migration guide
Version 5 comes with an overhauled syntax and reactivity system. While it may look different at first, you'll soon notice many similarities. This guide goes over the changes in detail and shows you how to upgrade. Along with it, we also provide information on _why_ we did these changes.
-You don't have to migrate to the new syntax right away - Svelte 5 still supports the old Svelte 4 syntax, and you can mix and match components using the new syntax with components using the old and vice versa. We expect many people to be able to upgrade with only a few lines of code changed initially. There's also a [migration script](#Migration-script) that helps you with many of these steps automatically.
+You don't have to migrate to the new syntax right away — Svelte 5 still supports the old Svelte 4 syntax, and you can mix and match components using the new syntax with components using the old and vice versa. We expect many people to be able to upgrade with only a few lines of code changed initially. There's also a [migration script](#Migration-script) that helps you with many of these steps automatically.
## Reactivity syntax changes
@@ -24,7 +24,7 @@ In Svelte 4, a `let` declaration at the top level of a component was implicitly
Nothing else changes. `count` is still the number itself, and you read and write directly to it, without a wrapper like `.value` or `getCount()`.
> [!DETAILS] Why we did this
-> `let` being implicitly reactive at the top level worked great, but it meant that reactivity was constrained - a `let` declaration anywhere else was not reactive. This forced you to resort to using stores when refactoring code out of the top level of components for reuse. This meant you had to learn an entirely separate reactivity model, and the result often wasn't as nice to work with. Because reactivity is more explicit in Svelte 5, you can keep using the same API outside the top level of components. Head to [the tutorial](/tutorial) to learn more.
+> `let` being implicitly reactive at the top level worked great, but it meant that reactivity was constrained — a `let` declaration anywhere else was not reactive. This forced you to resort to using stores when refactoring code out of the top level of components for reuse. This meant you had to learn an entirely separate reactivity model, and the result often wasn't as nice to work with. Because reactivity is more explicit in Svelte 5, you can keep using the same API outside the top level of components. Head to [the tutorial](/tutorial) to learn more.
### $: → $derived/$effect
@@ -121,7 +121,7 @@ In Svelte 5, the `$props` rune makes this straightforward without any additional
## Event changes
-Event handlers have been given a facelift in Svelte 5. Whereas in Svelte 4 we use the `on:` directive to attach an event listener to an element, in Svelte 5 they are properties like any other (in other words - remove the colon):
+Event handlers have been given a facelift in Svelte 5. Whereas in Svelte 4 we use the `on:` directive to attach an event listener to an element, in Svelte 5 they are properties like any other (in other words — remove the colon):
```svelte