From 81f28ccf5d398647377efc8ef5435d09d217ddf9 Mon Sep 17 00:00:00 2001 From: Simon H <5968653+dummdidumm@users.noreply.github.com> Date: Tue, 15 Oct 2024 00:35:37 +0200 Subject: [PATCH 01/57] fix: handle leading combinators within `:has(...)` (#13606) We need to ignore the leading combinator within a `:has(...)`, else it would not stop matching, assuming there are more parent selectors (which there aren't) and always fail. https://github.com/sveltejs/svelte/pull/13567#issuecomment-2412405131 --- .../src/compiler/phases/2-analyze/css/css-prune.js | 12 +++++++++++- packages/svelte/tests/css/samples/has/_config.js | 14 ++++++++++++++ packages/svelte/tests/css/samples/has/expected.css | 7 +++++++ packages/svelte/tests/css/samples/has/input.svelte | 7 +++++++ 4 files changed, 39 insertions(+), 1 deletion(-) diff --git a/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js b/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js index c51de75fd6..d1bf7783e0 100644 --- a/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js +++ b/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js @@ -371,6 +371,16 @@ function relative_selector_might_apply_to_node( for (const complex_selector of complex_selectors) { const selectors = truncate(complex_selector); + const left_most_combinator = selectors[0]?.combinator ?? descendant_combinator; + // In .x:has(> y), we want to search for y, ignoring the left-most combinator + // (else it would try to walk further up and fail because there are no selectors left) + if (selectors.length > 0) { + selectors[0] = { + ...selectors[0], + combinator: null + }; + } + if ( selectors.length === 0 /* is :global(...) */ || apply_selector(selectors, rule, element, stylesheet, check_has) @@ -379,7 +389,7 @@ function relative_selector_might_apply_to_node( // and now looking upwards for the .x part. if ( apply_combinator( - selectors[0]?.combinator ?? descendant_combinator, + left_most_combinator, selectors[0] ?? [], [relative_selector], rule, diff --git a/packages/svelte/tests/css/samples/has/_config.js b/packages/svelte/tests/css/samples/has/_config.js index 403a7a46c9..b590b2e50a 100644 --- a/packages/svelte/tests/css/samples/has/_config.js +++ b/packages/svelte/tests/css/samples/has/_config.js @@ -85,6 +85,20 @@ export default test({ column: 17, line: 81 } + }, + { + code: 'css_unused_selector', + message: 'Unused CSS selector "x:has(> z)"', + start: { + line: 88, + column: 1, + character: 968 + }, + end: { + line: 88, + column: 11, + character: 978 + } } ] }); diff --git a/packages/svelte/tests/css/samples/has/expected.css b/packages/svelte/tests/css/samples/has/expected.css index 51824840f1..41f1ca7628 100644 --- a/packages/svelte/tests/css/samples/has/expected.css +++ b/packages/svelte/tests/css/samples/has/expected.css @@ -75,3 +75,10 @@ /* (unused) .unused x:has(y) { color: red; }*/ + + x.svelte-xyz:has(> y:where(.svelte-xyz)) { + color: green; + } + /* (unused) x:has(> z) { + color: red; + }*/ diff --git a/packages/svelte/tests/css/samples/has/input.svelte b/packages/svelte/tests/css/samples/has/input.svelte index 05064c6508..87bc9bb34c 100644 --- a/packages/svelte/tests/css/samples/has/input.svelte +++ b/packages/svelte/tests/css/samples/has/input.svelte @@ -81,4 +81,11 @@ .unused x:has(y) { color: red; } + + x:has(> y) { + color: green; + } + x:has(> z) { + color: red; + } From caaf74b854f10dafbdb97ea19cd017e114d4aa71 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Mon, 14 Oct 2024 22:48:40 -0400 Subject: [PATCH 02/57] docs: more fixes (#13608) --- documentation/docs/03-runes/02-side-effects.md | 4 ++-- documentation/docs/04-runtime/04-imperative-component-api.md | 2 +- documentation/docs/05-misc/04-custom-elements.md | 4 ++-- packages/svelte/src/compiler/preprocess/index.js | 2 +- packages/svelte/types/index.d.ts | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/documentation/docs/03-runes/02-side-effects.md b/documentation/docs/03-runes/02-side-effects.md index 583d3c9bfa..c9bda9a1e6 100644 --- a/documentation/docs/03-runes/02-side-effects.md +++ b/documentation/docs/03-runes/02-side-effects.md @@ -164,7 +164,7 @@ In general, `$effect` is best considered something of an escape hatch — useful ``` -> [!NOTE] For things that are more complicated than a simple expression like `count * 2`, you can also use [`$derived.by`](#$derived-by). +> [!NOTE] For things that are more complicated than a simple expression like `count * 2`, you can also use `$derived.by`. You might be tempted to do something convoluted with effects to link one value to another. The following example shows two inputs for "money spent" and "money left" that are connected to each other. If you update one, the other should update accordingly. Don't use effects for this ([demo](/#H4sIAAAAAAAACpVRy2rDMBD8lWXJwYE0dg-9KFYg31H3oNirIJBlYa1DjPG_F8l1XEop9LgzOzP7mFAbSwHF-4ROtYQCL97jAXn0sQh3skx4wNANfR2RMtS98XyuXMWWGLhjZUHCa1GcVix4cgwSdoEVU1bsn4wl_Y1I2kS6inekNdWcZXuQZ5giFDWpfwl5WYyT2fynbB1g1UWbTVbm2w6utOpKNq1TGucHhri6rLBX7kYVwtW4RtyVHUhOyXeGVj3klLxnyJP0i8lXNJUx6en-v6A48K85kTimpi0sYj-yAo-Wlh9FcL1LY4K3ahSgLT1OC3ZTXkBxfKN2uVC6T5LjAduuMdpQg4L7geaP-RNHPuClMQIAAA==)): @@ -289,7 +289,7 @@ In rare cases, you may need to run code _before_ the DOM updates. For this we ca ``` -Apart from the timing, `$effect.pre` works exactly like [`$effect`](#$effect) — refer to its documentation for more info. +Apart from the timing, `$effect.pre` works exactly like `$effect` — refer to its documentation for more info. ## `$effect.tracking` diff --git a/documentation/docs/04-runtime/04-imperative-component-api.md b/documentation/docs/04-runtime/04-imperative-component-api.md index b4517bd34f..a124a86ba4 100644 --- a/documentation/docs/04-runtime/04-imperative-component-api.md +++ b/documentation/docs/04-runtime/04-imperative-component-api.md @@ -64,7 +64,7 @@ result.head; // HTML for somewhere in this tag ## `hydrate` -Like `mount`, but will reuse up any HTML rendered by Svelte's SSR output (from the [`render`](#server-render) function) inside the target and make it interactive: +Like `mount`, but will reuse up any HTML rendered by Svelte's SSR output (from the [`render`](#render) function) inside the target and make it interactive: ```js // @errors: 2322 diff --git a/documentation/docs/05-misc/04-custom-elements.md b/documentation/docs/05-misc/04-custom-elements.md index d2a75e25cb..39659f1950 100644 --- a/documentation/docs/05-misc/04-custom-elements.md +++ b/documentation/docs/05-misc/04-custom-elements.md @@ -4,7 +4,7 @@ title: Custom elements - [basically what we have today](https://svelte.dev/docs/custom-elements-api) -Svelte components can also be compiled to custom elements (aka web components) using the `customElement: true` compiler option. You should specify a tag name for the component using the `` [element](special-elements#svelte-options). +Svelte components can also be compiled to custom elements (aka web components) using the `customElement: true` compiler option. You should specify a tag name for the component using the `` [element](special-elements#svelte:options). ```svelte @@ -36,7 +36,7 @@ document.body.innerHTML = ` `; ``` -Any [props](basic-markup#attributes-and-props) are exposed as properties of the DOM element (as well as being readable/writable as attributes, where possible). +Any [props](basic-markup#Attributes-and-props) are exposed as properties of the DOM element (as well as being readable/writable as attributes, where possible). ```js // @noErrors diff --git a/packages/svelte/src/compiler/preprocess/index.js b/packages/svelte/src/compiler/preprocess/index.js index f26db16e2b..afef898471 100644 --- a/packages/svelte/src/compiler/preprocess/index.js +++ b/packages/svelte/src/compiler/preprocess/index.js @@ -328,7 +328,7 @@ async function process_markup(process, source) { /** * The preprocess function provides convenient hooks for arbitrarily transforming component source code. - * For example, it can be used to convert a diff --git a/packages/svelte/tests/css/samples/not-selector/_config.js b/packages/svelte/tests/css/samples/not-selector/_config.js new file mode 100644 index 0000000000..6ab49a8809 --- /dev/null +++ b/packages/svelte/tests/css/samples/not-selector/_config.js @@ -0,0 +1,62 @@ +import { test } from '../../test'; + +export default test({ + warnings: [ + { + code: 'css_unused_selector', + message: 'Unused CSS selector ":not(.unused)"', + start: { + line: 8, + column: 1, + character: 89 + }, + end: { + line: 8, + column: 14, + character: 102 + } + }, + { + code: 'css_unused_selector', + message: 'Unused CSS selector ":not(.foo):not(.unused)"', + start: { + line: 18, + column: 1, + character: 221 + }, + end: { + line: 18, + column: 24, + character: 244 + } + }, + { + code: 'css_unused_selector', + message: 'Unused CSS selector "p :not(.foo)"', + start: { + line: 25, + column: 1, + character: 300 + }, + end: { + line: 25, + column: 13, + character: 312 + } + }, + { + code: 'css_unused_selector', + message: 'Unused CSS selector ":global(.x) :not(.unused)"', + start: { + line: 34, + column: 1, + character: 469 + }, + end: { + line: 34, + column: 26, + character: 494 + } + } + ] +}); diff --git a/packages/svelte/tests/css/samples/not-selector/expected.css b/packages/svelte/tests/css/samples/not-selector/expected.css index 1e5f9478db..45e9ad69c0 100644 --- a/packages/svelte/tests/css/samples/not-selector/expected.css +++ b/packages/svelte/tests/css/samples/not-selector/expected.css @@ -1,3 +1,33 @@ + + .svelte-xyz:not(.foo:where(.svelte-xyz)) { + color: green; + } + /* (unused) :not(.unused) { + color: red; + }*/ .svelte-xyz:not(.foo) { + color: green; + } + + .svelte-xyz:not(.foo:where(.svelte-xyz)):not(.unused) { + color: green; + } + /* (unused) :not(.foo):not(.unused) { color: red; + }*/ + + p.svelte-xyz:not(.foo:where(.svelte-xyz)) { + color: green; } + /* (unused) p :not(.foo) { + color: red; + }*/ + .x:not(.foo.svelte-xyz) { + color: green; + } + .x:not(.unused.svelte-xyz) { + color: red; /* TODO would be nice to prune this one day */ + } + /* (unused) :global(.x) :not(.unused) { + color: red; + }*/ diff --git a/packages/svelte/tests/css/samples/not-selector/input.svelte b/packages/svelte/tests/css/samples/not-selector/input.svelte index 31a880f2bb..57d062cf49 100644 --- a/packages/svelte/tests/css/samples/not-selector/input.svelte +++ b/packages/svelte/tests/css/samples/not-selector/input.svelte @@ -3,6 +3,35 @@ \ No newline at end of file diff --git a/sites/svelte-5-preview/src/routes/docs/content/03-appendix/02-breaking-changes.md b/sites/svelte-5-preview/src/routes/docs/content/03-appendix/02-breaking-changes.md index eff6a7c743..f45b2e0416 100644 --- a/sites/svelte-5-preview/src/routes/docs/content/03-appendix/02-breaking-changes.md +++ b/sites/svelte-5-preview/src/routes/docs/content/03-appendix/02-breaking-changes.md @@ -293,9 +293,9 @@ Svelte 5 is more strict about the HTML structure and will throw a compiler error Assignments to destructured parts of a `@const` declaration are no longer allowed. It was an oversight that this was ever allowed. -### :is(...), :where(...) and :has(...) are scoped +### :is(...), :where(...), :has(...) and :not(...) are scoped -Previously, Svelte did not analyse selectors inside `:is(...)`, `:where(...)` and `:has(...)`, effectively treating them as global. Svelte 5 analyses them in the context of the current component. As such, some selectors may now be treated as unused if they were relying on this treatment. To fix this, use `:global(...)` inside the `:is(...)/:where(...)/:has(...)` selectors. +Previously, Svelte did not analyse selectors inside `:is(...)`, `:where(...)`, `:has(...)` and `:not(...)`, effectively treating them as global. Svelte 5 analyses them in the context of the current component. As such, some selectors may now be treated as unused if they were relying on this treatment. To fix this, use `:global(...)` inside the `:is(...)/:where(...)/:has(...)/:not(...)` selectors. When using Tailwind's `@apply` directive, add a `:global` selector to preserve rules that use Tailwind-generated `:is(...)` selectors: From 829be3d611ec839453e698bb8537316260152248 Mon Sep 17 00:00:00 2001 From: Simon H <5968653+dummdidumm@users.noreply.github.com> Date: Tue, 15 Oct 2024 16:22:04 +0200 Subject: [PATCH 05/57] fix: take snippets into account when scoping CSS (#13589) fixes #10143 --- .changeset/green-cameras-bake.md | 5 ++ .../phases/2-analyze/css/css-prune.js | 53 +++++++++++++++++-- .../src/compiler/phases/2-analyze/index.js | 2 + .../phases/2-analyze/visitors/RenderTag.js | 2 + .../svelte/src/compiler/phases/types.d.ts | 3 +- .../tests/css/samples/snippets/_config.js | 20 +++++++ .../tests/css/samples/snippets/expected.css | 19 +++++++ .../tests/css/samples/snippets/expected.html | 2 + .../tests/css/samples/snippets/input.svelte | 34 ++++++++++++ 9 files changed, 135 insertions(+), 5 deletions(-) create mode 100644 .changeset/green-cameras-bake.md create mode 100644 packages/svelte/tests/css/samples/snippets/_config.js create mode 100644 packages/svelte/tests/css/samples/snippets/expected.css create mode 100644 packages/svelte/tests/css/samples/snippets/expected.html create mode 100644 packages/svelte/tests/css/samples/snippets/input.svelte diff --git a/.changeset/green-cameras-bake.md b/.changeset/green-cameras-bake.md new file mode 100644 index 0000000000..311e1b9744 --- /dev/null +++ b/.changeset/green-cameras-bake.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: take snippets into account when scoping CSS diff --git a/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js b/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js index 006e5b14d4..64cbf28891 100644 --- a/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js +++ b/packages/svelte/src/compiler/phases/2-analyze/css/css-prune.js @@ -9,6 +9,7 @@ import { get_attribute_chunks, is_text_attribute } from '../../../utils/ast.js'; * @typedef {{ * stylesheet: Compiler.Css.StyleSheet; * element: Compiler.AST.RegularElement | Compiler.AST.SvelteElement; + * from_render_tag: boolean; * }} State */ /** @typedef {NODE_PROBABLY_EXISTS | NODE_DEFINITELY_EXISTS} NodeExistsValue */ @@ -53,10 +54,17 @@ const nesting_selector = { /** * * @param {Compiler.Css.StyleSheet} stylesheet - * @param {Compiler.AST.RegularElement | Compiler.AST.SvelteElement} element + * @param {Compiler.AST.RegularElement | Compiler.AST.SvelteElement | Compiler.AST.RenderTag} element */ export function prune(stylesheet, element) { - walk(stylesheet, { stylesheet, element }, visitors); + if (element.type === 'RenderTag') { + const parent = get_element_parent(element); + if (!parent) return; + + walk(stylesheet, { stylesheet, element: parent, from_render_tag: true }, visitors); + } else { + walk(stylesheet, { stylesheet, element, from_render_tag: false }, visitors); + } } /** @type {Visitors} */ @@ -101,7 +109,37 @@ const visitors = { } } - if ( + if (context.state.from_render_tag) { + // We're searching for a match that crosses a render tag boundary. That means we have to both traverse up + // the element tree (to see if we find an entry point) but also remove selectors from the end (assuming + // they are part of the render tag we don't see). We do all possible combinations of both until we find a match. + /** @type {Compiler.AST.RegularElement | Compiler.AST.SvelteElement | null} */ + let element = context.state.element; + + while (element) { + const selectors_to_check = selectors.slice(); + + while (selectors_to_check.length > 0) { + selectors_to_check.pop(); + + if ( + apply_selector( + selectors_to_check, + /** @type {Compiler.Css.Rule} */ (node.metadata.rule), + element, + context.state.stylesheet, + true + ) + ) { + mark(inner, element); + node.metadata.used = true; + return; + } + } + + element = get_element_parent(element); + } + } else if ( apply_selector( selectors, /** @type {Compiler.Css.Rule} */ (node.metadata.rule), @@ -230,6 +268,13 @@ function apply_combinator( crossed_component_boundary = true; } + if (parent.type === 'SnippetBlock') { + // We assume the snippet might be rendered in a place where the parent selectors match. + // (We could do more static analysis and check the render tag reference to see if this snippet block continues + // with elements that actually match the selector, but that would be a lot of work for little gain) + return true; + } + if (parent.type === 'RegularElement' || parent.type === 'SvelteElement') { if (apply_selector(parent_selectors, rule, parent, stylesheet, check_has)) { // TODO the `name === ' '` causes false positives, but removing it causes false negatives... @@ -724,7 +769,7 @@ function unquote(str) { } /** - * @param {Compiler.AST.RegularElement | Compiler.AST.SvelteElement} node + * @param {Compiler.AST.RegularElement | Compiler.AST.SvelteElement | Compiler.AST.RenderTag} node * @returns {Compiler.AST.RegularElement | Compiler.AST.SvelteElement | null} */ function get_element_parent(node) { diff --git a/packages/svelte/src/compiler/phases/2-analyze/index.js b/packages/svelte/src/compiler/phases/2-analyze/index.js index 51365a10ec..188b060813 100644 --- a/packages/svelte/src/compiler/phases/2-analyze/index.js +++ b/packages/svelte/src/compiler/phases/2-analyze/index.js @@ -691,6 +691,8 @@ export function analyze_component(root, source, options) { } outer: for (const element of analysis.elements) { + if (element.type === 'RenderTag') continue; + if (element.metadata.scoped) { // Dynamic elements in dom mode always use spread for attributes and therefore shouldn't have a class attribute added to them // TODO this happens during the analysis phase, which shouldn't know anything about client vs server diff --git a/packages/svelte/src/compiler/phases/2-analyze/visitors/RenderTag.js b/packages/svelte/src/compiler/phases/2-analyze/visitors/RenderTag.js index 36aee8eade..244a4dd26c 100644 --- a/packages/svelte/src/compiler/phases/2-analyze/visitors/RenderTag.js +++ b/packages/svelte/src/compiler/phases/2-analyze/visitors/RenderTag.js @@ -12,6 +12,8 @@ import { mark_subtree_dynamic } from './shared/fragment.js'; export function RenderTag(node, context) { validate_opening_tag(node, context.state, '@'); + context.state.analysis.elements.push(node); + const callee = unwrap_optional(node.expression).callee; node.metadata.dynamic = diff --git a/packages/svelte/src/compiler/phases/types.d.ts b/packages/svelte/src/compiler/phases/types.d.ts index 723e259412..f001a0c48c 100644 --- a/packages/svelte/src/compiler/phases/types.d.ts +++ b/packages/svelte/src/compiler/phases/types.d.ts @@ -36,7 +36,8 @@ export interface ComponentAnalysis extends Analysis { root: ScopeRoot; instance: Js; template: Template; - elements: Array; + /** Used for CSS pruning and scoping */ + elements: Array; runes: boolean; exports: Array<{ name: string; alias: string | null }>; /** Whether the component uses `$$props` */ diff --git a/packages/svelte/tests/css/samples/snippets/_config.js b/packages/svelte/tests/css/samples/snippets/_config.js new file mode 100644 index 0000000000..f8b3b4ca39 --- /dev/null +++ b/packages/svelte/tests/css/samples/snippets/_config.js @@ -0,0 +1,20 @@ +import { test } from '../../test'; + +export default test({ + warnings: [ + { + code: 'css_unused_selector', + message: 'Unused CSS selector "span div"', + start: { + line: 31, + column: 1, + character: 461 + }, + end: { + line: 31, + column: 9, + character: 469 + } + } + ] +}); diff --git a/packages/svelte/tests/css/samples/snippets/expected.css b/packages/svelte/tests/css/samples/snippets/expected.css new file mode 100644 index 0000000000..85ae5b4c25 --- /dev/null +++ b/packages/svelte/tests/css/samples/snippets/expected.css @@ -0,0 +1,19 @@ + + div.svelte-xyz > span:where(.svelte-xyz) { + color: green; + } + div.svelte-xyz span:where(.svelte-xyz) { + color: green; + } + div.svelte-xyz span { + color: green; + } + p.svelte-xyz span:where(.svelte-xyz) { + color: green; + } + p.svelte-xyz .foo:where(.svelte-xyz) { + color: purple; /* doesn't match, but our static analysis doesn't handle this currently */ + } + /* (unused) span div { + color: red; + }*/ diff --git a/packages/svelte/tests/css/samples/snippets/expected.html b/packages/svelte/tests/css/samples/snippets/expected.html new file mode 100644 index 0000000000..8cf44902b4 --- /dev/null +++ b/packages/svelte/tests/css/samples/snippets/expected.html @@ -0,0 +1,2 @@ +
Hello world
+

Hello world

\ No newline at end of file diff --git a/packages/svelte/tests/css/samples/snippets/input.svelte b/packages/svelte/tests/css/samples/snippets/input.svelte new file mode 100644 index 0000000000..b657e7e2bb --- /dev/null +++ b/packages/svelte/tests/css/samples/snippets/input.svelte @@ -0,0 +1,34 @@ +{#snippet my_snippet()} + Hello world +{/snippet} + +
{@render my_snippet()}
+ +

+ {#snippet my_snippet()} + Hello world + {/snippet} + + {@render my_snippet()} +

+ + \ No newline at end of file From 68a226341597fc2baef1dc33f63dd96497e25565 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Tue, 15 Oct 2024 16:39:37 +0100 Subject: [PATCH 06/57] fix: ensure local prop value is read during teardown (#13611) * fix: ensure local prop value is read during teardown * add test * cleanup * less overhead --- .changeset/clean-sloths-nail.md | 5 +++++ .../src/internal/client/reactivity/props.js | 12 +++++++++--- .../props-local-teardown/Component.svelte | 15 +++++++++++++++ .../samples/props-local-teardown/_config.js | 19 +++++++++++++++++++ .../samples/props-local-teardown/main.svelte | 12 ++++++++++++ 5 files changed, 60 insertions(+), 3 deletions(-) create mode 100644 .changeset/clean-sloths-nail.md create mode 100644 packages/svelte/tests/runtime-runes/samples/props-local-teardown/Component.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/props-local-teardown/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/props-local-teardown/main.svelte diff --git a/.changeset/clean-sloths-nail.md b/.changeset/clean-sloths-nail.md new file mode 100644 index 0000000000..9e93a3fda6 --- /dev/null +++ b/.changeset/clean-sloths-nail.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: ensure local prop value is read during teardown diff --git a/packages/svelte/src/internal/client/reactivity/props.js b/packages/svelte/src/internal/client/reactivity/props.js index b817ace3f0..32969139bf 100644 --- a/packages/svelte/src/internal/client/reactivity/props.js +++ b/packages/svelte/src/internal/client/reactivity/props.js @@ -1,4 +1,4 @@ -/** @import { Source } from './types.js' */ +/** @import { Derived, Source } from './types.js' */ import { DEV } from 'esm-env'; import { PROPS_IS_BINDABLE, @@ -12,6 +12,7 @@ import { mutable_source, set, source } from './sources.js'; import { derived, derived_safe_equal } from './deriveds.js'; import { active_effect, + active_reaction, get, is_signals_recorded, set_active_effect, @@ -20,7 +21,7 @@ import { } from '../runtime.js'; import { safe_equals } from './equality.js'; import * as e from '../errors.js'; -import { BRANCH_EFFECT, LEGACY_DERIVED_PROP, ROOT_EFFECT } from '../constants.js'; +import { BRANCH_EFFECT, DESTROYED, LEGACY_DERIVED_PROP, ROOT_EFFECT } from '../constants.js'; import { proxy } from '../proxy.js'; /** @@ -348,12 +349,17 @@ export function prop(props, key, flags, fallback) { // The derived returns the current value. The underlying mutable // source is written to from various places to persist this value. var inner_current_value = mutable_source(prop_value); + var current_value = with_parent_branch(() => derived(() => { var parent_value = getter(); var child_value = get(inner_current_value); + var current_derived = /** @type {Derived} */ (active_reaction); - if (from_child) { + // If the getter from the parent returns undefined, switch + // to using the local value from inner_current_value instead, + // as the parent value might have been torn down + if (from_child || (parent_value === undefined && (current_derived.f & DESTROYED) !== 0)) { from_child = false; was_from_child = true; return child_value; diff --git a/packages/svelte/tests/runtime-runes/samples/props-local-teardown/Component.svelte b/packages/svelte/tests/runtime-runes/samples/props-local-teardown/Component.svelte new file mode 100644 index 0000000000..c324940402 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/props-local-teardown/Component.svelte @@ -0,0 +1,15 @@ + diff --git a/packages/svelte/tests/runtime-runes/samples/props-local-teardown/_config.js b/packages/svelte/tests/runtime-runes/samples/props-local-teardown/_config.js new file mode 100644 index 0000000000..f79098edbf --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/props-local-teardown/_config.js @@ -0,0 +1,19 @@ +import { flushSync } from 'svelte'; +import { test } from '../../test'; + +export default test({ + async test({ assert, logs, target }) { + const [btn1] = target.querySelectorAll('button'); + + btn1?.click(); + flushSync(); + + btn1?.click(); + flushSync(); + + btn1?.click(); + flushSync(); + + assert.deepEqual(logs, ['init', 'teardown', 'init', 'teardown']); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/props-local-teardown/main.svelte b/packages/svelte/tests/runtime-runes/samples/props-local-teardown/main.svelte new file mode 100644 index 0000000000..9aceaabb77 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/props-local-teardown/main.svelte @@ -0,0 +1,12 @@ + + + + +{#if toggle} + +{/if} + From 76067a5fbcf15143b0c0f9d60234f4560d0966c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Crozatier?= <48696601+fcrozatier@users.noreply.github.com> Date: Tue, 15 Oct 2024 17:48:10 +0200 Subject: [PATCH 07/57] feat: hidden until found and beforematch (#13612) * add types * changeset --- .changeset/bright-seas-brake.md | 5 +++++ packages/svelte/elements.d.ts | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 .changeset/bright-seas-brake.md diff --git a/.changeset/bright-seas-brake.md b/.changeset/bright-seas-brake.md new file mode 100644 index 0000000000..a63350cba6 --- /dev/null +++ b/.changeset/bright-seas-brake.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +feat: add hidden until-found and beforematch diff --git a/packages/svelte/elements.d.ts b/packages/svelte/elements.d.ts index 7b3bc061ac..05954efdad 100644 --- a/packages/svelte/elements.d.ts +++ b/packages/svelte/elements.d.ts @@ -428,6 +428,9 @@ export interface DOMAttributes { onvisibilitychangecapture?: EventHandler | undefined | null; // Global Events + 'on:beforematch'?: EventHandler | undefined | null; + onbeforematch?: EventHandler | undefined | null; + onbeforematchcapture?: EventHandler | undefined | null; 'on:cancel'?: EventHandler | undefined | null; oncancel?: EventHandler | undefined | null; oncancelcapture?: EventHandler | undefined | null; @@ -735,7 +738,7 @@ export interface HTMLAttributes extends AriaAttributes, D | 'send' | undefined | null; - hidden?: boolean | undefined | null; + hidden?: boolean | 'until-found' | '' | undefined | null; id?: string | undefined | null; lang?: string | undefined | null; part?: string | undefined | null; From a17a28b30eeb74af11c72f708fd87e110169316b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 01:41:18 +0100 Subject: [PATCH 08/57] Version Packages (next) (#13603) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 5 +++++ packages/svelte/CHANGELOG.md | 14 ++++++++++++++ packages/svelte/package.json | 2 +- packages/svelte/src/version.js | 2 +- 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 66448194d2..60bf071fb7 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -58,6 +58,7 @@ "bright-falcons-float", "bright-needles-pretend", "bright-peas-juggle", + "bright-seas-brake", "bright-snakes-sing", "brown-geckos-fry", "brown-houses-obey", @@ -94,6 +95,7 @@ "clean-eels-beg", "clean-melons-wash", "clean-shirts-yawn", + "clean-sloths-nail", "clever-chefs-relate", "clever-maps-travel", "clever-rockets-burn", @@ -318,6 +320,7 @@ "great-icons-retire", "great-plums-pretend", "green-baboons-sip", + "green-cameras-bake", "green-eggs-approve", "green-fishes-lie", "green-hounds-play", @@ -513,6 +516,7 @@ "nervous-dolphins-allow", "nervous-ducks-repeat", "nervous-spoons-relax", + "nervous-squids-drop", "nervous-turkeys-end", "new-baboons-fetch", "new-boats-wait", @@ -709,6 +713,7 @@ "silent-rocks-yell", "silly-ducks-mix", "silly-fishes-deny", + "silly-houses-promise", "silly-laws-happen", "silly-lies-film", "silly-masks-exist", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 2883bbdde4..2c2898660e 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,19 @@ # svelte +## 5.0.0-next.266 + +### Patch Changes + +- feat: add hidden until-found and beforematch ([#13612](https://github.com/sveltejs/svelte/pull/13612)) + +- fix: ensure local prop value is read during teardown ([#13611](https://github.com/sveltejs/svelte/pull/13611)) + +- fix: take snippets into account when scoping CSS ([#13589](https://github.com/sveltejs/svelte/pull/13589)) + +- breaking: scope `:not(...)` selectors ([#13568](https://github.com/sveltejs/svelte/pull/13568)) + +- breaking: scope `:has(...)` selectors ([#13567](https://github.com/sveltejs/svelte/pull/13567)) + ## 5.0.0-next.265 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index 5c72318175..1c633a45ad 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -2,7 +2,7 @@ "name": "svelte", "description": "Cybernetically enhanced web apps", "license": "MIT", - "version": "5.0.0-next.265", + "version": "5.0.0-next.266", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index 869b23460c..7a7253055f 100644 --- a/packages/svelte/src/version.js +++ b/packages/svelte/src/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '5.0.0-next.265'; +export const VERSION = '5.0.0-next.266'; export const PUBLIC_VERSION = '5'; From 48f0bfc73f142a51c21e8bf2313fcde64a150d0b Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Wed, 16 Oct 2024 11:44:08 +0200 Subject: [PATCH 09/57] fix: ensure inserted code is preserved during migration (#13617) * fix: moving deriveds during migration deletes part of the inserted code * fix: use update instead of remove * Update .changeset/cool-apes-confess.md Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com> --------- Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com> --- .changeset/cool-apes-confess.md | 5 +++++ packages/svelte/src/compiler/migrate/index.js | 2 +- .../input.svelte | 12 ++++++++++++ .../output.svelte | 15 +++++++++++++++ 4 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 .changeset/cool-apes-confess.md create mode 100644 packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/output.svelte diff --git a/.changeset/cool-apes-confess.md b/.changeset/cool-apes-confess.md new file mode 100644 index 0000000000..6142d430ff --- /dev/null +++ b/.changeset/cool-apes-confess.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: ensure inserted code is preserved during migration diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 5c2c1fb484..42727ea212 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -273,7 +273,7 @@ export function migrate(source, { filename } = {}) { const { start, end } = get_node_range(source, node); str.appendLeft(end, '\n'); str.move(start, end, /** @type {number} */ (parsed.instance?.content.end)); - str.remove(start - (source[start - 2] === '\r' ? 2 : 1), start); + str.update(start - (source[start - 2] === '\r' ? 2 : 1), start, ''); } } diff --git a/packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/input.svelte b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/input.svelte new file mode 100644 index 0000000000..2b90ce8212 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/input.svelte @@ -0,0 +1,12 @@ + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/output.svelte b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/output.svelte new file mode 100644 index 0000000000..dffe4308fb --- /dev/null +++ b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-not-deleting-additions/output.svelte @@ -0,0 +1,15 @@ + \ No newline at end of file From 974e823b5b3d1918188da9aba99cbcc178f4de04 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Wed, 16 Oct 2024 12:05:56 +0100 Subject: [PATCH 10/57] chore: improve internal benchmarking (#13620) * chore: improve internal benchmarking * update type * simplify --- benchmarking/benchmarks/sbench.js | 81 ++++++++++++++++++++----------- 1 file changed, 54 insertions(+), 27 deletions(-) diff --git a/benchmarking/benchmarks/sbench.js b/benchmarking/benchmarks/sbench.js index 4c52265838..f390d84463 100644 --- a/benchmarking/benchmarks/sbench.js +++ b/benchmarking/benchmarks/sbench.js @@ -174,9 +174,12 @@ export async function sbench_create_0to1() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_0to1, COUNT, 0); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_0to1, COUNT, 0); + } + }); + destroy(); }); return { @@ -193,9 +196,12 @@ export async function sbench_create_1to1() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_1to1, COUNT, COUNT); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_1to1, COUNT, COUNT); + } + }); + destroy(); }); return { @@ -212,9 +218,12 @@ export async function sbench_create_2to1() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_2to1, COUNT / 2, COUNT); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_2to1, COUNT / 2, COUNT); + } + }); + destroy(); }); return { @@ -231,9 +240,12 @@ export async function sbench_create_4to1() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_4to1, COUNT / 4, COUNT); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_4to1, COUNT / 4, COUNT); + } + }); + destroy(); }); return { @@ -250,9 +262,12 @@ export async function sbench_create_1000to1() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_1000to1, COUNT / 1000, COUNT); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_1000to1, COUNT / 1000, COUNT); + } + }); + destroy(); }); return { @@ -269,9 +284,12 @@ export async function sbench_create_1to2() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_1to2, COUNT, COUNT / 2); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_1to2, COUNT, COUNT / 2); + } + }); + destroy(); }); return { @@ -288,9 +306,12 @@ export async function sbench_create_1to4() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_1to4, COUNT, COUNT / 4); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_1to4, COUNT, COUNT / 4); + } + }); + destroy(); }); return { @@ -307,9 +328,12 @@ export async function sbench_create_1to8() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_1to8, COUNT, COUNT / 8); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_1to8, COUNT, COUNT / 8); + } + }); + destroy(); }); return { @@ -326,9 +350,12 @@ export async function sbench_create_1to1000() { } const { timing } = await fastest_test(10, () => { - for (let i = 0; i < 100; i++) { - bench(create_computations_1to1000, COUNT, COUNT / 1000); - } + const destroy = $.effect_root(() => { + for (let i = 0; i < 10; i++) { + bench(create_computations_1to1000, COUNT, COUNT / 1000); + } + }); + destroy(); }); return { From 6a38bbe8a3699f4662de39ccbd3293553b88489b Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Wed, 16 Oct 2024 12:30:37 +0100 Subject: [PATCH 11/57] chore: improve derived ownership model (#13623) * chore: improve derived ownership model * remove redundant assertion --- .changeset/nine-vans-admire.md | 5 +++++ .../svelte/src/internal/client/reactivity/deriveds.js | 5 +---- packages/svelte/src/internal/client/runtime.js | 9 ++++++++- packages/svelte/tests/signals/test.ts | 1 - 4 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 .changeset/nine-vans-admire.md diff --git a/.changeset/nine-vans-admire.md b/.changeset/nine-vans-admire.md new file mode 100644 index 0000000000..5ede9fdbbf --- /dev/null +++ b/.changeset/nine-vans-admire.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +chore: improve derived ownership model diff --git a/packages/svelte/src/internal/client/reactivity/deriveds.js b/packages/svelte/src/internal/client/reactivity/deriveds.js index b273e4c518..a5678f1d68 100644 --- a/packages/svelte/src/internal/client/reactivity/deriveds.js +++ b/packages/svelte/src/internal/client/reactivity/deriveds.js @@ -31,7 +31,7 @@ import { inspect_effects, set_inspect_effects } from './sources.js'; */ /*#__NO_SIDE_EFFECTS__*/ export function derived(fn) { - let flags = DERIVED | DIRTY; + var flags = DERIVED | DIRTY; if (active_effect === null) { flags |= UNOWNED; @@ -58,9 +58,6 @@ export function derived(fn) { var derived = /** @type {Derived} */ (active_reaction); (derived.children ??= []).push(signal); } - if (active_effect !== null) { - (active_effect.deriveds ??= []).push(signal); - } return signal; } diff --git a/packages/svelte/src/internal/client/runtime.js b/packages/svelte/src/internal/client/runtime.js index 6786d99d90..0416934ee9 100644 --- a/packages/svelte/src/internal/client/runtime.js +++ b/packages/svelte/src/internal/client/runtime.js @@ -801,10 +801,17 @@ export function get(signal) { set_signal_status(active_effect, DIRTY); schedule_effect(active_effect); } + } else if (is_derived) { + var derived = /** @type {Derived} */ (signal); + var parent = derived.parent; + + if (parent !== null && !parent.deriveds?.includes(derived)) { + (parent.deriveds ??= []).push(derived); + } } if (is_derived) { - var derived = /** @type {Derived} */ (signal); + derived = /** @type {Derived} */ (signal); if (check_dirtiness(derived)) { update_derived(derived); diff --git a/packages/svelte/tests/signals/test.ts b/packages/svelte/tests/signals/test.ts index 4dffd8e962..e2d27267a3 100644 --- a/packages/svelte/tests/signals/test.ts +++ b/packages/svelte/tests/signals/test.ts @@ -488,7 +488,6 @@ describe('signals', () => { assert.equal(a?.deps?.length, 1); assert.equal(s?.reactions?.length, 1); destroy(); - assert.equal(a?.deps, null); assert.equal(s?.reactions, null); }; }); From ed790ee166ba654e3a15ddf960640f57a02ac460 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Wed, 16 Oct 2024 12:51:19 +0100 Subject: [PATCH 12/57] fix: ensure await block scope transforms are isolated (#13622) --- .changeset/tough-pans-boil.md | 5 +++ .../3-transform/client/visitors/AwaitBlock.js | 15 +++++--- .../self-closing-elements/output.svelte | 2 +- .../svelte-self-name-conflict/output.svelte | 2 +- .../migrate/samples/svelte-self/output.svelte | 2 +- .../_expected/client/index.svelte.js | 36 +++++++++++++++++++ .../_expected/server/index.svelte.js | 14 ++++++++ .../samples/await-block-scope/index.svelte | 16 +++++++++ 8 files changed, 85 insertions(+), 7 deletions(-) create mode 100644 .changeset/tough-pans-boil.md create mode 100644 packages/svelte/tests/snapshot/samples/await-block-scope/_expected/client/index.svelte.js create mode 100644 packages/svelte/tests/snapshot/samples/await-block-scope/_expected/server/index.svelte.js create mode 100644 packages/svelte/tests/snapshot/samples/await-block-scope/index.svelte diff --git a/.changeset/tough-pans-boil.md b/.changeset/tough-pans-boil.md new file mode 100644 index 0000000000..33c8dd8393 --- /dev/null +++ b/.changeset/tough-pans-boil.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: ensure await block scope transforms are isolated diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/AwaitBlock.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/AwaitBlock.js index 62c61151bb..146f75d405 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/AwaitBlock.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/AwaitBlock.js @@ -18,27 +18,34 @@ export function AwaitBlock(node, context) { let catch_block; if (node.then) { - const argument = node.value && create_derived_block_argument(node.value, context); + const then_context = { + ...context, + state: { ...context.state, transform: { ...context.state.transform } } + }; + const argument = node.value && create_derived_block_argument(node.value, then_context); /** @type {Pattern[]} */ const args = [b.id('$$anchor')]; if (argument) args.push(argument.id); const declarations = argument?.declarations ?? []; - const block = /** @type {BlockStatement} */ (context.visit(node.then)); + const block = /** @type {BlockStatement} */ (then_context.visit(node.then, then_context.state)); then_block = b.arrow(args, b.block([...declarations, ...block.body])); } if (node.catch) { - const argument = node.error && create_derived_block_argument(node.error, context); + const catch_context = { ...context, state: { ...context.state } }; + const argument = node.error && create_derived_block_argument(node.error, catch_context); /** @type {Pattern[]} */ const args = [b.id('$$anchor')]; if (argument) args.push(argument.id); const declarations = argument?.declarations ?? []; - const block = /** @type {BlockStatement} */ (context.visit(node.catch)); + const block = /** @type {BlockStatement} */ ( + catch_context.visit(node.catch, catch_context.state) + ); catch_block = b.arrow(args, b.block([...declarations, ...block.body])); } diff --git a/packages/svelte/tests/migrate/samples/self-closing-elements/output.svelte b/packages/svelte/tests/migrate/samples/self-closing-elements/output.svelte index 6aee688bb8..6dc21840d1 100644 --- a/packages/svelte/tests/migrate/samples/self-closing-elements/output.svelte +++ b/packages/svelte/tests/migrate/samples/self-closing-elements/output.svelte @@ -2,4 +2,4 @@

- + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/svelte-self-name-conflict/output.svelte b/packages/svelte/tests/migrate/samples/svelte-self-name-conflict/output.svelte index 50f7e42112..7be4cf0d13 100644 --- a/packages/svelte/tests/migrate/samples/svelte-self-name-conflict/output.svelte +++ b/packages/svelte/tests/migrate/samples/svelte-self-name-conflict/output.svelte @@ -19,4 +19,4 @@ child -{/if} +{/if} \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/svelte-self/output.svelte b/packages/svelte/tests/migrate/samples/svelte-self/output.svelte index 8a01edce69..30b65b7775 100644 --- a/packages/svelte/tests/migrate/samples/svelte-self/output.svelte +++ b/packages/svelte/tests/migrate/samples/svelte-self/output.svelte @@ -18,4 +18,4 @@ child -{/if} +{/if} \ No newline at end of file diff --git a/packages/svelte/tests/snapshot/samples/await-block-scope/_expected/client/index.svelte.js b/packages/svelte/tests/snapshot/samples/await-block-scope/_expected/client/index.svelte.js new file mode 100644 index 0000000000..87fce120fd --- /dev/null +++ b/packages/svelte/tests/snapshot/samples/await-block-scope/_expected/client/index.svelte.js @@ -0,0 +1,36 @@ +import "svelte/internal/disclose-version"; +import * as $ from "svelte/internal/client"; + +function increment(_, counter) { + counter.count += 1; +} + +var root = $.template(` `, 1); + +export default function Await_block_scope($$anchor) { + let counter = $.proxy({ count: 0 }); + const promise = $.derived(() => Promise.resolve(counter)); + var fragment = root(); + var button = $.first_child(fragment); + + button.__click = [increment, counter]; + + var text = $.child(button); + + $.reset(button); + + var node = $.sibling(button, 2); + + $.await(node, () => $.get(promise), null, ($$anchor, counter) => {}); + + var text_1 = $.sibling(node); + + $.template_effect(() => { + $.set_text(text, `clicks: ${counter.count ?? ""}`); + $.set_text(text_1, ` ${counter.count ?? ""}`); + }); + + $.append($$anchor, fragment); +} + +$.delegate(["click"]); \ No newline at end of file diff --git a/packages/svelte/tests/snapshot/samples/await-block-scope/_expected/server/index.svelte.js b/packages/svelte/tests/snapshot/samples/await-block-scope/_expected/server/index.svelte.js new file mode 100644 index 0000000000..44c68a7c96 --- /dev/null +++ b/packages/svelte/tests/snapshot/samples/await-block-scope/_expected/server/index.svelte.js @@ -0,0 +1,14 @@ +import * as $ from "svelte/internal/server"; + +export default function Await_block_scope($$payload) { + let counter = { count: 0 }; + const promise = Promise.resolve(counter); + + function increment() { + counter.count += 1; + } + + $$payload.out += ` `; + $.await(promise, () => {}, (counter) => {}, () => {}); + $$payload.out += ` ${$.escape(counter.count)}`; +} \ No newline at end of file diff --git a/packages/svelte/tests/snapshot/samples/await-block-scope/index.svelte b/packages/svelte/tests/snapshot/samples/await-block-scope/index.svelte new file mode 100644 index 0000000000..3dc6c66262 --- /dev/null +++ b/packages/svelte/tests/snapshot/samples/await-block-scope/index.svelte @@ -0,0 +1,16 @@ + + + + +{#await promise then counter}{/await} + +{counter.count} From 75fecf82a63c3c65b9d8ae21e488bbe42e07a918 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Wed, 16 Oct 2024 13:05:26 +0100 Subject: [PATCH 13/57] fix: ensure each block consistency to internal mutations to the collection (#13614) * fix: ensure bind_checked defers mutation to ensure reactive graph stability * better fix * better fix * better fix * better fix * lint * simplify --- .changeset/happy-eggs-rest.md | 5 ++++ .../src/internal/client/dom/blocks/each.js | 8 ++++++ .../checkbox-binding-derived/_config.js | 16 +++++++++++ .../checkbox-binding-derived/checkbox.svelte | 7 +++++ .../checkbox-binding-derived/main.svelte | 28 +++++++++++++++++++ 5 files changed, 64 insertions(+) create mode 100644 .changeset/happy-eggs-rest.md create mode 100644 packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/checkbox.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/main.svelte diff --git a/.changeset/happy-eggs-rest.md b/.changeset/happy-eggs-rest.md new file mode 100644 index 0000000000..d3c39085f6 --- /dev/null +++ b/.changeset/happy-eggs-rest.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: ensure each block consistency to internal mutations to the collection diff --git a/packages/svelte/src/internal/client/dom/blocks/each.js b/packages/svelte/src/internal/client/dom/blocks/each.js index 55bb474db4..67cb8df34e 100644 --- a/packages/svelte/src/internal/client/dom/blocks/each.js +++ b/packages/svelte/src/internal/client/dom/blocks/each.js @@ -225,6 +225,14 @@ export function each(node, flags, get_collection, get_key, render_fn, fallback_f // continue in hydration mode set_hydrating(true); } + + // When we mount the each block for the first time, the collection won't be + // connected to this effect as the effect hasn't finished running yet and its deps + // won't be assigned. However, it's possible that when reconciling the each block + // that a mutation occurred and it's made the collection MAYBE_DIRTY, so reading the + // collection again can provide consistency to the reactive graph again as the deriveds + // will now be `CLEAN`. + get_collection(); }); if (hydrating) { diff --git a/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/_config.js b/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/_config.js new file mode 100644 index 0000000000..c4325dcac2 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/_config.js @@ -0,0 +1,16 @@ +import { flushSync } from 'svelte'; +import { test } from '../../test'; + +export default test({ + async test({ assert, target }) { + const button = target.querySelector('button'); + + button?.click(); + flushSync(); + + assert.htmlEqual( + target.innerHTML, + `` + ); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/checkbox.svelte b/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/checkbox.svelte new file mode 100644 index 0000000000..dff7d20e66 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/checkbox.svelte @@ -0,0 +1,7 @@ + + + diff --git a/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/main.svelte b/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/main.svelte new file mode 100644 index 0000000000..08fcc01fb1 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/checkbox-binding-derived/main.svelte @@ -0,0 +1,28 @@ + + + + +{#each keys as key (key)} + +{/each} From 99c744adbe77e18e8a02492901605a8e59319b54 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 13:13:01 +0100 Subject: [PATCH 14/57] Version Packages (next) (#13621) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 4 ++++ packages/svelte/CHANGELOG.md | 12 ++++++++++++ packages/svelte/package.json | 2 +- packages/svelte/src/version.js | 2 +- 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 60bf071fb7..fa7e153877 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -112,6 +112,7 @@ "cold-teachers-turn", "cool-actors-tan", "cool-ants-leave", + "cool-apes-confess", "cool-comics-marry", "cool-jobs-scream", "cool-peas-lick", @@ -334,6 +335,7 @@ "happy-beds-scream", "happy-dogs-jump", "happy-dolls-joke", + "happy-eggs-rest", "happy-lobsters-lick", "happy-moles-live", "happy-planets-rest", @@ -530,6 +532,7 @@ "nine-ants-invite", "nine-cooks-join", "nine-kids-whisper", + "nine-vans-admire", "ninety-days-visit", "ninety-dingos-walk", "ninety-dots-train", @@ -899,6 +902,7 @@ "tiny-moose-kiss", "tiny-taxis-whisper", "tough-buckets-thank", + "tough-pans-boil", "tough-radios-punch", "tough-snails-chew", "tough-tomatoes-explain", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 2c2898660e..8446c09cc0 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,17 @@ # svelte +## 5.0.0-next.267 + +### Patch Changes + +- fix: ensure inserted code is preserved during migration ([#13617](https://github.com/sveltejs/svelte/pull/13617)) + +- fix: ensure each block consistency to internal mutations to the collection ([#13614](https://github.com/sveltejs/svelte/pull/13614)) + +- chore: improve derived ownership model ([#13623](https://github.com/sveltejs/svelte/pull/13623)) + +- fix: ensure await block scope transforms are isolated ([#13622](https://github.com/sveltejs/svelte/pull/13622)) + ## 5.0.0-next.266 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index 1c633a45ad..86d4affce5 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -2,7 +2,7 @@ "name": "svelte", "description": "Cybernetically enhanced web apps", "license": "MIT", - "version": "5.0.0-next.266", + "version": "5.0.0-next.267", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index 7a7253055f..e71a329055 100644 --- a/packages/svelte/src/version.js +++ b/packages/svelte/src/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '5.0.0-next.266'; +export const VERSION = '5.0.0-next.267'; export const PUBLIC_VERSION = '5'; From 7429854383f96a41b5dafaa2cf1d995bda4a6e85 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Wed, 16 Oct 2024 14:01:17 +0100 Subject: [PATCH 15/57] chore: improve runtime performance of derived signals (#13626) --- .changeset/shiny-jobs-judge.md | 5 +++++ packages/svelte/src/internal/client/runtime.js | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/shiny-jobs-judge.md diff --git a/.changeset/shiny-jobs-judge.md b/.changeset/shiny-jobs-judge.md new file mode 100644 index 0000000000..f808f47f2e --- /dev/null +++ b/.changeset/shiny-jobs-judge.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +chore: improve runtime performance of derived signals diff --git a/packages/svelte/src/internal/client/runtime.js b/packages/svelte/src/internal/client/runtime.js index 0416934ee9..868d77cd10 100644 --- a/packages/svelte/src/internal/client/runtime.js +++ b/packages/svelte/src/internal/client/runtime.js @@ -801,7 +801,7 @@ export function get(signal) { set_signal_status(active_effect, DIRTY); schedule_effect(active_effect); } - } else if (is_derived) { + } else if (is_derived && /** @type {Derived} */ (signal).deps === null) { var derived = /** @type {Derived} */ (signal); var parent = derived.parent; From 2070c8a16601d8e7ad73410661dfd58b85d88c36 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Wed, 16 Oct 2024 14:02:12 +0100 Subject: [PATCH 16/57] breaking: disallow state mutations in logic block expression (#13625) --- .changeset/eighty-dryers-pretend.md | 5 +++++ .../98-reference/.generated/client-errors.md | 2 +- .../svelte/messages/client-errors/errors.md | 2 +- .../src/internal/client/dom/blocks/each.js | 6 +++--- packages/svelte/src/internal/client/errors.js | 4 ++-- .../src/internal/client/reactivity/sources.js | 15 +++++++++++++-- .../samples/side-effect-each/_config.js | 17 +++++++++++++++++ .../samples/side-effect-each/main.svelte | 9 +++++++++ 8 files changed, 51 insertions(+), 9 deletions(-) create mode 100644 .changeset/eighty-dryers-pretend.md create mode 100644 packages/svelte/tests/runtime-runes/samples/side-effect-each/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/side-effect-each/main.svelte diff --git a/.changeset/eighty-dryers-pretend.md b/.changeset/eighty-dryers-pretend.md new file mode 100644 index 0000000000..3416fd615a --- /dev/null +++ b/.changeset/eighty-dryers-pretend.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +breaking: disallow state mutations in logic block expression diff --git a/documentation/docs/98-reference/.generated/client-errors.md b/documentation/docs/98-reference/.generated/client-errors.md index 52580f0300..4e7016b337 100644 --- a/documentation/docs/98-reference/.generated/client-errors.md +++ b/documentation/docs/98-reference/.generated/client-errors.md @@ -125,5 +125,5 @@ Reading state that was created inside the same derived is forbidden. Consider us ### state_unsafe_mutation ``` -Updating state inside a derived is forbidden. If the value should not be reactive, declare it without `$state` +Updating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without `$state` ``` diff --git a/packages/svelte/messages/client-errors/errors.md b/packages/svelte/messages/client-errors/errors.md index 9bd7e8a654..570a384d7c 100644 --- a/packages/svelte/messages/client-errors/errors.md +++ b/packages/svelte/messages/client-errors/errors.md @@ -82,4 +82,4 @@ ## state_unsafe_mutation -> Updating state inside a derived is forbidden. If the value should not be reactive, declare it without `$state` +> Updating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without `$state` diff --git a/packages/svelte/src/internal/client/dom/blocks/each.js b/packages/svelte/src/internal/client/dom/blocks/each.js index 67cb8df34e..e10aed3867 100644 --- a/packages/svelte/src/internal/client/dom/blocks/each.js +++ b/packages/svelte/src/internal/client/dom/blocks/each.js @@ -31,7 +31,7 @@ import { pause_effect, resume_effect } from '../../reactivity/effects.js'; -import { source, mutable_source, set } from '../../reactivity/sources.js'; +import { source, mutable_source, internal_set } from '../../reactivity/sources.js'; import { array_from, is_array } from '../../../shared/utils.js'; import { INERT } from '../../constants.js'; import { queue_micro_task } from '../task.js'; @@ -463,11 +463,11 @@ function reconcile(array, state, anchor, render_fn, flags, get_key) { */ function update_item(item, value, index, type) { if ((type & EACH_ITEM_REACTIVE) !== 0) { - set(item.v, value); + internal_set(item.v, value); } if ((type & EACH_INDEX_REACTIVE) !== 0) { - set(/** @type {Value} */ (item.i), index); + internal_set(/** @type {Value} */ (item.i), index); } else { item.i = index; } diff --git a/packages/svelte/src/internal/client/errors.js b/packages/svelte/src/internal/client/errors.js index 26d38f0aba..a0f33fb784 100644 --- a/packages/svelte/src/internal/client/errors.js +++ b/packages/svelte/src/internal/client/errors.js @@ -343,12 +343,12 @@ export function state_unsafe_local_read() { } /** - * Updating state inside a derived is forbidden. If the value should not be reactive, declare it without `$state` + * Updating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without `$state` * @returns {never} */ export function state_unsafe_mutation() { if (DEV) { - const error = new Error(`state_unsafe_mutation\nUpdating state inside a derived is forbidden. If the value should not be reactive, declare it without \`$state\``); + const error = new Error(`state_unsafe_mutation\nUpdating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without \`$state\``); error.name = 'Svelte error'; throw error; diff --git a/packages/svelte/src/internal/client/reactivity/sources.js b/packages/svelte/src/internal/client/reactivity/sources.js index b7b94afd5d..bb97ea34c8 100644 --- a/packages/svelte/src/internal/client/reactivity/sources.js +++ b/packages/svelte/src/internal/client/reactivity/sources.js @@ -28,7 +28,8 @@ import { BRANCH_EFFECT, INSPECT_EFFECT, UNOWNED, - MAYBE_DIRTY + MAYBE_DIRTY, + BLOCK_EFFECT } from '../constants.js'; import * as e from '../errors.js'; @@ -136,7 +137,7 @@ export function set(source, value) { if ( active_reaction !== null && is_runes() && - (active_reaction.f & DERIVED) !== 0 && + (active_reaction.f & (DERIVED | BLOCK_EFFECT)) !== 0 && // If the source was created locally within the current derived, then // we allow the mutation. (derived_sources === null || !derived_sources.includes(source)) @@ -144,6 +145,16 @@ export function set(source, value) { e.state_unsafe_mutation(); } + return internal_set(source, value); +} + +/** + * @template V + * @param {Source} source + * @param {V} value + * @returns {V} + */ +export function internal_set(source, value) { if (!source.equals(value)) { source.v = value; source.version = increment_version(); diff --git a/packages/svelte/tests/runtime-runes/samples/side-effect-each/_config.js b/packages/svelte/tests/runtime-runes/samples/side-effect-each/_config.js new file mode 100644 index 0000000000..b17c83849f --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/side-effect-each/_config.js @@ -0,0 +1,17 @@ +import { flushSync } from 'svelte'; +import { test } from '../../test'; + +export default test({ + compileOptions: { + dev: true + }, + + test({ assert, target }) { + const button = target.querySelector('button'); + + assert.throws(() => { + button?.click(); + flushSync(); + }, /state_unsafe_mutation/); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/side-effect-each/main.svelte b/packages/svelte/tests/runtime-runes/samples/side-effect-each/main.svelte new file mode 100644 index 0000000000..5821d6ebc1 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/side-effect-each/main.svelte @@ -0,0 +1,9 @@ + + + +{#each items.sort() as item (item)} +

{item}

+{/each} + From 53ae2b81707d202c00d784f3cc793707510492de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Crozatier?= <48696601+fcrozatier@users.noreply.github.com> Date: Wed, 16 Oct 2024 15:04:18 +0200 Subject: [PATCH 17/57] breaking: stronger enumerated types (#13624) * dir * as * http-equiv * kind * preload * shape * scope * method * enctype * template * writingsuggestions * autocapitalize * autocapitalize is standard * autocorrect * changeset --- .changeset/poor-shrimps-explain.md | 5 ++ packages/svelte/elements.d.ts | 93 ++++++++++++++++++++++++------ 2 files changed, 79 insertions(+), 19 deletions(-) create mode 100644 .changeset/poor-shrimps-explain.md diff --git a/.changeset/poor-shrimps-explain.md b/.changeset/poor-shrimps-explain.md new file mode 100644 index 0000000000..5a2cc1c229 --- /dev/null +++ b/.changeset/poor-shrimps-explain.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +breaking: stronger enumerated types diff --git a/packages/svelte/elements.d.ts b/packages/svelte/elements.d.ts index 05954efdad..d44a7c3981 100644 --- a/packages/svelte/elements.d.ts +++ b/packages/svelte/elements.d.ts @@ -721,11 +721,12 @@ export type AriaRole = export interface HTMLAttributes extends AriaAttributes, DOMAttributes { // Standard HTML Attributes accesskey?: string | undefined | null; + autocapitalize?: 'characters' | 'off' | 'on' | 'none' | 'sentences' | 'words' | undefined | null; autofocus?: boolean | undefined | null; class?: string | undefined | null; contenteditable?: Booleanish | 'inherit' | 'plaintext-only' | undefined | null; contextmenu?: string | undefined | null; - dir?: string | undefined | null; + dir?: 'ltr' | 'rtl' | 'auto' | undefined | null; draggable?: Booleanish | undefined | null; elementtiming?: string | undefined | null; enterkeyhint?: @@ -751,6 +752,7 @@ export interface HTMLAttributes extends AriaAttributes, D translate?: 'yes' | 'no' | '' | undefined | null; inert?: boolean | undefined | null; popover?: 'auto' | 'manual' | '' | undefined | null; + writingsuggestions?: Booleanish | undefined | null; // Unknown radiogroup?: string | undefined | null; // , @@ -769,8 +771,6 @@ export interface HTMLAttributes extends AriaAttributes, D vocab?: string | undefined | null; // Non-standard Attributes - autocapitalize?: string | undefined | null; - autocorrect?: string | undefined | null; autosave?: string | undefined | null; color?: string | undefined | null; itemprop?: string | undefined | null; @@ -868,7 +868,7 @@ export interface HTMLAreaAttributes extends HTMLAttributes { media?: string | undefined | null; referrerpolicy?: ReferrerPolicy | undefined | null; rel?: string | undefined | null; - shape?: string | undefined | null; + shape?: 'circle' | 'default' | 'poly' | 'rect' | undefined | null; target?: string | undefined | null; ping?: string | undefined | null; } @@ -886,8 +886,13 @@ export interface HTMLButtonAttributes extends HTMLAttributes disabled?: boolean | undefined | null; form?: string | undefined | null; formaction?: string | undefined | null; - formenctype?: string | undefined | null; - formmethod?: string | undefined | null; + formenctype?: + | 'application/x-www-form-urlencoded' + | 'multipart/form-data' + | 'text/plain' + | undefined + | null; + formmethod?: 'dialog' | 'get' | 'post' | undefined | null; formnovalidate?: boolean | undefined | null; formtarget?: string | undefined | null; name?: string | undefined | null; @@ -952,8 +957,13 @@ export interface HTMLFormAttributes extends HTMLAttributes { acceptcharset?: string | undefined | null; action?: string | undefined | null; autocomplete?: AutoFillBase | undefined | null; - enctype?: string | undefined | null; - method?: string | undefined | null; + enctype?: + | 'application/x-www-form-urlencoded' + | 'multipart/form-data' + | 'text/plain' + | undefined + | null; + method?: 'dialog' | 'get' | 'post' | undefined | null; name?: string | undefined | null; novalidate?: boolean | undefined | null; target?: string | undefined | null; @@ -1040,14 +1050,21 @@ export interface HTMLInputAttributes extends HTMLAttributes { accept?: string | undefined | null; alt?: string | undefined | null; autocomplete?: FullAutoFill | undefined | null; + // Safari only https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#autocorrect + autocorrect?: 'on' | 'off' | '' | undefined | null; capture?: boolean | 'user' | 'environment' | undefined | null; // https://www.w3.org/TR/html-media-capture/#the-capture-attribute checked?: boolean | undefined | null; dirname?: string | undefined | null; disabled?: boolean | undefined | null; form?: string | undefined | null; formaction?: string | undefined | null; - formenctype?: string | undefined | null; - formmethod?: string | undefined | null; + formenctype?: + | 'application/x-www-form-urlencoded' + | 'multipart/form-data' + | 'text/plain' + | undefined + | null; + formmethod?: 'dialog' | 'get' | 'post' | undefined | null; formnovalidate?: boolean | undefined | null; formtarget?: string | undefined | null; height?: number | string | undefined | null; @@ -1100,7 +1117,33 @@ export interface HTMLLiAttributes extends HTMLAttributes { } export interface HTMLLinkAttributes extends HTMLAttributes { - as?: string | undefined | null; + as?: + | 'fetch' + | 'audio' + | 'audioworklet' + | 'document' + | 'embed' + | 'font' + | 'frame' + | 'iframe' + | 'image' + | 'json' + | 'manifest' + | 'object' + | 'paintworklet' + | 'report' + | 'script' + | 'serviceworker' + | 'sharedworker' + | 'style' + | 'track' + | 'video' + | 'webidentity' + | 'worker' + | 'xslt' + | '' + | undefined + | null; crossorigin?: 'anonymous' | 'use-credentials' | '' | undefined | null; href?: string | undefined | null; hreflang?: string | undefined | null; @@ -1143,7 +1186,7 @@ export interface HTMLMediaAttributes extends HTMLAtt mediagroup?: string | undefined | null; muted?: boolean | undefined | null; playsinline?: boolean | undefined | null; - preload?: string | undefined | null; + preload?: 'auto' | 'none' | 'metadata' | '' | undefined | null; src?: string | undefined | null; /** * a value between 0 and 1 @@ -1173,7 +1216,14 @@ export interface HTMLMediaAttributes extends HTMLAtt export interface HTMLMetaAttributes extends HTMLAttributes { charset?: string | undefined | null; content?: string | undefined | null; - 'http-equiv'?: string | undefined | null; + 'http-equiv'?: + | 'content-security-policy' + | 'content-type' + | 'default-style' + | 'refresh' + | 'x-ua-compatible' + | undefined + | null; name?: string | undefined | null; media?: string | undefined | null; } @@ -1329,7 +1379,7 @@ export interface HTMLTdAttributes extends HTMLAttributes { colspan?: number | undefined | null; headers?: string | undefined | null; rowspan?: number | undefined | null; - scope?: string | undefined | null; + scope?: 'col' | 'colgroup' | 'row' | 'rowgroup' | undefined | null; abbr?: string | undefined | null; height?: number | string | undefined | null; width?: number | string | undefined | null; @@ -1341,7 +1391,7 @@ export interface HTMLThAttributes extends HTMLAttributes { colspan?: number | undefined | null; headers?: string | undefined | null; rowspan?: number | undefined | null; - scope?: string | undefined | null; + scope?: 'col' | 'colgroup' | 'row' | 'rowgroup' | undefined | null; abbr?: string | undefined | null; } @@ -1351,7 +1401,7 @@ export interface HTMLTimeAttributes extends HTMLAttributes { export interface HTMLTrackAttributes extends HTMLAttributes { default?: boolean | undefined | null; - kind?: string | undefined | null; + kind?: 'captions' | 'chapters' | 'descriptions' | 'metadata' | 'subtitles' | undefined | null; label?: string | undefined | null; src?: string | undefined | null; srclang?: string | undefined | null; @@ -1453,7 +1503,8 @@ export interface SVGAttributes extends AriaAttributes, DO lang?: string | undefined | null; max?: number | string | undefined | null; media?: string | undefined | null; - method?: string | undefined | null; + // On the `textPath` element + method?: 'align' | 'stretch' | undefined | null; min?: number | string | undefined | null; name?: string | undefined | null; style?: string | undefined | null; @@ -1737,6 +1788,10 @@ export interface SVGAttributes extends AriaAttributes, DO [key: `data-${string}`]: any; } +export interface HTMLTemplateAttributes extends HTMLAttributes { + shadowrootmode?: 'open' | 'closed' | undefined | null; +} + export interface HTMLWebViewAttributes extends HTMLAttributes { allowfullscreen?: boolean | undefined | null; allowpopups?: boolean | undefined | null; @@ -1750,7 +1805,7 @@ export interface HTMLWebViewAttributes extends HTMLAttributes { nodeintegration?: boolean | undefined | null; partition?: string | undefined | null; plugins?: boolean | undefined | null; - preload?: string | undefined | null; + preload?: 'auto' | 'none' | 'metadata' | '' | undefined | null; src?: string | undefined | null; useragent?: string | undefined | null; webpreferences?: string | undefined | null; @@ -1861,7 +1916,7 @@ export interface SvelteHTMLElements { summary: HTMLAttributes; sup: HTMLAttributes; table: HTMLTableAttributes; - template: HTMLAttributes; + template: HTMLTemplateAttributes; tbody: HTMLAttributes; td: HTMLTdAttributes; textarea: HTMLTextareaAttributes; From f579a3ba7d8f088d1d4f8625758e5e5598c9ebfa Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 16 Oct 2024 14:05:38 +0100 Subject: [PATCH 18/57] Version Packages (next) (#13627) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 3 +++ packages/svelte/CHANGELOG.md | 10 ++++++++++ packages/svelte/package.json | 2 +- packages/svelte/src/version.js | 2 +- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index fa7e153877..97e7563f59 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -179,6 +179,7 @@ "eighty-days-cheat", "eighty-days-wave", "eighty-dragons-search", + "eighty-dryers-pretend", "eighty-hornets-breathe", "eighty-lizards-notice", "eighty-mails-develop", @@ -601,6 +602,7 @@ "poor-hats-design", "poor-mugs-pay", "poor-seahorses-flash", + "poor-shrimps-explain", "popular-apes-bathe", "popular-cameras-tie", "popular-cups-bathe", @@ -695,6 +697,7 @@ "sharp-spies-live", "sharp-tomatoes-learn", "shiny-baboons-play", + "shiny-jobs-judge", "shiny-kangaroos-move", "shiny-mayflies-clean", "shiny-melons-love", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 8446c09cc0..18f1769654 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,15 @@ # svelte +## 5.0.0-next.268 + +### Patch Changes + +- breaking: disallow state mutations in logic block expression ([#13625](https://github.com/sveltejs/svelte/pull/13625)) + +- breaking: stronger enumerated types ([#13624](https://github.com/sveltejs/svelte/pull/13624)) + +- chore: improve runtime performance of derived signals ([#13626](https://github.com/sveltejs/svelte/pull/13626)) + ## 5.0.0-next.267 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index 86d4affce5..cd6aebc869 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -2,7 +2,7 @@ "name": "svelte", "description": "Cybernetically enhanced web apps", "license": "MIT", - "version": "5.0.0-next.267", + "version": "5.0.0-next.268", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index e71a329055..c8f12b393d 100644 --- a/packages/svelte/src/version.js +++ b/packages/svelte/src/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '5.0.0-next.267'; +export const VERSION = '5.0.0-next.268'; export const PUBLIC_VERSION = '5'; From 440017d4425fe2904d3ddd5499e2eb6b62be2d28 Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Thu, 17 Oct 2024 11:28:54 +0200 Subject: [PATCH 19/57] fix: better migration for leading and trailing comments (#13630) --- .changeset/popular-dolphins-shake.md | 5 ++ packages/svelte/src/compiler/migrate/index.js | 47 +++++++++++++++++-- .../input.svelte | 27 +++++++++++ .../output.svelte | 27 +++++++++++ 4 files changed, 103 insertions(+), 3 deletions(-) create mode 100644 .changeset/popular-dolphins-shake.md create mode 100644 packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/output.svelte diff --git a/.changeset/popular-dolphins-shake.md b/.changeset/popular-dolphins-shake.md new file mode 100644 index 0000000000..1866a05492 --- /dev/null +++ b/.changeset/popular-dolphins-shake.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: better migration for leading and trailing comments diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 42727ea212..06d551b7c8 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -549,6 +549,25 @@ const instance_script = { labeled_statement && (labeled_has_single_assignment || is_expression_assignment) ) { + const indent = state.str.original.substring( + state.str.original.lastIndexOf('\n', /** @type {number} */ (node.start)) + 1, + /** @type {number} */ (node.start) + ); + // transfer all the leading comments + if ( + labeled_statement.body.type === 'BlockStatement' && + labeled_statement.body.body[0].leadingComments + ) { + for (let comment of labeled_statement.body.body[0].leadingComments) { + state.str.prependLeft( + /** @type {number} */ (node.start), + comment.type === 'Block' + ? `/*${comment.value}*/\n${indent}` + : `// ${comment.value}\n${indent}` + ); + } + } + // Someone wrote a `$: { ... }` statement which we can turn into a `$derived` state.str.appendRight( /** @type {number} */ (declarator.id.typeAnnotation?.end ?? declarator.id.end), @@ -573,6 +592,21 @@ const instance_script = { ')' ); state.derived_labeled_statements.add(labeled_statement); + + // transfer all the trailing comments + if ( + labeled_statement.body.type === 'BlockStatement' && + labeled_statement.body.body[0].trailingComments + ) { + for (let comment of labeled_statement.body.body[0].trailingComments) { + state.str.appendRight( + /** @type {number} */ (declarator.id.typeAnnotation?.end ?? declarator.id.end), + comment.type === 'Block' + ? `\n${indent}/*${comment.value}*/` + : `\n${indent}// ${comment.value}` + ); + } + } } else { state.str.prependLeft( /** @type {number} */ (declarator.id.typeAnnotation?.end ?? declarator.id.end), @@ -1261,11 +1295,18 @@ function handle_events(element, state) { * Returns start and end of the node. If the start is preceeded with white-space-only before a line break, * the start will be the start of the line. * @param {string} source - * @param {Node} node + * @param {LabeledStatement} node */ function get_node_range(source, node) { - let start = /** @type {number} */ (node.start); - let end = /** @type {number} */ (node.end); + const first_leading_comment = node.leadingComments?.[0]; + const last_trailing_comment = node.trailingComments?.[node.trailingComments.length - 1]; + + // @ts-expect-error the type of `Comment` seems to be wrong...the node actually contains + // start and end but the type seems to only contain a `range` (which doesn't actually exists) + let start = /** @type {number} */ (first_leading_comment?.start ?? node.start); + // @ts-expect-error the type of `Comment` seems to be wrong...the node actually contains + // start and end but the type seems to only contain a `range` (which doesn't actually exists) + let end = /** @type {number} */ (last_trailing_comment?.end ?? node.end); let idx = start; while (source[idx - 1] !== '\n' && source[idx - 1] !== '\r') { diff --git a/packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/input.svelte b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/input.svelte new file mode 100644 index 0000000000..78c7a6b124 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/input.svelte @@ -0,0 +1,27 @@ + + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/output.svelte b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/output.svelte new file mode 100644 index 0000000000..48a3378d51 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/reactive-statements-reorder-with-comments/output.svelte @@ -0,0 +1,27 @@ + + + \ No newline at end of file From 372884cf99420dd9d343a4ad78f6aa540a4df289 Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Thu, 17 Oct 2024 12:30:28 +0200 Subject: [PATCH 20/57] fix: use `internal_set` in `await` block (#13642) --- .changeset/forty-chicken-heal.md | 5 +++++ .../src/internal/client/dom/blocks/await.js | 22 +++++++++++-------- .../samples/await-non-promise/_config.js | 9 ++++++++ .../samples/await-non-promise/main.svelte | 9 ++++++++ 4 files changed, 36 insertions(+), 9 deletions(-) create mode 100644 .changeset/forty-chicken-heal.md create mode 100644 packages/svelte/tests/runtime-runes/samples/await-non-promise/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/await-non-promise/main.svelte diff --git a/.changeset/forty-chicken-heal.md b/.changeset/forty-chicken-heal.md new file mode 100644 index 0000000000..6370c007b9 --- /dev/null +++ b/.changeset/forty-chicken-heal.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: use `internal_set` in `await` block diff --git a/packages/svelte/src/internal/client/dom/blocks/await.js b/packages/svelte/src/internal/client/dom/blocks/await.js index 3a282345a7..75bbb23cdd 100644 --- a/packages/svelte/src/internal/client/dom/blocks/await.js +++ b/packages/svelte/src/internal/client/dom/blocks/await.js @@ -1,19 +1,19 @@ /** @import { Effect, Source, TemplateNode } from '#client' */ -import { is_promise, noop } from '../../../shared/utils.js'; +import { DEV } from 'esm-env'; +import { is_promise } from '../../../shared/utils.js'; +import { block, branch, pause_effect, resume_effect } from '../../reactivity/effects.js'; +import { internal_set, mutable_source, source } from '../../reactivity/sources.js'; import { component_context, flush_sync, is_runes, - set_component_context, set_active_effect, set_active_reaction, + set_component_context, set_dev_current_component_function } from '../../runtime.js'; -import { block, branch, pause_effect, resume_effect } from '../../reactivity/effects.js'; -import { DEV } from 'esm-env'; -import { queue_micro_task } from '../task.js'; import { hydrate_next, hydrate_node, hydrating } from '../hydration.js'; -import { mutable_source, set, source } from '../../reactivity/sources.js'; +import { queue_micro_task } from '../task.js'; const PENDING = 0; const THEN = 1; @@ -120,12 +120,16 @@ export function await_block(node, get_input, pending_fn, then_fn, catch_fn) { promise.then( (value) => { if (promise !== input) return; - set(input_source, value); + // we technically could use `set` here since it's on the next microtick + // but let's use internal_set for consistency and just to be safe + internal_set(input_source, value); update(THEN, true); }, (error) => { if (promise !== input) return; - set(error_source, error); + // we technically could use `set` here since it's on the next microtick + // but let's use internal_set for consistency and just to be safe + internal_set(error_source, error); update(CATCH, true); } ); @@ -142,7 +146,7 @@ export function await_block(node, get_input, pending_fn, then_fn, catch_fn) { }); } } else { - set(input_source, input); + internal_set(input_source, input); update(THEN, false); } diff --git a/packages/svelte/tests/runtime-runes/samples/await-non-promise/_config.js b/packages/svelte/tests/runtime-runes/samples/await-non-promise/_config.js new file mode 100644 index 0000000000..14dac30350 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/await-non-promise/_config.js @@ -0,0 +1,9 @@ +import { flushSync } from 'svelte'; +import { test } from '../../test'; + +export default test({ + compileOptions: { + dev: true + }, + test() {} +}); diff --git a/packages/svelte/tests/runtime-runes/samples/await-non-promise/main.svelte b/packages/svelte/tests/runtime-runes/samples/await-non-promise/main.svelte new file mode 100644 index 0000000000..62881ba666 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/await-non-promise/main.svelte @@ -0,0 +1,9 @@ + + +{#await count} + loading +{:then count} + {count} +{/await} \ No newline at end of file From ffa2af754911ff1687de21e1b7faad7d255bdf5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Crozatier?= <48696601+fcrozatier@users.noreply.github.com> Date: Thu, 17 Oct 2024 15:05:05 +0200 Subject: [PATCH 21/57] fix: `method` is case insensitive (#13639) * fix method * changeset --- .changeset/khaki-mirrors-warn.md | 5 +++++ packages/svelte/elements.d.ts | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 .changeset/khaki-mirrors-warn.md diff --git a/.changeset/khaki-mirrors-warn.md b/.changeset/khaki-mirrors-warn.md new file mode 100644 index 0000000000..871e4afcba --- /dev/null +++ b/.changeset/khaki-mirrors-warn.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: `method` attribute is case insensitive diff --git a/packages/svelte/elements.d.ts b/packages/svelte/elements.d.ts index d44a7c3981..8db6648c82 100644 --- a/packages/svelte/elements.d.ts +++ b/packages/svelte/elements.d.ts @@ -892,7 +892,7 @@ export interface HTMLButtonAttributes extends HTMLAttributes | 'text/plain' | undefined | null; - formmethod?: 'dialog' | 'get' | 'post' | undefined | null; + formmethod?: 'dialog' | 'get' | 'post' | 'DIALOG' | 'GET' | 'POST' | undefined | null; formnovalidate?: boolean | undefined | null; formtarget?: string | undefined | null; name?: string | undefined | null; @@ -963,7 +963,7 @@ export interface HTMLFormAttributes extends HTMLAttributes { | 'text/plain' | undefined | null; - method?: 'dialog' | 'get' | 'post' | undefined | null; + method?: 'dialog' | 'get' | 'post' | 'DIALOG' | 'GET' | 'POST' | undefined | null; name?: string | undefined | null; novalidate?: boolean | undefined | null; target?: string | undefined | null; @@ -1064,7 +1064,7 @@ export interface HTMLInputAttributes extends HTMLAttributes { | 'text/plain' | undefined | null; - formmethod?: 'dialog' | 'get' | 'post' | undefined | null; + formmethod?: 'dialog' | 'get' | 'post' | 'DIALOG' | 'GET' | 'POST' | undefined | null; formnovalidate?: boolean | undefined | null; formtarget?: string | undefined | null; height?: number | string | undefined | null; From 139114bdcb7c795ff44f38cafbe8a4a927e4416c Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Thu, 17 Oct 2024 14:05:19 +0100 Subject: [PATCH 22/57] fix: ensure legacy run utility does not cause cycles (#13643) * fix: ensure legacy run utility does not cause cycles * add warning * add warning * lint * feedback * lint * lint --- .changeset/moody-pugs-tan.md | 5 +++++ .../.generated/client-warnings.md | 6 ++++++ .../messages/client-warnings/warnings.md | 4 ++++ .../svelte/src/internal/client/warnings.js | 12 +++++++++++ packages/svelte/src/legacy/legacy-client.js | 20 +++++++++++++++++-- 5 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 .changeset/moody-pugs-tan.md diff --git a/.changeset/moody-pugs-tan.md b/.changeset/moody-pugs-tan.md new file mode 100644 index 0000000000..3881ddb5cf --- /dev/null +++ b/.changeset/moody-pugs-tan.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: ensure legacy run utility does not cause cycles diff --git a/documentation/docs/98-reference/.generated/client-warnings.md b/documentation/docs/98-reference/.generated/client-warnings.md index 7eb94df912..a0e7c3dd40 100644 --- a/documentation/docs/98-reference/.generated/client-warnings.md +++ b/documentation/docs/98-reference/.generated/client-warnings.md @@ -56,6 +56,12 @@ Hydration failed because the initial UI does not match what was rendered on the The `render` function passed to `createRawSnippet` should return HTML for a single element ``` +### legacy_recursive_reactive_block + +``` +Detected a migrated `$:` reactive block that both accesses and updates the same reactive value. This may cause recursive updates when converted to an `$effect`. +``` + ### lifecycle_double_unmount ``` diff --git a/packages/svelte/messages/client-warnings/warnings.md b/packages/svelte/messages/client-warnings/warnings.md index 24355cae54..699aa7e180 100644 --- a/packages/svelte/messages/client-warnings/warnings.md +++ b/packages/svelte/messages/client-warnings/warnings.md @@ -36,6 +36,10 @@ The easiest way to log a value as it changes over time is to use the [`$inspect` > The `render` function passed to `createRawSnippet` should return HTML for a single element +## legacy_recursive_reactive_block + +> Detected a migrated `$:` reactive block that both accesses and updates the same reactive value. This may cause recursive updates when converted to an `$effect`. + ## lifecycle_double_unmount > Tried to unmount a component that was not mounted diff --git a/packages/svelte/src/internal/client/warnings.js b/packages/svelte/src/internal/client/warnings.js index c45a92cdde..20e58aa1aa 100644 --- a/packages/svelte/src/internal/client/warnings.js +++ b/packages/svelte/src/internal/client/warnings.js @@ -99,6 +99,18 @@ export function invalid_raw_snippet_render() { } } +/** + * Detected a migrated `$:` reactive block that both accesses and updates the same reactive value. This may cause recursive updates when converted to an `$effect`. + */ +export function legacy_recursive_reactive_block() { + if (DEV) { + console.warn(`%c[svelte] legacy_recursive_reactive_block\n%cDetected a migrated \`$:\` reactive block that both accesses and updates the same reactive value. This may cause recursive updates when converted to an \`$effect\`.`, bold, normal); + } else { + // TODO print a link to the documentation + console.warn("legacy_recursive_reactive_block"); + } +} + /** * Tried to unmount a component that was not mounted */ diff --git a/packages/svelte/src/legacy/legacy-client.js b/packages/svelte/src/legacy/legacy-client.js index 44f4e8c8fe..629b6c1c35 100644 --- a/packages/svelte/src/legacy/legacy-client.js +++ b/packages/svelte/src/legacy/legacy-client.js @@ -1,10 +1,18 @@ /** @import { ComponentConstructorOptions, ComponentType, SvelteComponent, Component } from 'svelte' */ +import { DIRTY, MAYBE_DIRTY } from '../internal/client/constants.js'; import { user_pre_effect } from '../internal/client/reactivity/effects.js'; import { mutable_source, set } from '../internal/client/reactivity/sources.js'; import { hydrate, mount, unmount } from '../internal/client/render.js'; -import { component_context, flush_sync, get } from '../internal/client/runtime.js'; +import { + active_effect, + component_context, + flush_sync, + get, + set_signal_status +} from '../internal/client/runtime.js'; import { lifecycle_outside_component } from '../internal/shared/errors.js'; import { define_property, is_array } from '../internal/shared/utils.js'; +import * as w from '../internal/client/warnings.js'; /** * Takes the same options as a Svelte 4 component and the component function and returns a Svelte 4 compatible component. @@ -169,7 +177,15 @@ class Svelte4Component { * @returns {void} */ export function run(fn) { - user_pre_effect(fn); + user_pre_effect(() => { + fn(); + var effect = /** @type {import('#client').Effect} */ (active_effect); + // If the effect is immediately made dirty again, mark it as maybe dirty to emulate legacy behaviour + if ((effect.f & DIRTY) !== 0) { + w.legacy_recursive_reactive_block(); + set_signal_status(effect, MAYBE_DIRTY); + } + }); } /** From bb245445fc6350d67e2fb07e0a4346b08a075bc0 Mon Sep 17 00:00:00 2001 From: adiGuba Date: Thu, 17 Oct 2024 15:31:56 +0200 Subject: [PATCH 23/57] fix : $.component() break transition (#13646) * $.component() must use EFFECT_TRANSPARENT * changeset * Update .changeset/eight-pans-worry.md --------- Co-authored-by: Dominic Gannaway --- .changeset/eight-pans-worry.md | 5 +++ .../client/dom/blocks/svelte-component.js | 3 +- .../samples/transition-component/Foo.svelte | 13 ++++++++ .../samples/transition-component/_config.js | 32 +++++++++++++++++++ .../samples/transition-component/main.svelte | 13 ++++++++ 5 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 .changeset/eight-pans-worry.md create mode 100644 packages/svelte/tests/runtime-runes/samples/transition-component/Foo.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/transition-component/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/transition-component/main.svelte diff --git a/.changeset/eight-pans-worry.md b/.changeset/eight-pans-worry.md new file mode 100644 index 0000000000..61c970b97f --- /dev/null +++ b/.changeset/eight-pans-worry.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: transitions within dynamic components now function correctly diff --git a/packages/svelte/src/internal/client/dom/blocks/svelte-component.js b/packages/svelte/src/internal/client/dom/blocks/svelte-component.js index 1c7106bb7f..72157eaa40 100644 --- a/packages/svelte/src/internal/client/dom/blocks/svelte-component.js +++ b/packages/svelte/src/internal/client/dom/blocks/svelte-component.js @@ -1,4 +1,5 @@ /** @import { TemplateNode, Dom, Effect } from '#client' */ +import { EFFECT_TRANSPARENT } from '../../constants.js'; import { block, branch, pause_effect } from '../../reactivity/effects.js'; import { hydrate_next, hydrate_node, hydrating } from '../hydration.js'; @@ -34,7 +35,7 @@ export function component(node, get_component, render_fn) { if (component) { effect = branch(() => render_fn(anchor, component)); } - }); + }, EFFECT_TRANSPARENT); if (hydrating) { anchor = hydrate_node; diff --git a/packages/svelte/tests/runtime-runes/samples/transition-component/Foo.svelte b/packages/svelte/tests/runtime-runes/samples/transition-component/Foo.svelte new file mode 100644 index 0000000000..eef87a1ec5 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/transition-component/Foo.svelte @@ -0,0 +1,13 @@ + + +

foo

+ diff --git a/packages/svelte/tests/runtime-runes/samples/transition-component/_config.js b/packages/svelte/tests/runtime-runes/samples/transition-component/_config.js new file mode 100644 index 0000000000..414a8b0cc2 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/transition-component/_config.js @@ -0,0 +1,32 @@ +import { flushSync } from '../../../../src/index-client.js'; +import { test } from '../../test'; + +/** + * $.component() should not break transition + * https://github.com/sveltejs/svelte/issues/13645 + */ +export default test({ + test({ assert, raf, target }) { + const btn = target.querySelector('button'); + + // in + btn?.click(); + flushSync(); + assert.htmlEqual( + target.innerHTML, + '

foo

foo

' + ); + + raf.tick(50); + assert.htmlEqual( + target.innerHTML, + '

foo

foo

' + ); + + raf.tick(100); + assert.htmlEqual( + target.innerHTML, + '

foo

foo

' + ); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/transition-component/main.svelte b/packages/svelte/tests/runtime-runes/samples/transition-component/main.svelte new file mode 100644 index 0000000000..1dd29e767b --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/transition-component/main.svelte @@ -0,0 +1,13 @@ + + + + +{#if visible} + + +{/if} \ No newline at end of file From e21e624fff63d492b7cbd4ebc1d45a59feb86c42 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Thu, 17 Oct 2024 16:08:48 +0100 Subject: [PATCH 24/57] chore: avoid reporting inspections when an exception occurs (#13601) * chore: avoid reporting inspections when an exception occurs * add test * revise --- .changeset/light-crews-deny.md | 5 +++++ .../svelte/src/internal/client/dev/inspect.js | 20 ++++++++++++++++++- .../inspect-exception/Component.svelte | 7 +++++++ .../samples/inspect-exception/_config.js | 16 +++++++++++++++ .../samples/inspect-exception/main.svelte | 13 ++++++++++++ 5 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 .changeset/light-crews-deny.md create mode 100644 packages/svelte/tests/runtime-runes/samples/inspect-exception/Component.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/inspect-exception/main.svelte diff --git a/.changeset/light-crews-deny.md b/.changeset/light-crews-deny.md new file mode 100644 index 0000000000..295357a74e --- /dev/null +++ b/.changeset/light-crews-deny.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +chore: avoid reporting inspections when an exception occurs diff --git a/packages/svelte/src/internal/client/dev/inspect.js b/packages/svelte/src/internal/client/dev/inspect.js index c5765cfc07..e13ef470cf 100644 --- a/packages/svelte/src/internal/client/dev/inspect.js +++ b/packages/svelte/src/internal/client/dev/inspect.js @@ -1,3 +1,4 @@ +import { UNINITIALIZED } from '../../../constants.js'; import { snapshot } from '../../shared/clone.js'; import { inspect_effect, validate_effect } from '../reactivity/effects.js'; @@ -12,7 +13,24 @@ export function inspect(get_value, inspector = console.log) { let initial = true; inspect_effect(() => { - inspector(initial ? 'init' : 'update', ...snapshot(get_value(), true)); + /** @type {any} */ + var value = UNINITIALIZED; + + // Capturing the value might result in an exception due to the inspect effect being + // sync and thus operating on stale data. In the case we encounter an exception we + // can bail-out of reporting the value. Instead we simply console.error the error + // so at least it's known that an error occured, but we don't stop execution + try { + value = get_value(); + } catch (error) { + // eslint-disable-next-line no-console + console.error(error); + } + + if (value !== UNINITIALIZED) { + inspector(initial ? 'init' : 'update', ...snapshot(value, true)); + } + initial = false; }); } diff --git a/packages/svelte/tests/runtime-runes/samples/inspect-exception/Component.svelte b/packages/svelte/tests/runtime-runes/samples/inspect-exception/Component.svelte new file mode 100644 index 0000000000..3902bd008c --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/inspect-exception/Component.svelte @@ -0,0 +1,7 @@ + +

{a}

diff --git a/packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js b/packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js new file mode 100644 index 0000000000..57caf6e08d --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/inspect-exception/_config.js @@ -0,0 +1,16 @@ +import { flushSync } from 'svelte'; +import { test } from '../../test'; + +export default test({ + compileOptions: { + dev: true + }, + + async test({ assert, target, logs }) { + const b1 = target.querySelector('button'); + b1?.click(); + flushSync(); + + assert.deepEqual(logs, ['init', 'a', 'init', 'b']); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/inspect-exception/main.svelte b/packages/svelte/tests/runtime-runes/samples/inspect-exception/main.svelte new file mode 100644 index 0000000000..98b15708f7 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/inspect-exception/main.svelte @@ -0,0 +1,13 @@ + + + + +{#if s.a} + {#each Object.entries(s.a) as [k, v]} + + {/each} +{/if} From 193cc37f7a9ec4148b1106f942c363cf41da85f6 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Thu, 17 Oct 2024 16:43:39 +0100 Subject: [PATCH 25/57] fix: correctly applies autofocus to static elements (#13648) * fix: correctly applies autofocus to static elements * lint * fix other case --- .changeset/healthy-poets-float.md | 5 +++++ .../compiler/phases/2-analyze/visitors/RegularElement.js | 8 ++++++++ .../phases/3-transform/client/visitors/shared/fragment.js | 4 ++++ .../tests/runtime-legacy/samples/autofocus-2/_config.js | 7 +++++++ .../tests/runtime-legacy/samples/autofocus-2/main.svelte | 2 ++ .../tests/runtime-legacy/samples/autofocus-3/_config.js | 7 +++++++ .../tests/runtime-legacy/samples/autofocus-3/main.svelte | 3 +++ 7 files changed, 36 insertions(+) create mode 100644 .changeset/healthy-poets-float.md create mode 100644 packages/svelte/tests/runtime-legacy/samples/autofocus-2/_config.js create mode 100644 packages/svelte/tests/runtime-legacy/samples/autofocus-2/main.svelte create mode 100644 packages/svelte/tests/runtime-legacy/samples/autofocus-3/_config.js create mode 100644 packages/svelte/tests/runtime-legacy/samples/autofocus-3/main.svelte diff --git a/.changeset/healthy-poets-float.md b/.changeset/healthy-poets-float.md new file mode 100644 index 0000000000..4709b4495e --- /dev/null +++ b/.changeset/healthy-poets-float.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: correctly applies autofocus to static elements diff --git a/packages/svelte/src/compiler/phases/2-analyze/visitors/RegularElement.js b/packages/svelte/src/compiler/phases/2-analyze/visitors/RegularElement.js index 49a642eb49..dd8a594e61 100644 --- a/packages/svelte/src/compiler/phases/2-analyze/visitors/RegularElement.js +++ b/packages/svelte/src/compiler/phases/2-analyze/visitors/RegularElement.js @@ -75,6 +75,14 @@ export function RegularElement(node, context) { node.attributes.push(create_attribute('value', child.start, child.end, [child])); } + if ( + node.attributes.some( + (attribute) => attribute.type === 'Attribute' && attribute.name === 'autofocus' + ) + ) { + mark_subtree_dynamic(context.path); + } + const binding = context.state.scope.get(node.name); if ( binding !== null && diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js index 4008dbdfa3..4de1a11a97 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/fragment.js @@ -142,6 +142,10 @@ function is_static_element(node) { return false; } + if (attribute.name === 'autofocus') { + return false; + } + if (node.name === 'option' && attribute.name === 'value') { return false; } diff --git a/packages/svelte/tests/runtime-legacy/samples/autofocus-2/_config.js b/packages/svelte/tests/runtime-legacy/samples/autofocus-2/_config.js new file mode 100644 index 0000000000..24b45b3761 --- /dev/null +++ b/packages/svelte/tests/runtime-legacy/samples/autofocus-2/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + async test({ assert, target, window }) { + assert.equal(target.querySelector('input'), window.document.activeElement); + } +}); diff --git a/packages/svelte/tests/runtime-legacy/samples/autofocus-2/main.svelte b/packages/svelte/tests/runtime-legacy/samples/autofocus-2/main.svelte new file mode 100644 index 0000000000..e3ea9a76d4 --- /dev/null +++ b/packages/svelte/tests/runtime-legacy/samples/autofocus-2/main.svelte @@ -0,0 +1,2 @@ +

wat

+ diff --git a/packages/svelte/tests/runtime-legacy/samples/autofocus-3/_config.js b/packages/svelte/tests/runtime-legacy/samples/autofocus-3/_config.js new file mode 100644 index 0000000000..24b45b3761 --- /dev/null +++ b/packages/svelte/tests/runtime-legacy/samples/autofocus-3/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + async test({ assert, target, window }) { + assert.equal(target.querySelector('input'), window.document.activeElement); + } +}); diff --git a/packages/svelte/tests/runtime-legacy/samples/autofocus-3/main.svelte b/packages/svelte/tests/runtime-legacy/samples/autofocus-3/main.svelte new file mode 100644 index 0000000000..31d2cbc0ec --- /dev/null +++ b/packages/svelte/tests/runtime-legacy/samples/autofocus-3/main.svelte @@ -0,0 +1,3 @@ +
+ +
From d7cf76bbb6b9f38048f5f2217b5226d144c328a5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 17 Oct 2024 08:46:12 -0700 Subject: [PATCH 26/57] Version Packages (next) (#13640) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 7 +++++++ packages/svelte/CHANGELOG.md | 18 ++++++++++++++++++ packages/svelte/package.json | 2 +- packages/svelte/src/version.js | 2 +- 4 files changed, 27 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 97e7563f59..badbf7eb61 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -171,6 +171,7 @@ "eight-cougars-watch", "eight-hornets-punch", "eight-jeans-compare", + "eight-pans-worry", "eight-pianos-raise", "eight-steaks-shout", "eight-waves-mate", @@ -246,6 +247,7 @@ "fluffy-kings-complain", "fluffy-ravens-juggle", "forty-bikes-buy", + "forty-chicken-heal", "forty-comics-invent", "forty-dogs-divide", "forty-dolls-wave", @@ -345,6 +347,7 @@ "healthy-dancers-play", "healthy-mangos-brush", "healthy-planes-vanish", + "healthy-poets-float", "healthy-zebras-accept", "heavy-cars-ring", "heavy-comics-move", @@ -400,6 +403,7 @@ "khaki-ligers-sing", "khaki-mails-draw", "khaki-mails-scream", + "khaki-mirrors-warn", "khaki-monkeys-cry", "khaki-moose-arrive", "khaki-tomatoes-rule", @@ -433,6 +437,7 @@ "lemon-meals-appear", "lemon-trees-act", "light-badgers-glow", + "light-crews-deny", "light-days-clean", "light-hounds-carry", "light-humans-hang", @@ -497,6 +502,7 @@ "moody-houses-argue", "moody-lions-watch", "moody-owls-cry", + "moody-pugs-tan", "moody-sheep-type", "moody-toys-relax", "nasty-carrots-develop", @@ -606,6 +612,7 @@ "popular-apes-bathe", "popular-cameras-tie", "popular-cups-bathe", + "popular-dolphins-shake", "popular-feet-rule", "popular-games-hug", "popular-ligers-perform", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 18f1769654..dd4aa87d87 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,23 @@ # svelte +## 5.0.0-next.269 + +### Patch Changes + +- fix: transitions within dynamic components now function correctly ([#13646](https://github.com/sveltejs/svelte/pull/13646)) + +- fix: use `internal_set` in `await` block ([#13642](https://github.com/sveltejs/svelte/pull/13642)) + +- fix: correctly applies autofocus to static elements ([#13648](https://github.com/sveltejs/svelte/pull/13648)) + +- fix: `method` attribute is case insensitive ([#13639](https://github.com/sveltejs/svelte/pull/13639)) + +- chore: avoid reporting inspections when an exception occurs ([#13601](https://github.com/sveltejs/svelte/pull/13601)) + +- fix: ensure legacy run utility does not cause cycles ([#13643](https://github.com/sveltejs/svelte/pull/13643)) + +- fix: better migration for leading and trailing comments ([#13630](https://github.com/sveltejs/svelte/pull/13630)) + ## 5.0.0-next.268 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index cd6aebc869..b75008ebf1 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -2,7 +2,7 @@ "name": "svelte", "description": "Cybernetically enhanced web apps", "license": "MIT", - "version": "5.0.0-next.268", + "version": "5.0.0-next.269", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index c8f12b393d..51a7254422 100644 --- a/packages/svelte/src/version.js +++ b/packages/svelte/src/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '5.0.0-next.268'; +export const VERSION = '5.0.0-next.269'; export const PUBLIC_VERSION = '5'; From b352f08e9d7ca1a6a03887c1f2ab9e44910e1c25 Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Thu, 17 Oct 2024 20:06:24 +0200 Subject: [PATCH 27/57] fix: migrating rest props type includes props types (#13632) * fix: rest props type includes props types * chore: remove extra line * Update .changeset/spotty-kings-hug.md --- .changeset/spotty-kings-hug.md | 5 ++++ packages/svelte/src/compiler/migrate/index.js | 30 +++++++++---------- .../samples/props-rest-props-ts/input.svelte | 5 ++++ .../samples/props-rest-props-ts/output.svelte | 10 +++++++ .../samples/props-rest-props/output.svelte | 2 +- .../samples/slots-with-$$props/output.svelte | 2 +- .../samples/svelte-component/output.svelte | 2 +- .../svelte-self-name-conflict/output.svelte | 2 +- .../migrate/samples/svelte-self/output.svelte | 2 +- 9 files changed, 40 insertions(+), 20 deletions(-) create mode 100644 .changeset/spotty-kings-hug.md create mode 100644 packages/svelte/tests/migrate/samples/props-rest-props-ts/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/props-rest-props-ts/output.svelte diff --git a/.changeset/spotty-kings-hug.md b/.changeset/spotty-kings-hug.md new file mode 100644 index 0000000000..170b2c4b8c --- /dev/null +++ b/.changeset/spotty-kings-hug.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: migrating rest props type includes props types diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 06d551b7c8..66e5f2918a 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -198,26 +198,26 @@ export function migrate(source, { filename } = {}) { const type_name = state.scope.root.unique('Props').name; let type = ''; if (uses_ts) { + type = `interface ${type_name} {${newline_separator}${state.props + .map((prop) => { + const comment = prop.comment ? `${prop.comment}${newline_separator}` : ''; + return `${comment}${prop.exported}${prop.optional ? '?' : ''}: ${prop.type};`; + }) + .join(newline_separator)}`; if (analysis.uses_props || analysis.uses_rest_props) { - type = `interface ${type_name} { [key: string]: any }`; - } else { - type = `interface ${type_name} {${newline_separator}${state.props - .map((prop) => { - const comment = prop.comment ? `${prop.comment}${newline_separator}` : ''; - return `${comment}${prop.exported}${prop.optional ? '?' : ''}: ${prop.type};`; - }) - .join(newline_separator)}\n${indent}}`; + type += `${state.props.length > 0 ? newline_separator : ''}[key: string]: any`; } + type += `\n${indent}}`; } else { + type = `{${state.props + .map((prop) => { + return `${prop.exported}${prop.optional ? '?' : ''}: ${prop.type}`; + }) + .join(`, `)}`; if (analysis.uses_props || analysis.uses_rest_props) { - type = `Record`; - } else { - type = `{${state.props - .map((prop) => { - return `${prop.exported}${prop.optional ? '?' : ''}: ${prop.type}`; - }) - .join(`, `)}}`; + type += `${state.props.length > 0 ? ', ' : ''}[key: string]: any`; } + type += '}'; } let props_declaration = `let {${props_separator}${props}${has_many_props ? `\n${indent}` : ' '}}`; diff --git a/packages/svelte/tests/migrate/samples/props-rest-props-ts/input.svelte b/packages/svelte/tests/migrate/samples/props-rest-props-ts/input.svelte new file mode 100644 index 0000000000..a4501f59a3 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/props-rest-props-ts/input.svelte @@ -0,0 +1,5 @@ + + + diff --git a/packages/svelte/tests/migrate/samples/props-rest-props-ts/output.svelte b/packages/svelte/tests/migrate/samples/props-rest-props-ts/output.svelte new file mode 100644 index 0000000000..47e59dced0 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/props-rest-props-ts/output.svelte @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/props-rest-props/output.svelte b/packages/svelte/tests/migrate/samples/props-rest-props/output.svelte index fd6773a999..7afdc7aac7 100644 --- a/packages/svelte/tests/migrate/samples/props-rest-props/output.svelte +++ b/packages/svelte/tests/migrate/samples/props-rest-props/output.svelte @@ -1,5 +1,5 @@ diff --git a/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte b/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte index b5cf1518e4..c40d990157 100644 --- a/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte +++ b/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte @@ -1,5 +1,5 @@ diff --git a/packages/svelte/tests/migrate/samples/svelte-self/output.svelte b/packages/svelte/tests/migrate/samples/svelte-self/output.svelte index 30b65b7775..23b9af5c00 100644 --- a/packages/svelte/tests/migrate/samples/svelte-self/output.svelte +++ b/packages/svelte/tests/migrate/samples/svelte-self/output.svelte @@ -1,6 +1,6 @@ From 0dcd4f6c6e8db809e5fd79e65ade10617568aa2f Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Fri, 18 Oct 2024 02:59:57 +0200 Subject: [PATCH 28/57] feat: add `migration-task` comment after errors (#13659) --- .changeset/slimy-garlics-beg.md | 5 +++ packages/svelte/src/compiler/migrate/index.js | 41 ++++++++++++++++++- .../input.svelte | 11 +++++ .../output.svelte | 12 ++++++ .../input.svelte | 5 +++ .../output.svelte | 6 +++ .../input.svelte | 5 +++ .../output.svelte | 6 +++ .../input.svelte | 11 +++++ .../output.svelte | 11 +++++ .../input.svelte | 7 ++++ .../output.svelte | 7 ++++ 12 files changed, 125 insertions(+), 2 deletions(-) create mode 100644 .changeset/slimy-garlics-beg.md create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/output.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/output.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/output.svelte create mode 100644 packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/output.svelte create mode 100644 packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/output.svelte diff --git a/.changeset/slimy-garlics-beg.md b/.changeset/slimy-garlics-beg.md new file mode 100644 index 0000000000..3add07c483 --- /dev/null +++ b/.changeset/slimy-garlics-beg.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +feat: add `migration-task` comment after errors diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 66e5f2918a..2ca590ac69 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -301,8 +301,11 @@ export function migrate(source, { filename } = {}) { return { code: str.toString() }; } catch (e) { // eslint-disable-next-line no-console - console.error('Error while migrating Svelte code'); - throw e; + console.error('Error while migrating Svelte code', e); + + return { + code: `\n${source}` + }; } } @@ -348,6 +351,40 @@ const instance_script = { }, ImportDeclaration(node, { state }) { state.props_insertion_point = node.end ?? state.props_insertion_point; + if (node.source.value === 'svelte') { + let illegal_specifiers = []; + let removed_specifiers = 0; + for (let specifier of node.specifiers) { + if ( + specifier.type === 'ImportSpecifier' && + ['beforeUpdate', 'afterUpdate'].includes(specifier.imported.name) + ) { + const references = state.scope.references.get(specifier.local.name); + if (!references) { + let end = /** @type {number} */ ( + state.str.original.indexOf(',', specifier.end) !== -1 && + state.str.original.indexOf(',', specifier.end) < + state.str.original.indexOf('}', specifier.end) + ? state.str.original.indexOf(',', specifier.end) + 1 + : specifier.end + ); + while (state.str.original[end].trim() === '') end++; + state.str.remove(/** @type {number} */ (specifier.start), end); + removed_specifiers++; + continue; + } + illegal_specifiers.push(specifier.imported.name); + } + } + if (removed_specifiers === node.specifiers.length) { + state.str.remove(/** @type {number} */ (node.start), /** @type {number} */ (node.end)); + } + if (illegal_specifiers.length > 0) { + throw new Error( + `Can't migrate code with ${illegal_specifiers.join(' and ')}. Please migrate by hand.` + ); + } + } }, ExportNamedDeclaration(node, { state, next }) { if (node.declaration) { diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/input.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/input.svelte new file mode 100644 index 0000000000..9ee8b30c32 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/input.svelte @@ -0,0 +1,11 @@ + diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/output.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/output.svelte new file mode 100644 index 0000000000..b12d036c09 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/output.svelte @@ -0,0 +1,12 @@ + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/input.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/input.svelte new file mode 100644 index 0000000000..c707131841 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/input.svelte @@ -0,0 +1,5 @@ + + +{$$props} \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/output.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/output.svelte new file mode 100644 index 0000000000..35707ad4a1 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/output.svelte @@ -0,0 +1,6 @@ + + + +{$$props} \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/input.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/input.svelte new file mode 100644 index 0000000000..f6c9903ae9 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/input.svelte @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/output.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/output.svelte new file mode 100644 index 0000000000..b267be270d --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/output.svelte @@ -0,0 +1,6 @@ + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/input.svelte b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/input.svelte new file mode 100644 index 0000000000..e1e8ebf06e --- /dev/null +++ b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/input.svelte @@ -0,0 +1,11 @@ + + + diff --git a/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/output.svelte b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/output.svelte new file mode 100644 index 0000000000..a5e4c15662 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate-extra-imports/output.svelte @@ -0,0 +1,11 @@ + + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/input.svelte b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/input.svelte new file mode 100644 index 0000000000..76952f5961 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/input.svelte @@ -0,0 +1,7 @@ + + + diff --git a/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/output.svelte b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/output.svelte new file mode 100644 index 0000000000..e34158fe6f --- /dev/null +++ b/packages/svelte/tests/migrate/samples/unused-beforeUpdate-afterUpdate/output.svelte @@ -0,0 +1,7 @@ + + + \ No newline at end of file From 969e6aa750a4dccf3566fd4b12545f83e2492c72 Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Fri, 18 Oct 2024 03:05:01 +0200 Subject: [PATCH 29/57] feat: add `migration-task` for impossible to migrate slots (#13658) * feat: add `migration-task` for impossible to migrate slots * Update packages/svelte/src/compiler/migrate/index.js Co-authored-by: Paolo Ricciuti * Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte Co-authored-by: Paolo Ricciuti * Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte Co-authored-by: Paolo Ricciuti * Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte Co-authored-by: Paolo Ricciuti * Update packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte Co-authored-by: Paolo Ricciuti --------- Co-authored-by: Dominic Gannaway --- .changeset/good-kings-try.md | 5 ++ packages/svelte/src/compiler/migrate/index.js | 8 ++++ .../samples/slot-non-identifier/input.svelte | 39 +++++++++++++++ .../samples/slot-non-identifier/output.svelte | 47 +++++++++++++++++++ 4 files changed, 99 insertions(+) create mode 100644 .changeset/good-kings-try.md create mode 100644 packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte diff --git a/.changeset/good-kings-try.md b/.changeset/good-kings-try.md new file mode 100644 index 0000000000..b2239f91a2 --- /dev/null +++ b/.changeset/good-kings-try.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +feat: add `migration-task` for impossible to migrate slots diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 2ca590ac69..a554d0f0bb 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -18,6 +18,7 @@ import { import { migrate_svelte_ignore } from '../utils/extract_svelte_ignore.js'; import { validate_component_options } from '../validate-options.js'; import { is_svg, is_void } from '../../utils.js'; +import { regex_is_valid_identifier } from '../phases/patterns.js'; const regex_style_tags = /(]+>)([\S\s]*?)(<\/style>)/g; const style_placeholder = '/*$$__STYLE_CONTENT__$$*/'; @@ -1082,6 +1083,13 @@ function migrate_slot_usage(node, path, state) { is_text_attribute(attribute) ) { snippet_name = attribute.value[0].data; + if (!regex_is_valid_identifier.test(snippet_name)) { + state.str.appendLeft( + node.start, + `\n${state.indent}` + ); + return; + } state.str.remove(attribute.start, attribute.end); } if (attribute.type === 'LetDirective') { diff --git a/packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte b/packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte new file mode 100644 index 0000000000..a5dfd1aad1 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte @@ -0,0 +1,39 @@ + + + +
+ cool +
+
+ + +
+ cool +
+
+ + +
+ cool +
+
+ + + + cool + + + + + + cool + + + + + + cool + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte b/packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte new file mode 100644 index 0000000000..6ea49817d1 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte @@ -0,0 +1,47 @@ + + + + +
+ cool +
+
+ + + +
+ cool +
+
+ + + {#snippet stuff()} +
+ cool +
+ {/snippet} +
+ + + + + cool + + + + + + + cool + + + + + {#snippet stuff()} + + cool + + {/snippet} + \ No newline at end of file From 9f930f4e9b3c39adcddf3efce6faea92377542b1 Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Fri, 18 Oct 2024 12:09:08 +0200 Subject: [PATCH 30/57] feat: tell users of `@migration-task` (#13668) --- .changeset/nasty-teachers-end.md | 5 +++++ packages/svelte/src/compiler/migrate/index.js | 14 +++++++++++++- .../_config.js | 7 +++++++ .../_config.js | 7 +++++++ .../_config.js | 7 +++++++ .../samples/svelte-self-skip-filename/_config.js | 5 ++++- packages/svelte/tests/migrate/test.ts | 15 ++++++++++++++- 7 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 .changeset/nasty-teachers-end.md create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/_config.js create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/_config.js create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/_config.js diff --git a/.changeset/nasty-teachers-end.md b/.changeset/nasty-teachers-end.md new file mode 100644 index 0000000000..ee84cce019 --- /dev/null +++ b/.changeset/nasty-teachers-end.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +feat: tell users of `@migration-task` diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index a554d0f0bb..69c840aedb 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -23,6 +23,8 @@ import { regex_is_valid_identifier } from '../phases/patterns.js'; const regex_style_tags = /(]+>)([\S\s]*?)(<\/style>)/g; const style_placeholder = '/*$$__STYLE_CONTENT__$$*/'; +let has_migration_task = false; + /** * Does a best-effort migration of Svelte code towards using runes, event attributes and render tags. * May throw an error if the code is too complex to migrate automatically. @@ -33,6 +35,7 @@ const style_placeholder = '/*$$__STYLE_CONTENT__$$*/'; */ export function migrate(source, { filename } = {}) { try { + has_migration_task = false; // Blank CSS, could contain SCSS or similar that needs a preprocessor. // Since we don't care about CSS in this migration, we'll just ignore it. /** @type {Array<[number, string]>} */ @@ -303,10 +306,17 @@ export function migrate(source, { filename } = {}) { } catch (e) { // eslint-disable-next-line no-console console.error('Error while migrating Svelte code', e); - + has_migration_task = true; return { code: `\n${source}` }; + } finally { + if (has_migration_task) { + // eslint-disable-next-line no-console + console.log( + `One or more \`@migration-task\` comments were added to ${filename ? `\`${filename}\`` : "a file (unfortunately we don't know the name)"}, please check them and complete the migration manually.` + ); + } } } @@ -820,6 +830,7 @@ const template = { const source = state.str.original.substring(node.start, node.end); if (!state.filename) { const indent = guess_indent(source); + has_migration_task = true; state.str.prependRight( node.start, `\n${indent}` @@ -1084,6 +1095,7 @@ function migrate_slot_usage(node, path, state) { ) { snippet_name = attribute.value[0].data; if (!regex_is_valid_identifier.test(snippet_name)) { + has_migration_task = true; state.str.appendLeft( node.start, `\n${state.indent}` diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/_config.js b/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/_config.js new file mode 100644 index 0000000000..ef889d5f23 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-beforeUpdate-afterUpdate/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + logs: [ + 'One or more `@migration-task` comments were added to `output.svelte`, please check them and complete the migration manually.' + ] +}); diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/_config.js b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/_config.js new file mode 100644 index 0000000000..ef889d5f23 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-and-$$props/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + logs: [ + 'One or more `@migration-task` comments were added to `output.svelte`, please check them and complete the migration manually.' + ] +}); diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/_config.js b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/_config.js new file mode 100644 index 0000000000..ef889d5f23 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-prop-non-identifier/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + logs: [ + 'One or more `@migration-task` comments were added to `output.svelte`, please check them and complete the migration manually.' + ] +}); diff --git a/packages/svelte/tests/migrate/samples/svelte-self-skip-filename/_config.js b/packages/svelte/tests/migrate/samples/svelte-self-skip-filename/_config.js index 9c8f6f9c78..8771de3560 100644 --- a/packages/svelte/tests/migrate/samples/svelte-self-skip-filename/_config.js +++ b/packages/svelte/tests/migrate/samples/svelte-self-skip-filename/_config.js @@ -1,5 +1,8 @@ import { test } from '../../test'; export default test({ - skip_filename: true + skip_filename: true, + logs: [ + "One or more `@migration-task` comments were added to a file (unfortunately we don't know the name), please check them and complete the migration manually." + ] }); diff --git a/packages/svelte/tests/migrate/test.ts b/packages/svelte/tests/migrate/test.ts index e26e8e376b..940eecb344 100644 --- a/packages/svelte/tests/migrate/test.ts +++ b/packages/svelte/tests/migrate/test.ts @@ -6,6 +6,7 @@ import { suite, type BaseTest } from '../suite.js'; interface ParserTest extends BaseTest { skip_filename?: boolean; + logs?: string[]; } const { test, run } = suite(async (config, cwd) => { @@ -14,10 +15,22 @@ const { test, run } = suite(async (config, cwd) => { .replace(/\s+$/, '') .replace(/\r/g, ''); + const logs: any[] = []; + + if (config.logs) { + console.log = (...args) => { + logs.push(...args); + }; + } + const actual = migrate(input, { - filename: config.skip_filename ? undefined : `${cwd}/output.svelte` + filename: config.skip_filename ? undefined : `output.svelte` }).code; + if (config.logs) { + assert.deepEqual(logs, config.logs); + } + // run `UPDATE_SNAPSHOTS=true pnpm test migrate` to update parser tests if (process.env.UPDATE_SNAPSHOTS || !fs.existsSync(`${cwd}/output.svelte`)) { fs.writeFileSync(`${cwd}/output.svelte`, actual); From 0598f2bbe1abb1b584c4f4ea9fc1dab4e54346dc Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Fri, 18 Oct 2024 12:18:13 +0200 Subject: [PATCH 31/57] fix: reset `reset_element` in `render` to prevent runtime error (#13669) --- .changeset/witty-shirts-confess.md | 5 ++++ packages/svelte/src/internal/server/dev.js | 4 ++++ packages/svelte/src/internal/server/index.js | 8 ++++++- .../Child.svelte | 7 ++++++ .../snippet-raw-component-ssr-dev/_config.js | 23 +++++++++++++++++++ .../snippet-raw-component-ssr-dev/main.svelte | 22 ++++++++++++++++++ 6 files changed, 68 insertions(+), 1 deletion(-) create mode 100644 .changeset/witty-shirts-confess.md create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/Child.svelte create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/main.svelte diff --git a/.changeset/witty-shirts-confess.md b/.changeset/witty-shirts-confess.md new file mode 100644 index 0000000000..371e30bfba --- /dev/null +++ b/.changeset/witty-shirts-confess.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: reset `reset_element` in `render` to prevent runtime error diff --git a/packages/svelte/src/internal/server/dev.js b/packages/svelte/src/internal/server/dev.js index ffa5c31aa0..61c7c6d5e8 100644 --- a/packages/svelte/src/internal/server/dev.js +++ b/packages/svelte/src/internal/server/dev.js @@ -53,7 +53,11 @@ function print_error(payload, parent, child) { } export function reset_elements() { + let old_parent = parent; parent = null; + return () => { + parent = old_parent; + }; } /** diff --git a/packages/svelte/src/internal/server/index.js b/packages/svelte/src/internal/server/index.js index c1cbe32a60..9b5e4ac3e2 100644 --- a/packages/svelte/src/internal/server/index.js +++ b/packages/svelte/src/internal/server/index.js @@ -101,9 +101,11 @@ export function render(component, options = {}) { on_destroy = []; payload.out += BLOCK_OPEN; + let reset_reset_element; + if (DEV) { // prevent parent/child element state being corrupted by a bad render - reset_elements(); + reset_reset_element = reset_elements(); } if (options.context) { @@ -118,6 +120,10 @@ export function render(component, options = {}) { pop(); } + if (reset_reset_element) { + reset_reset_element(); + } + payload.out += BLOCK_CLOSE; for (const cleanup of on_destroy) cleanup(); on_destroy = prev_on_destroy; diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/Child.svelte b/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/Child.svelte new file mode 100644 index 0000000000..d61a532607 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/Child.svelte @@ -0,0 +1,7 @@ + + + diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/_config.js b/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/_config.js new file mode 100644 index 0000000000..8e0c11dbc8 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/_config.js @@ -0,0 +1,23 @@ +import { flushSync } from 'svelte'; +import { test } from '../../test'; + +export default test({ + props: { + browser: true + }, + + server_props: { + browser: false + }, + compileOptions: { + dev: true + }, + html: `
`, + + test({ target, assert }) { + const button = target.querySelector('button'); + + flushSync(() => button?.click()); + assert.htmlEqual(target.innerHTML, `
`); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/main.svelte b/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/main.svelte new file mode 100644 index 0000000000..2b1c939e1c --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/snippet-raw-component-ssr-dev/main.svelte @@ -0,0 +1,22 @@ + + +
+ {@render hello()} +
From f398929fdd99f1d500fd994c9b2f80820a88d048 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Fri, 18 Oct 2024 18:04:53 +0100 Subject: [PATCH 32/57] fix: correct migration of uninitialised state (#13673) * fix: correct migration of uninitialised state * better fix --- .changeset/neat-rabbits-divide.md | 5 +++++ packages/svelte/src/compiler/migrate/index.js | 7 ++++++- .../migrate/samples/state-no-initial/input.svelte | 13 +++++++++++++ .../migrate/samples/state-no-initial/output.svelte | 13 +++++++++++++ 4 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 .changeset/neat-rabbits-divide.md create mode 100644 packages/svelte/tests/migrate/samples/state-no-initial/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/state-no-initial/output.svelte diff --git a/.changeset/neat-rabbits-divide.md b/.changeset/neat-rabbits-divide.md new file mode 100644 index 0000000000..ffe57a6f18 --- /dev/null +++ b/.changeset/neat-rabbits-divide.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: correct migration of uninitialised state diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 69c840aedb..3d70d54d9f 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -564,7 +564,12 @@ const instance_script = { labeled_statement = /** @type {LabeledStatement} */ (labeled); } - return !update && (declaration || (labeled && assignment) || (!labeled && !assignment)); + return ( + !update && + ((declaration && binding.initial) || + (labeled && assignment) || + (!labeled && !assignment)) + ); }) ); diff --git a/packages/svelte/tests/migrate/samples/state-no-initial/input.svelte b/packages/svelte/tests/migrate/samples/state-no-initial/input.svelte new file mode 100644 index 0000000000..c2c4183465 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/state-no-initial/input.svelte @@ -0,0 +1,13 @@ + + +
diff --git a/packages/svelte/tests/migrate/samples/state-no-initial/output.svelte b/packages/svelte/tests/migrate/samples/state-no-initial/output.svelte new file mode 100644 index 0000000000..2f6a9933ee --- /dev/null +++ b/packages/svelte/tests/migrate/samples/state-no-initial/output.svelte @@ -0,0 +1,13 @@ + + +
\ No newline at end of file From c9d85c2d522f790d5ddc34a0afeb7ecf80244be0 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Fri, 18 Oct 2024 18:15:11 +0100 Subject: [PATCH 33/57] fix: migrate reactive statements with inner blocks (#13675) --- .changeset/smooth-apes-shave.md | 5 +++++ packages/svelte/src/compiler/migrate/index.js | 3 ++- .../input.svelte | 17 +++++++++++++++++ .../output.svelte | 19 +++++++++++++++++++ 4 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 .changeset/smooth-apes-shave.md create mode 100644 packages/svelte/tests/migrate/samples/reactive-statements-inner-block/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/reactive-statements-inner-block/output.svelte diff --git a/.changeset/smooth-apes-shave.md b/.changeset/smooth-apes-shave.md new file mode 100644 index 0000000000..18d141f4ef --- /dev/null +++ b/.changeset/smooth-apes-shave.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: migrate reactive statements with inner blocks diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 3d70d54d9f..57091ba1a1 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -575,7 +575,8 @@ const instance_script = { const labeled_has_single_assignment = labeled_statement?.body.type === 'BlockStatement' && - labeled_statement.body.body.length === 1; + labeled_statement.body.body.length === 1 && + labeled_statement.body.body[0].type === 'ExpressionStatement'; const is_expression_assignment = labeled_statement?.body.type === 'ExpressionStatement' && diff --git a/packages/svelte/tests/migrate/samples/reactive-statements-inner-block/input.svelte b/packages/svelte/tests/migrate/samples/reactive-statements-inner-block/input.svelte new file mode 100644 index 0000000000..fe9821b58d --- /dev/null +++ b/packages/svelte/tests/migrate/samples/reactive-statements-inner-block/input.svelte @@ -0,0 +1,17 @@ + + +
    diff --git a/packages/svelte/tests/migrate/samples/reactive-statements-inner-block/output.svelte b/packages/svelte/tests/migrate/samples/reactive-statements-inner-block/output.svelte new file mode 100644 index 0000000000..4ff77477e4 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/reactive-statements-inner-block/output.svelte @@ -0,0 +1,19 @@ + + +
      \ No newline at end of file From 61391c8704a6cb8767a862fdcb61b587778bb322 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Fri, 18 Oct 2024 21:29:24 +0100 Subject: [PATCH 34/57] fix: ensure migrate correctly handles named slots (#13676) * fix: ensure migrate correctly handles named slots * tweak * fix --- .changeset/silver-beans-hear.md | 5 +++++ packages/svelte/src/compiler/migrate/index.js | 12 +++++++++++- .../tests/migrate/samples/named-slots/input.svelte | 7 +++++++ .../migrate/samples/named-slots/output.svelte | 14 ++++++++++++++ 4 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 .changeset/silver-beans-hear.md create mode 100644 packages/svelte/tests/migrate/samples/named-slots/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/named-slots/output.svelte diff --git a/.changeset/silver-beans-hear.md b/.changeset/silver-beans-hear.md new file mode 100644 index 0000000000..19ec07a6e3 --- /dev/null +++ b/.changeset/silver-beans-hear.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: ensure migrate correctly handles named slots diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 57091ba1a1..a4a2fb488e 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -996,6 +996,10 @@ const template = { if (attr.type === 'SpreadAttribute') { slot_props += `...${state.str.original.substring(/** @type {number} */ (attr.expression.start), attr.expression.end)}, `; } else if (attr.type === 'Attribute') { + if (attr.name === 'slot') { + continue; + } + if (attr.name === 'name') { slot_name = /** @type {any} */ (attr.value)[0].data; } else { @@ -1200,7 +1204,13 @@ function migrate_slot_usage(node, path, state) { [node.end, state.str.original.length] ] }); - state.str.appendLeft(node.end, `\n${state.indent.repeat(path.length - 2)}{/snippet}`); + const str = `\n${state.indent.repeat(path.length - 2)}{/snippet}`; + + if (node.type === 'SlotElement') { + state.str.appendRight(node.end, str); + } else { + state.str.appendLeft(node.end, str); + } } } diff --git a/packages/svelte/tests/migrate/samples/named-slots/input.svelte b/packages/svelte/tests/migrate/samples/named-slots/input.svelte new file mode 100644 index 0000000000..1996e08afd --- /dev/null +++ b/packages/svelte/tests/migrate/samples/named-slots/input.svelte @@ -0,0 +1,7 @@ + + + + + diff --git a/packages/svelte/tests/migrate/samples/named-slots/output.svelte b/packages/svelte/tests/migrate/samples/named-slots/output.svelte new file mode 100644 index 0000000000..bb5ad39aa3 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/named-slots/output.svelte @@ -0,0 +1,14 @@ + + + + {#snippet msg()} + {@render children?.()} + {/snippet} + \ No newline at end of file From 894b1c37ad524dca9d2527fc761d56b478b7dd7a Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Fri, 18 Oct 2024 22:13:44 +0100 Subject: [PATCH 35/57] chore: CompileDiagnostic no longer extends Error (#13651) --- .changeset/violet-buses-cross.md | 5 +++++ packages/svelte/src/compiler/utils/compile_diagnostic.js | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/violet-buses-cross.md diff --git a/.changeset/violet-buses-cross.md b/.changeset/violet-buses-cross.md new file mode 100644 index 0000000000..60dfaf405d --- /dev/null +++ b/.changeset/violet-buses-cross.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +chore: CompileDiagnostic no longer extends Error diff --git a/packages/svelte/src/compiler/utils/compile_diagnostic.js b/packages/svelte/src/compiler/utils/compile_diagnostic.js index 6f63b5c1f0..a27e06968f 100644 --- a/packages/svelte/src/compiler/utils/compile_diagnostic.js +++ b/packages/svelte/src/compiler/utils/compile_diagnostic.js @@ -48,7 +48,7 @@ function get_code_frame(source, line, column) { */ /** @implements {ICompileDiagnostic} */ -export class CompileDiagnostic extends Error { +export class CompileDiagnostic { name = 'CompileDiagnostic'; /** @@ -57,8 +57,8 @@ export class CompileDiagnostic extends Error { * @param {[number, number] | undefined} position */ constructor(code, message, position) { - super(message); this.code = code; + this.message = message; if (state.filename) { this.filename = state.filename; From ab9eeb46fe80db0ea9930564b91d99040fb5a9a5 Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Sat, 19 Oct 2024 01:43:14 +0200 Subject: [PATCH 36/57] fix: migrated snippet shadowing prop and let directive removal (#13679) --- .changeset/ten-vans-divide.md | 5 +++ packages/svelte/src/compiler/migrate/index.js | 30 ++++++++++++++++- .../samples/slot-non-identifier/input.svelte | 27 +++++++++++++++ .../samples/slot-non-identifier/output.svelte | 31 +++++++++++++++++ .../samples/slot-shadow-props/input.svelte | 29 ++++++++++++++++ .../samples/slot-shadow-props/output.svelte | 33 +++++++++++++++++++ 6 files changed, 154 insertions(+), 1 deletion(-) create mode 100644 .changeset/ten-vans-divide.md create mode 100644 packages/svelte/tests/migrate/samples/slot-shadow-props/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/slot-shadow-props/output.svelte diff --git a/.changeset/ten-vans-divide.md b/.changeset/ten-vans-divide.md new file mode 100644 index 0000000000..f3afbbcc70 --- /dev/null +++ b/.changeset/ten-vans-divide.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: migrated snippet shadowing prop and let directive removal diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index a4a2fb488e..b879c0b491 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -1097,6 +1097,10 @@ function migrate_slot_usage(node, path, state) { let snippet_name = 'children'; let snippet_props = []; + // if we stop the transform because the name is not correct we don't want to + // remove the let directive and they could come before the name + let removal_queue = []; + for (let attribute of node.attributes) { if ( attribute.type === 'Attribute' && @@ -1112,6 +1116,23 @@ function migrate_slot_usage(node, path, state) { ); return; } + if (parent?.type === 'Component' || parent?.type === 'SvelteComponent') { + for (let attribute of parent.attributes) { + if (attribute.type === 'Attribute' || attribute.type === 'BindDirective') { + if (attribute.name === snippet_name) { + state.str.appendLeft( + node.start, + `\n${state.indent}` + ); + return; + } + } + } + } + // flush the queue after we found the name + for (let remove_let of removal_queue) { + remove_let(); + } state.str.remove(attribute.start, attribute.end); } if (attribute.type === 'LetDirective') { @@ -1121,7 +1142,14 @@ function migrate_slot_usage(node, path, state) { ? `: ${state.str.original.substring(/** @type {number} */ (attribute.expression.start), /** @type {number} */ (attribute.expression.end))}` : '') ); - state.str.remove(attribute.start, attribute.end); + // we just add to the queue to remove them after we found if we need to migrate or we bail + removal_queue.push(() => state.str.remove(attribute.start, attribute.end)); + } + } + + if (removal_queue.length > 0) { + for (let remove_let of removal_queue) { + remove_let(); } } diff --git a/packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte b/packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte index a5dfd1aad1..a62eff1b74 100644 --- a/packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte +++ b/packages/svelte/tests/migrate/samples/slot-non-identifier/input.svelte @@ -36,4 +36,31 @@ cool + + + + + + +
      + cool +
      +
      + + +
      + cool +
      +
      + + + + cool + + + + + + cool + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte b/packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte index 6ea49817d1..85913264b4 100644 --- a/packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte +++ b/packages/svelte/tests/migrate/samples/slot-non-identifier/output.svelte @@ -44,4 +44,35 @@ cool {/snippet} + + + + + + + +
      + cool +
      +
      + + + +
      + cool +
      +
      + + + + + cool + + + + + + + cool + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slot-shadow-props/input.svelte b/packages/svelte/tests/migrate/samples/slot-shadow-props/input.svelte new file mode 100644 index 0000000000..d09cec9ec8 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/slot-shadow-props/input.svelte @@ -0,0 +1,29 @@ + + + +
      + cool +
      +
      + + + + cool + + + + + + +
      + cool +
      +
      + + + + cool + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slot-shadow-props/output.svelte b/packages/svelte/tests/migrate/samples/slot-shadow-props/output.svelte new file mode 100644 index 0000000000..2089810044 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/slot-shadow-props/output.svelte @@ -0,0 +1,33 @@ + + + + +
      + cool +
      +
      + + + + + cool + + + + + + + +
      + cool +
      +
      + + + + + cool + + \ No newline at end of file From 18c5a5ba2d061c98c213a6c5717710e0440fe526 Mon Sep 17 00:00:00 2001 From: Paolo Ricciuti Date: Sat, 19 Oct 2024 01:45:53 +0200 Subject: [PATCH 37/57] fix: bail out if slot name changes and $$slots assigned to variable (#13678) --- .changeset/early-rockets-join.md | 5 +++ packages/svelte/src/compiler/migrate/index.js | 40 ++++++++++++++----- .../input.svelte | 10 +++++ .../output.svelte | 12 ++++++ .../$$slots-used-as-variable/input.svelte | 11 +++++ .../$$slots-used-as-variable/output.svelte | 17 ++++++++ .../_config.js | 7 ++++ .../input.svelte | 5 +++ .../output.svelte | 6 +++ .../_config.js | 7 ++++ .../input.svelte | 1 + .../output.svelte | 2 + .../samples/slots-multiple/input.svelte | 5 +-- .../samples/slots-multiple/output.svelte | 9 ++--- .../samples/slots-with-$$props/input.svelte | 8 +--- .../samples/slots-with-$$props/output.svelte | 14 ++----- .../tests/migrate/samples/slots/input.svelte | 8 +--- .../tests/migrate/samples/slots/output.svelte | 17 ++------ 18 files changed, 128 insertions(+), 56 deletions(-) create mode 100644 .changeset/early-rockets-join.md create mode 100644 packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/output.svelte create mode 100644 packages/svelte/tests/migrate/samples/$$slots-used-as-variable/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/$$slots-used-as-variable/output.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/_config.js create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/output.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/_config.js create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/input.svelte create mode 100644 packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/output.svelte diff --git a/.changeset/early-rockets-join.md b/.changeset/early-rockets-join.md new file mode 100644 index 0000000000..c220930ef5 --- /dev/null +++ b/.changeset/early-rockets-join.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: bail out if slot name changes and $$slots assigned to variable diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index b879c0b491..43d4720a75 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -418,7 +418,7 @@ const instance_script = { state.str.remove(/** @type {number} */ (node.start), /** @type {number} */ (node.end)); } }, - VariableDeclaration(node, { state, path, visit }) { + VariableDeclaration(node, { state, path, visit, next }) { if (state.scope !== state.analysis.instance.scope) { return; } @@ -439,12 +439,14 @@ const instance_script = { bindings = state.scope.get_bindings(declarator); } catch (e) { // no bindings, so we can skip this + next(); continue; } const has_state = bindings.some((binding) => binding.kind === 'state'); const has_props = bindings.some((binding) => binding.kind === 'bindable_prop'); if (!has_state && !has_props) { + next(); continue; } @@ -491,25 +493,31 @@ const instance_script = { const prop = state.props.find((prop) => prop.exported === (binding.prop_alias || name)); if (prop) { + next(); // $$Props type was used prop.init = declarator.init - ? state.str.original.substring( - /** @type {number} */ (declarator.init.start), - /** @type {number} */ (declarator.init.end) - ) + ? state.str + .snip( + /** @type {number} */ (declarator.init.start), + /** @type {number} */ (declarator.init.end) + ) + .toString() : ''; prop.bindable = binding.updated; prop.exported = binding.prop_alias || name; prop.type_only = false; } else { + next(); state.props.push({ local: name, exported: binding.prop_alias ? binding.prop_alias : name, init: declarator.init - ? state.str.original.substring( - /** @type {number} */ (declarator.init.start), - /** @type {number} */ (declarator.init.end) - ) + ? state.str + .snip( + /** @type {number} */ (declarator.init.start), + /** @type {number} */ (declarator.init.end) + ) + .toString() : '', optional: !!declarator.init, bindable: binding.updated, @@ -1036,6 +1044,11 @@ const template = { name = existing_prop.local; } else if (slot_name !== 'default') { name = state.scope.generate(slot_name); + if (name !== slot_name) { + throw new Error( + 'This migration would change the name of a slot making the component unusable' + ); + } } if (!existing_prop) { @@ -1462,7 +1475,12 @@ function handle_identifier(node, state, path) { if (existing_prop) { name = existing_prop.local; } else if (name !== 'default') { - name = state.scope.generate(name); + let new_name = state.scope.generate(name); + if (new_name !== name) { + throw new Error( + 'This migration would change the name of a slot making the component unusable' + ); + } } name = name === 'default' ? 'children' : name; @@ -1479,7 +1497,7 @@ function handle_identifier(node, state, path) { // we start with any and delegate to when the slot // is actually rendered (it might not happen in that case) // any is still a safe bet - type: `import('svelte').Snippet<[any]>}`, + type: `import('svelte').Snippet<[any]>`, needs_refine_type: true }); } diff --git a/packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/input.svelte b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/input.svelte new file mode 100644 index 0000000000..515e0fc906 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/input.svelte @@ -0,0 +1,10 @@ + + +{#if showMessage} + +{/if} + +{$$props} \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/output.svelte b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/output.svelte new file mode 100644 index 0000000000..72960b7e34 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable-$$props/output.svelte @@ -0,0 +1,12 @@ + + +{#if showMessage} + {@render props.message?.()} +{/if} + +{props} \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/$$slots-used-as-variable/input.svelte b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable/input.svelte new file mode 100644 index 0000000000..94a29990ff --- /dev/null +++ b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable/input.svelte @@ -0,0 +1,11 @@ + + +{#if showMessage} + +{/if} diff --git a/packages/svelte/tests/migrate/samples/$$slots-used-as-variable/output.svelte b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable/output.svelte new file mode 100644 index 0000000000..59c13366a0 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/$$slots-used-as-variable/output.svelte @@ -0,0 +1,17 @@ + + +{#if showMessage} + {@render message?.()} +{/if} \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/_config.js b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/_config.js new file mode 100644 index 0000000000..ef889d5f23 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + logs: [ + 'One or more `@migration-task` comments were added to `output.svelte`, please check them and complete the migration manually.' + ] +}); diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/input.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/input.svelte new file mode 100644 index 0000000000..810015eb98 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/input.svelte @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/output.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/output.svelte new file mode 100644 index 0000000000..2b6838a1d6 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-change-name/output.svelte @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/_config.js b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/_config.js new file mode 100644 index 0000000000..ef889d5f23 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/_config.js @@ -0,0 +1,7 @@ +import { test } from '../../test'; + +export default test({ + logs: [ + 'One or more `@migration-task` comments were added to `output.svelte`, please check them and complete the migration manually.' + ] +}); diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/input.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/input.svelte new file mode 100644 index 0000000000..03428d30ac --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/input.svelte @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/output.svelte b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/output.svelte new file mode 100644 index 0000000000..6e5ab10310 --- /dev/null +++ b/packages/svelte/tests/migrate/samples/impossible-migrate-slot-non-identifier/output.svelte @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slots-multiple/input.svelte b/packages/svelte/tests/migrate/samples/slots-multiple/input.svelte index 91c191990d..422e486c69 100644 --- a/packages/svelte/tests/migrate/samples/slots-multiple/input.svelte +++ b/packages/svelte/tests/migrate/samples/slots-multiple/input.svelte @@ -1,5 +1,2 @@ - - - - + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slots-multiple/output.svelte b/packages/svelte/tests/migrate/samples/slots-multiple/output.svelte index 5e561dd09f..c663f2bcdd 100644 --- a/packages/svelte/tests/migrate/samples/slots-multiple/output.svelte +++ b/packages/svelte/tests/migrate/samples/slots-multiple/output.svelte @@ -1,10 +1,7 @@ - - -{@render dashed_name?.()} -{@render dashed_name?.()} \ No newline at end of file + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slots-with-$$props/input.svelte b/packages/svelte/tests/migrate/samples/slots-with-$$props/input.svelte index 90812075c1..3ab9a4ff27 100644 --- a/packages/svelte/tests/migrate/samples/slots-with-$$props/input.svelte +++ b/packages/svelte/tests/migrate/samples/slots-with-$$props/input.svelte @@ -1,7 +1,7 @@ -{#if foo} - +{#if foos} + {/if} {#if $$slots.bar} @@ -13,8 +13,4 @@ {#if $$slots['default']}foo{/if} -{#if $$slots['dashed-name']}foo{/if} - - - \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte b/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte index c40d990157..c76c7d8283 100644 --- a/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte +++ b/packages/svelte/tests/migrate/samples/slots-with-$$props/output.svelte @@ -1,14 +1,12 @@ -{#if foo} - {@render props.foo_1?.({ foo, })} +{#if foos} + {@render props.foo?.({ foo: foos, })} {/if} {#if props.bar} @@ -20,8 +18,4 @@ {#if props.children}foo{/if} -{#if props.dashed_name}foo{/if} - -{@render props.dashed_name?.()} - {@render props.children?.({ header: "something", title: props.cool, id, })} \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slots/input.svelte b/packages/svelte/tests/migrate/samples/slots/input.svelte index 3fea1b46f0..d9f3a8065b 100644 --- a/packages/svelte/tests/migrate/samples/slots/input.svelte +++ b/packages/svelte/tests/migrate/samples/slots/input.svelte @@ -1,7 +1,7 @@ -{#if foo} - +{#if foos} + {/if} {#if $$slots.bar} @@ -13,8 +13,4 @@ {#if $$slots['default']}foo{/if} -{#if $$slots['dashed-name']}foo{/if} - - - \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slots/output.svelte b/packages/svelte/tests/migrate/samples/slots/output.svelte index 9c56dbcf43..30fdf8dfbe 100644 --- a/packages/svelte/tests/migrate/samples/slots/output.svelte +++ b/packages/svelte/tests/migrate/samples/slots/output.svelte @@ -1,17 +1,12 @@ -{#if foo} - {@render foo_1?.({ foo, })} +{#if foos} + {@render foo?.({ foo: foos, })} {/if} {#if bar} @@ -23,8 +18,4 @@ {#if children}foo{/if} -{#if dashed_name}foo{/if} - -{@render dashed_name?.()} - {@render children?.({ header: "something", title: my_title, id, })} \ No newline at end of file From 793a8de06e03fa801bd7b2fb80e6447ed0ceeb8b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 18 Oct 2024 16:47:19 -0700 Subject: [PATCH 38/57] Version Packages (next) (#13650) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 11 +++++++++++ packages/svelte/CHANGELOG.md | 26 ++++++++++++++++++++++++++ packages/svelte/package.json | 2 +- packages/svelte/src/version.js | 2 +- 4 files changed, 39 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index badbf7eb61..fffc19fa63 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -165,6 +165,7 @@ "early-ads-tie", "early-months-whisper", "early-needles-bake", + "early-rockets-join", "early-taxis-allow", "eight-carrots-hunt", "eight-comics-tell", @@ -306,6 +307,7 @@ "gold-tools-nail", "good-buses-reply", "good-cars-visit", + "good-kings-try", "good-pianos-jump", "good-plums-type", "good-rice-tap", @@ -511,6 +513,7 @@ "nasty-lions-double", "nasty-mayflies-smoke", "nasty-penguins-pump", + "nasty-teachers-end", "nasty-yaks-peel", "neat-boats-shake", "neat-boxes-chew", @@ -518,6 +521,7 @@ "neat-ducks-jam", "neat-files-rescue", "neat-jokes-beam", + "neat-rabbits-divide", "neat-ways-allow", "nervous-adults-sell", "nervous-berries-boil", @@ -731,6 +735,7 @@ "silly-lies-film", "silly-masks-exist", "silly-ways-wash", + "silver-beans-hear", "silver-mice-double", "silver-points-approve", "silver-sheep-knock", @@ -749,6 +754,7 @@ "sleepy-cats-eat", "sleepy-dogs-sit", "slimy-clouds-talk", + "slimy-garlics-beg", "slimy-hairs-impress", "slimy-laws-explode", "slimy-news-help", @@ -780,6 +786,7 @@ "smart-turkeys-tell", "smart-zebras-pay", "smart-zoos-vanish", + "smooth-apes-shave", "smooth-kids-protect", "smooth-pens-exist", "smooth-pens-protect", @@ -803,6 +810,7 @@ "spicy-plums-admire", "spotty-crabs-give", "spotty-houses-search", + "spotty-kings-hug", "spotty-pens-agree", "spotty-rocks-destroy", "spotty-shrimps-hug", @@ -869,6 +877,7 @@ "ten-teachers-travel", "ten-ties-repair", "ten-trainers-juggle", + "ten-vans-divide", "ten-worms-reflect", "tender-bats-switch", "tender-lemons-judge", @@ -947,6 +956,7 @@ "unlucky-steaks-warn", "unlucky-trees-lick", "violet-bats-brake", + "violet-buses-cross", "violet-mails-trade", "violet-mugs-behave", "violet-otters-carry", @@ -995,6 +1005,7 @@ "witty-hornets-think", "witty-phones-retire", "witty-readers-provide", + "witty-shirts-confess", "witty-sloths-impress", "witty-steaks-dream", "witty-tomatoes-care", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index dd4aa87d87..0111f9199e 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,31 @@ # svelte +## 5.0.0-next.270 + +### Patch Changes + +- fix: bail out if slot name changes and $slots assigned to variable ([#13678](https://github.com/sveltejs/svelte/pull/13678)) + +- feat: add `migration-task` for impossible to migrate slots ([#13658](https://github.com/sveltejs/svelte/pull/13658)) + +- feat: tell users of `@migration-task` ([#13668](https://github.com/sveltejs/svelte/pull/13668)) + +- fix: correct migration of uninitialised state ([#13673](https://github.com/sveltejs/svelte/pull/13673)) + +- fix: ensure migrate correctly handles named slots ([#13676](https://github.com/sveltejs/svelte/pull/13676)) + +- feat: add `migration-task` comment after errors ([#13659](https://github.com/sveltejs/svelte/pull/13659)) + +- fix: migrate reactive statements with inner blocks ([#13675](https://github.com/sveltejs/svelte/pull/13675)) + +- fix: migrating rest props type includes props types ([#13632](https://github.com/sveltejs/svelte/pull/13632)) + +- fix: migrated snippet shadowing prop and let directive removal ([#13679](https://github.com/sveltejs/svelte/pull/13679)) + +- chore: CompileDiagnostic no longer extends Error ([#13651](https://github.com/sveltejs/svelte/pull/13651)) + +- fix: reset `reset_element` in `render` to prevent runtime error ([#13669](https://github.com/sveltejs/svelte/pull/13669)) + ## 5.0.0-next.269 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index b75008ebf1..0769cea36e 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -2,7 +2,7 @@ "name": "svelte", "description": "Cybernetically enhanced web apps", "license": "MIT", - "version": "5.0.0-next.269", + "version": "5.0.0-next.270", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index 51a7254422..d3174dcc74 100644 --- a/packages/svelte/src/version.js +++ b/packages/svelte/src/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '5.0.0-next.269'; +export const VERSION = '5.0.0-next.270'; export const PUBLIC_VERSION = '5'; From bb491f12294a874995f8b75a82d11d53e30d34d5 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Sat, 19 Oct 2024 13:12:45 +0100 Subject: [PATCH 39/57] fix: avoid chromium issue with dispatching blur on element removal (#13694) * fix: avoid chromium issue with dispatching blur on element removal * fix: avoid chromium issue with dispatching blur on element removal * fix: avoid chromium issue with dispatching blur on element removal * active effect too * try/finally --- .changeset/seven-dancers-brush.md | 5 ++++ .../src/internal/client/reactivity/effects.js | 26 ++++++++++++++----- 2 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 .changeset/seven-dancers-brush.md diff --git a/.changeset/seven-dancers-brush.md b/.changeset/seven-dancers-brush.md new file mode 100644 index 0000000000..8f0bcd6940 --- /dev/null +++ b/.changeset/seven-dancers-brush.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: avoid chromium issue with dispatching blur on element removal diff --git a/packages/svelte/src/internal/client/reactivity/effects.js b/packages/svelte/src/internal/client/reactivity/effects.js index 73286861d2..d044b79efc 100644 --- a/packages/svelte/src/internal/client/reactivity/effects.js +++ b/packages/svelte/src/internal/client/reactivity/effects.js @@ -16,7 +16,8 @@ import { set_is_destroying_effect, set_is_flushing_effect, set_signal_status, - untrack + untrack, + set_active_effect } from '../runtime.js'; import { DIRTY, @@ -375,13 +376,26 @@ export function destroy_effect(effect, remove_dom = true) { /** @type {TemplateNode | null} */ var node = effect.nodes_start; var end = effect.nodes_end; + var previous_reaction = active_reaction; + var previous_effect = active_effect; - while (node !== null) { - /** @type {TemplateNode | null} */ - var next = node === end ? null : /** @type {TemplateNode} */ (get_next_sibling(node)); + // Really we only need to do this in Chromium because of https://chromestatus.com/feature/5128696823545856, + // as removal of the DOM can cause sync `blur` events to fire, which can cause logic to run inside + // the current `active_reaction`, which isn't what we want at all. Additionally, the blur event handler + // might create a derived or effect and they will be incorrectly attached to the wrong thing + set_active_reaction(null); + set_active_effect(null); + try { + while (node !== null) { + /** @type {TemplateNode | null} */ + var next = node === end ? null : /** @type {TemplateNode} */ (get_next_sibling(node)); - node.remove(); - node = next; + node.remove(); + node = next; + } + } finally { + set_active_reaction(previous_reaction); + set_active_effect(previous_effect); } removed = true; From a577ce08c6af85d86dce37e70919fd01ed7e1b47 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Sat, 19 Oct 2024 13:20:51 +0100 Subject: [PATCH 40/57] chore: ensure effect destruction of deriveds is consistent (#13693) * chore: ensure effect destruction of deriveds is consistent * chore: ensure effect destruction of deriveds is consistent --- .../src/internal/client/reactivity/effects.js | 51 ++++++++++++++++++- .../svelte/src/internal/client/runtime.js | 47 ++--------------- 2 files changed, 54 insertions(+), 44 deletions(-) diff --git a/packages/svelte/src/internal/client/reactivity/effects.js b/packages/svelte/src/internal/client/reactivity/effects.js index d044b79efc..ba17b8d5aa 100644 --- a/packages/svelte/src/internal/client/reactivity/effects.js +++ b/packages/svelte/src/internal/client/reactivity/effects.js @@ -4,7 +4,6 @@ import { component_context, active_effect, active_reaction, - destroy_effect_children, dev_current_component_function, update_effect, get, @@ -43,6 +42,7 @@ import * as e from '../errors.js'; import { DEV } from 'esm-env'; import { define_property } from '../../shared/utils.js'; import { get_next_sibling } from '../dom/operations.js'; +import { destroy_derived } from './deriveds.js'; /** * @param {'$effect' | '$effect.pre' | '$inspect'} rune @@ -364,6 +364,54 @@ export function execute_effect_teardown(effect) { } } +/** + * @param {Effect} signal + * @returns {void} + */ +export function destroy_effect_deriveds(signal) { + var deriveds = signal.deriveds; + + if (deriveds !== null) { + signal.deriveds = null; + + for (var i = 0; i < deriveds.length; i += 1) { + destroy_derived(deriveds[i]); + } + } +} + +/** + * @param {Effect} signal + * @param {boolean} remove_dom + * @returns {void} + */ +export function destroy_effect_children(signal, remove_dom = false) { + var effect = signal.first; + signal.first = signal.last = null; + + while (effect !== null) { + var next = effect.next; + destroy_effect(effect, remove_dom); + effect = next; + } +} + +/** + * @param {Effect} signal + * @returns {void} + */ +export function destroy_block_effect_children(signal) { + var effect = signal.first; + + while (effect !== null) { + var next = effect.next; + if ((effect.f & BRANCH_EFFECT) === 0) { + destroy_effect(effect); + } + effect = next; + } +} + /** * @param {Effect} effect * @param {boolean} [remove_dom] @@ -401,6 +449,7 @@ export function destroy_effect(effect, remove_dom = true) { removed = true; } + destroy_effect_deriveds(effect); destroy_effect_children(effect, remove_dom && !removed); remove_reactions(effect, 0); set_signal_status(effect, DESTROYED); diff --git a/packages/svelte/src/internal/client/runtime.js b/packages/svelte/src/internal/client/runtime.js index 868d77cd10..08716840d6 100644 --- a/packages/svelte/src/internal/client/runtime.js +++ b/packages/svelte/src/internal/client/runtime.js @@ -2,7 +2,9 @@ import { DEV } from 'esm-env'; import { define_property, get_descriptors, get_prototype_of } from '../shared/utils.js'; import { - destroy_effect, + destroy_block_effect_children, + destroy_effect_children, + destroy_effect_deriveds, effect, execute_effect_teardown, unlink_effect @@ -403,48 +405,6 @@ export function remove_reactions(signal, start_index) { } } -/** - * @param {Effect} signal - * @param {boolean} remove_dom - * @returns {void} - */ -export function destroy_effect_children(signal, remove_dom = false) { - var deriveds = signal.deriveds; - - if (deriveds !== null) { - signal.deriveds = null; - - for (var i = 0; i < deriveds.length; i += 1) { - destroy_derived(deriveds[i]); - } - } - - var effect = signal.first; - signal.first = signal.last = null; - - while (effect !== null) { - var next = effect.next; - destroy_effect(effect, remove_dom); - effect = next; - } -} - -/** - * @param {Effect} signal - * @returns {void} - */ -export function destroy_block_effect_children(signal) { - var effect = signal.first; - - while (effect !== null) { - var next = effect.next; - if ((effect.f & BRANCH_EFFECT) === 0) { - destroy_effect(effect); - } - effect = next; - } -} - /** * @param {Effect} effect * @returns {void} @@ -470,6 +430,7 @@ export function update_effect(effect) { } try { + destroy_effect_deriveds(effect); if ((flags & BLOCK_EFFECT) !== 0) { destroy_block_effect_children(effect); } else { From 966a6bda05f1fb1f2960b580b1753f44b362f60f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 19 Oct 2024 13:25:00 +0100 Subject: [PATCH 41/57] Version Packages (next) (#13695) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 1 + packages/svelte/CHANGELOG.md | 6 ++++++ packages/svelte/package.json | 2 +- packages/svelte/src/version.js | 2 +- 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index fffc19fa63..98007e06ca 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -691,6 +691,7 @@ "serious-socks-cover", "serious-zebras-scream", "seven-bees-tell", + "seven-dancers-brush", "seven-deers-jam", "seven-garlics-serve", "seven-hornets-smile", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 0111f9199e..6d900dd352 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,11 @@ # svelte +## 5.0.0-next.271 + +### Patch Changes + +- fix: avoid chromium issue with dispatching blur on element removal ([#13694](https://github.com/sveltejs/svelte/pull/13694)) + ## 5.0.0-next.270 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index 0769cea36e..5397787e19 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -2,7 +2,7 @@ "name": "svelte", "description": "Cybernetically enhanced web apps", "license": "MIT", - "version": "5.0.0-next.270", + "version": "5.0.0-next.271", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index d3174dcc74..0be050ed41 100644 --- a/packages/svelte/src/version.js +++ b/packages/svelte/src/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '5.0.0-next.270'; +export const VERSION = '5.0.0-next.271'; export const PUBLIC_VERSION = '5'; From ae10f4d37cfa3904751ae4f58559d66c3502fe75 Mon Sep 17 00:00:00 2001 From: Dominic Gannaway Date: Sat, 19 Oct 2024 13:38:41 +0100 Subject: [PATCH 42/57] breaking: state mutations inside the template are no longer allowed (#13660) * breaking: state mutations inside the template are no longer allowed * fix test * fix test * lint * update error message * fix test --- .changeset/wild-chairs-build.md | 5 +++++ .../98-reference/.generated/client-errors.md | 2 +- .../svelte/messages/client-errors/errors.md | 2 +- packages/svelte/src/internal/client/errors.js | 4 ++-- .../src/internal/client/reactivity/effects.js | 2 +- .../samples/side-effect-template/_config.js | 17 +++++++++++++++++ .../samples/side-effect-template/main.svelte | 6 ++++++ .../main.svelte | 5 ++++- 8 files changed, 37 insertions(+), 6 deletions(-) create mode 100644 .changeset/wild-chairs-build.md create mode 100644 packages/svelte/tests/runtime-runes/samples/side-effect-template/_config.js create mode 100644 packages/svelte/tests/runtime-runes/samples/side-effect-template/main.svelte diff --git a/.changeset/wild-chairs-build.md b/.changeset/wild-chairs-build.md new file mode 100644 index 0000000000..494a3d70c5 --- /dev/null +++ b/.changeset/wild-chairs-build.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +breaking: state mutations inside the template are no longer allowed diff --git a/documentation/docs/98-reference/.generated/client-errors.md b/documentation/docs/98-reference/.generated/client-errors.md index 4e7016b337..d6bd276de7 100644 --- a/documentation/docs/98-reference/.generated/client-errors.md +++ b/documentation/docs/98-reference/.generated/client-errors.md @@ -125,5 +125,5 @@ Reading state that was created inside the same derived is forbidden. Consider us ### state_unsafe_mutation ``` -Updating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without `$state` +Updating state inside a derived or a template expression is forbidden. If the value should not be reactive, declare it without `$state` ``` diff --git a/packages/svelte/messages/client-errors/errors.md b/packages/svelte/messages/client-errors/errors.md index 570a384d7c..954214cb81 100644 --- a/packages/svelte/messages/client-errors/errors.md +++ b/packages/svelte/messages/client-errors/errors.md @@ -82,4 +82,4 @@ ## state_unsafe_mutation -> Updating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without `$state` +> Updating state inside a derived or a template expression is forbidden. If the value should not be reactive, declare it without `$state` diff --git a/packages/svelte/src/internal/client/errors.js b/packages/svelte/src/internal/client/errors.js index a0f33fb784..2a8f0e8914 100644 --- a/packages/svelte/src/internal/client/errors.js +++ b/packages/svelte/src/internal/client/errors.js @@ -343,12 +343,12 @@ export function state_unsafe_local_read() { } /** - * Updating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without `$state` + * Updating state inside a derived or a template expression is forbidden. If the value should not be reactive, declare it without `$state` * @returns {never} */ export function state_unsafe_mutation() { if (DEV) { - const error = new Error(`state_unsafe_mutation\nUpdating state inside a derived or logic block expression is forbidden. If the value should not be reactive, declare it without \`$state\``); + const error = new Error(`state_unsafe_mutation\nUpdating state inside a derived or a template expression is forbidden. If the value should not be reactive, declare it without \`$state\``); error.name = 'Svelte error'; throw error; diff --git a/packages/svelte/src/internal/client/reactivity/effects.js b/packages/svelte/src/internal/client/reactivity/effects.js index ba17b8d5aa..193c6df145 100644 --- a/packages/svelte/src/internal/client/reactivity/effects.js +++ b/packages/svelte/src/internal/client/reactivity/effects.js @@ -326,7 +326,7 @@ export function template_effect(fn) { value: '{expression}' }); } - return render_effect(fn); + return block(fn); } /** diff --git a/packages/svelte/tests/runtime-runes/samples/side-effect-template/_config.js b/packages/svelte/tests/runtime-runes/samples/side-effect-template/_config.js new file mode 100644 index 0000000000..b17c83849f --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/side-effect-template/_config.js @@ -0,0 +1,17 @@ +import { flushSync } from 'svelte'; +import { test } from '../../test'; + +export default test({ + compileOptions: { + dev: true + }, + + test({ assert, target }) { + const button = target.querySelector('button'); + + assert.throws(() => { + button?.click(); + flushSync(); + }, /state_unsafe_mutation/); + } +}); diff --git a/packages/svelte/tests/runtime-runes/samples/side-effect-template/main.svelte b/packages/svelte/tests/runtime-runes/samples/side-effect-template/main.svelte new file mode 100644 index 0000000000..0a53a08673 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/side-effect-template/main.svelte @@ -0,0 +1,6 @@ + + + +{JSON.stringify(items.sort())} diff --git a/packages/svelte/tests/runtime-runes/samples/store-unsubscribe-not-referenced-after/main.svelte b/packages/svelte/tests/runtime-runes/samples/store-unsubscribe-not-referenced-after/main.svelte index 5f8b19f4c7..e097c639f0 100644 --- a/packages/svelte/tests/runtime-runes/samples/store-unsubscribe-not-referenced-after/main.svelte +++ b/packages/svelte/tests/runtime-runes/samples/store-unsubscribe-not-referenced-after/main.svelte @@ -1,4 +1,5 @@ + +{template()} From 0fdfd9c50cbc236d80995721176237243ca11ff4 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 19 Oct 2024 14:17:46 +0100 Subject: [PATCH 44/57] Version Packages (next) (#13696) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 2 ++ packages/svelte/CHANGELOG.md | 8 ++++++++ packages/svelte/package.json | 2 +- packages/svelte/src/version.js | 2 +- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 98007e06ca..17bd95ec22 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -47,6 +47,7 @@ "brave-gorillas-fold", "brave-pigs-obey", "brave-points-sleep", + "brave-rivers-jam", "brave-shrimps-kiss", "brave-walls-destroy", "brave-walls-flow", @@ -985,6 +986,7 @@ "wicked-wasps-allow", "wicked-ways-reply", "wicked-years-drive", + "wild-chairs-build", "wild-cows-chew", "wild-foxes-wonder", "wild-mice-look", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 6d900dd352..a48663f62c 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,13 @@ # svelte +## 5.0.0-next.272 + +### Patch Changes + +- fix: ensure user effects are correctly executed on initialisation ([#13697](https://github.com/sveltejs/svelte/pull/13697)) + +- breaking: state mutations inside the template are no longer allowed ([#13660](https://github.com/sveltejs/svelte/pull/13660)) + ## 5.0.0-next.271 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index 5397787e19..9674be1009 100644 --- a/packages/svelte/package.json +++ b/packages/svelte/package.json @@ -2,7 +2,7 @@ "name": "svelte", "description": "Cybernetically enhanced web apps", "license": "MIT", - "version": "5.0.0-next.271", + "version": "5.0.0-next.272", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index 0be050ed41..4cd24a1f1d 100644 --- a/packages/svelte/src/version.js +++ b/packages/svelte/src/version.js @@ -6,5 +6,5 @@ * https://svelte.dev/docs/svelte-compiler#svelte-version * @type {string} */ -export const VERSION = '5.0.0-next.271'; +export const VERSION = '5.0.0-next.272'; export const PUBLIC_VERSION = '5'; From 7691521dc1a2da51c4c2558cf38374a2ca208400 Mon Sep 17 00:00:00 2001 From: pngwn Date: Sat, 19 Oct 2024 17:40:47 +0100 Subject: [PATCH 45/57] major bump - svelte 5 (#13701) --- .changeset/afraid-dogs-matter.md | 5 - .changeset/afraid-geckos-dance.md | 5 - .changeset/afraid-kids-hide.md | 5 - .changeset/afraid-moose-matter.md | 5 - .changeset/afraid-trainers-occur.md | 5 - .changeset/afraid-worms-drum.md | 5 - .changeset/angry-birds-fly.md | 5 - .changeset/angry-books-jam.md | 5 - .changeset/angry-plums-punch.md | 5 - .changeset/angry-wasps-help.md | 5 - .changeset/angry-weeks-design.md | 5 - .changeset/beige-clocks-notice.md | 5 - .changeset/beige-cobras-smoke.md | 5 - .changeset/beige-donkeys-exercise.md | 5 - .changeset/beige-flies-wash.md | 5 - .changeset/beige-gifts-appear.md | 5 - .changeset/beige-lamps-ring.md | 5 - .changeset/beige-mirrors-listen.md | 5 - .changeset/beige-rabbits-shave.md | 5 - .changeset/beige-seas-share.md | 5 - .changeset/big-apes-smell.md | 5 - .changeset/big-cars-serve.md | 5 - .changeset/big-eggs-flash.md | 5 - .changeset/big-eyes-carry.md | 5 - .changeset/big-geese-act.md | 5 - .changeset/big-moons-occur.md | 5 - .changeset/blue-ants-raise.md | 5 - .changeset/blue-lemons-wait.md | 5 - .changeset/blue-rules-juggle.md | 5 - .changeset/blue-timers-film.md | 5 - .changeset/blue-waves-sneeze.md | 5 - .changeset/brave-candles-serve.md | 5 - .changeset/brave-carrots-draw.md | 5 - .changeset/brave-doors-compete.md | 5 - .changeset/brave-gorillas-end.md | 5 - .changeset/brave-gorillas-fold.md | 5 - .changeset/brave-pigs-obey.md | 5 - .changeset/brave-points-sleep.md | 5 - .changeset/brave-rivers-jam.md | 5 - .changeset/brave-shrimps-kiss.md | 5 - .changeset/brave-walls-destroy.md | 5 - .changeset/brave-walls-flow.md | 5 - .changeset/breezy-carrots-flash.md | 5 - .changeset/breezy-rules-beg.md | 5 - .changeset/breezy-waves-camp.md | 5 - .changeset/bright-berries-smell.md | 5 - .changeset/bright-colts-play.md | 5 - .changeset/bright-falcons-float.md | 5 - .changeset/bright-needles-pretend.md | 5 - .changeset/bright-peas-juggle.md | 5 - .changeset/bright-seas-brake.md | 5 - .changeset/bright-snakes-sing.md | 5 - .changeset/brown-geckos-fry.md | 5 - .changeset/brown-houses-obey.md | 5 - .changeset/brown-insects-float.md | 5 - .changeset/brown-months-flow.md | 5 - .changeset/brown-months-fry.md | 5 - .changeset/brown-pens-repeat.md | 5 - .changeset/brown-radios-itch.md | 5 - .changeset/brown-spoons-boil.md | 5 - .changeset/brown-turkeys-tap.md | 5 - .changeset/calm-buses-clap.md | 5 - .changeset/calm-cameras-hide.md | 5 - .changeset/calm-clocks-raise.md | 5 - .changeset/calm-pandas-vanish.md | 5 - .changeset/calm-ravens-sneeze.md | 5 - .changeset/chatty-beans-divide.md | 5 - .changeset/chatty-cups-drop.md | 5 - .changeset/chatty-ghosts-unite.md | 5 - .changeset/chatty-sloths-allow.md | 5 - .changeset/chatty-snails-train.md | 5 - .changeset/chatty-taxis-juggle.md | 5 - .changeset/chilled-ladybugs-invite.md | 5 - .changeset/chilled-pumas-invite.md | 5 - .changeset/chilled-seas-jog.md | 5 - .changeset/chilly-carpets-switch.md | 5 - .changeset/chilly-dolphins-lick.md | 5 - .changeset/chilly-glasses-retire.md | 5 - .changeset/chilly-laws-juggle.md | 5 - .changeset/chilly-pans-raise.md | 5 - .changeset/chilly-rocks-hug.md | 5 - .changeset/chilly-snakes-scream.md | 5 - .changeset/chilly-waves-count.md | 5 - .changeset/clean-cats-wave.md | 5 - .changeset/clean-eels-beg.md | 5 - .changeset/clean-melons-wash.md | 5 - .changeset/clean-shirts-yawn.md | 5 - .changeset/clean-sloths-nail.md | 5 - .changeset/clever-chefs-relate.md | 5 - .changeset/clever-maps-travel.md | 5 - .changeset/clever-rockets-burn.md | 5 - .changeset/clever-sloths-push.md | 5 - .changeset/clever-stingrays-shout.md | 5 - .changeset/clever-toys-laugh.md | 5 - .changeset/cold-beans-tease.md | 5 - .changeset/cold-birds-own.md | 5 - .changeset/cold-cheetahs-judge.md | 5 - .changeset/cold-lamps-accept.md | 5 - .changeset/cold-masks-learn.md | 5 - .changeset/cold-shrimps-hug.md | 5 - .changeset/cold-socks-learn.md | 5 - .changeset/cold-teachers-turn.md | 5 - .changeset/cool-actors-tan.md | 5 - .changeset/cool-ants-leave.md | 5 - .changeset/cool-apes-confess.md | 5 - .changeset/cool-comics-marry.md | 5 - .changeset/cool-jobs-scream.md | 5 - .changeset/cool-peas-lick.md | 5 - .changeset/cool-poems-watch.md | 5 - .changeset/cool-rabbits-tickle.md | 5 - .changeset/cool-roses-trade.md | 5 - .changeset/cool-turtles-travel.md | 5 - .changeset/cool-yaks-run.md | 5 - .changeset/cuddly-pianos-drop.md | 5 - .changeset/cuddly-points-tickle.md | 5 - .changeset/curly-cooks-cheer.md | 5 - .changeset/curly-lizards-dream.md | 5 - .changeset/curvy-buses-laugh.md | 5 - .changeset/curvy-cups-cough.md | 5 - .changeset/curvy-flies-exercise.md | 5 - .changeset/curvy-foxes-wink.md | 5 - .changeset/curvy-papayas-pretend.md | 5 - .changeset/curvy-ties-shout.md | 5 - .changeset/cyan-colts-raise.md | 5 - .changeset/cyan-ducks-teach.md | 5 - .changeset/cyan-flowers-destroy.md | 5 - .changeset/cyan-news-grow.md | 5 - .changeset/cyan-spies-grin.md | 5 - .changeset/cyan-squids-drive.md | 5 - .changeset/cyan-toes-share.md | 5 - .changeset/dirty-bats-punch.md | 5 - .changeset/dirty-donuts-yell.md | 5 - .changeset/dirty-eyes-itch.md | 5 - .changeset/dirty-garlics-design.md | 5 - .changeset/dirty-jars-tap.md | 5 - .changeset/dirty-pens-look.md | 5 - .changeset/dirty-pianos-eat.md | 5 - .changeset/dirty-tips-add.md | 5 - .changeset/dirty-worms-type.md | 5 - .changeset/dry-clocks-grow.md | 5 - .changeset/dry-eggs-play.md | 5 - .changeset/dry-eggs-retire.md | 5 - .changeset/dry-fans-march.md | 5 - .changeset/dry-ghosts-prove.md | 5 - .changeset/dry-hotels-matter.md | 5 - .changeset/dry-parrots-bathe.md | 5 - .changeset/dry-pillows-exist.md | 5 - .changeset/dull-coins-vanish.md | 5 - .changeset/dull-donkeys-smell.md | 5 - .changeset/dull-mangos-wave.md | 5 - .changeset/dull-pens-pay.md | 5 - .changeset/dull-pots-add.md | 5 - .changeset/dull-roses-relate.md | 5 - .changeset/dull-worms-relax.md | 5 - .changeset/early-ads-tie.md | 5 - .changeset/early-months-whisper.md | 5 - .changeset/early-needles-bake.md | 5 - .changeset/early-rockets-join.md | 5 - .changeset/early-taxis-allow.md | 5 - .changeset/eight-carrots-hunt.md | 5 - .changeset/eight-comics-tell.md | 5 - .changeset/eight-cougars-watch.md | 5 - .changeset/eight-hornets-punch.md | 5 - .changeset/eight-jeans-compare.md | 5 - .changeset/eight-pans-worry.md | 5 - .changeset/eight-pianos-raise.md | 5 - .changeset/eight-steaks-shout.md | 5 - .changeset/eight-waves-mate.md | 5 - .changeset/eighty-bikes-camp.md | 5 - .changeset/eighty-bugs-fetch.md | 5 - .changeset/eighty-days-cheat.md | 5 - .changeset/eighty-days-wave.md | 5 - .changeset/eighty-dragons-search.md | 5 - .changeset/eighty-dryers-pretend.md | 5 - .changeset/eighty-hornets-breathe.md | 5 - .changeset/eighty-lizards-notice.md | 5 - .changeset/eighty-mails-develop.md | 5 - .changeset/eleven-avocados-walk.md | 5 - .changeset/eleven-beers-yell.md | 5 - .changeset/eleven-cows-judge.md | 5 - .changeset/eleven-cycles-applaud.md | 5 - .changeset/eleven-donuts-sit.md | 5 - .changeset/eleven-hounds-pump.md | 5 - .changeset/eleven-humans-kneel.md | 5 - .changeset/eleven-icons-sniff.md | 5 - .changeset/eleven-peaches-tap.md | 5 - .changeset/eleven-teachers-drive.md | 5 - .changeset/empty-bags-heal.md | 5 - .changeset/empty-bulldogs-exercise.md | 5 - .changeset/empty-coins-build.md | 5 - .changeset/empty-crabs-think.md | 5 - .changeset/empty-files-prove.md | 5 - .changeset/empty-flowers-change.md | 5 - .changeset/empty-geckos-pretend.md | 5 - .changeset/empty-horses-tell.md | 5 - .changeset/empty-tools-share.md | 5 - .changeset/fair-bags-smoke.md | 5 - .changeset/fair-beers-help.md | 5 - .changeset/fair-crabs-check.md | 5 - .changeset/fair-items-bathe.md | 5 - .changeset/fair-pianos-talk.md | 5 - .changeset/fair-spies-repeat.md | 5 - .changeset/famous-chairs-notice.md | 5 - .changeset/famous-falcons-melt.md | 5 - .changeset/famous-kiwis-thank.md | 5 - .changeset/famous-knives-sneeze.md | 5 - .changeset/famous-mirrors-count.md | 5 - .changeset/famous-pants-pay.md | 5 - .changeset/fast-donkeys-pay.md | 5 - .changeset/fast-penguins-matter.md | 5 - .changeset/fast-toes-act.md | 5 - .changeset/fast-weeks-clean.md | 5 - .changeset/few-badgers-guess.md | 5 - .changeset/few-cheetahs-taste.md | 5 - .changeset/few-clouds-shop.md | 5 - .changeset/few-mugs-fail.md | 5 - .changeset/few-teachers-know.md | 5 - .changeset/few-walls-check.md | 5 - .changeset/few-zoos-own.md | 5 - .changeset/fifty-actors-agree.md | 5 - .changeset/fifty-masks-give.md | 5 - .changeset/fifty-rice-wait.md | 5 - .changeset/fifty-steaks-float.md | 5 - .changeset/fifty-toys-invite.md | 5 - .changeset/five-birds-check.md | 5 - .changeset/five-maps-reflect.md | 5 - .changeset/five-shirts-run.md | 5 - .changeset/five-suns-roll.md | 5 - .changeset/five-tigers-search.md | 5 - .changeset/flat-feet-visit.md | 5 - .changeset/flat-flies-know.md | 5 - .changeset/flat-ghosts-fly.md | 5 - .changeset/flat-melons-protect.md | 5 - .changeset/flat-olives-live.md | 5 - .changeset/fluffy-colts-grin.md | 5 - .changeset/fluffy-dolls-share.md | 5 - .changeset/fluffy-humans-worry.md | 5 - .changeset/fluffy-kings-complain.md | 5 - .changeset/fluffy-ravens-juggle.md | 5 - .changeset/forty-bikes-buy.md | 5 - .changeset/forty-chicken-heal.md | 5 - .changeset/forty-comics-invent.md | 5 - .changeset/forty-dogs-divide.md | 5 - .changeset/forty-dolls-wave.md | 5 - .changeset/forty-peaches-unite.md | 5 - .changeset/forty-suns-smile.md | 5 - .changeset/four-balloons-beam.md | 5 - .changeset/four-flies-hammer.md | 5 - .changeset/four-kids-flow.md | 5 - .changeset/four-mice-hammer.md | 5 - .changeset/four-papayas-turn.md | 5 - .changeset/four-peas-tickle.md | 5 - .changeset/four-pugs-listen.md | 5 - .changeset/four-yaks-boil.md | 5 - .changeset/fresh-beds-wash.md | 5 - .changeset/fresh-dots-destroy.md | 5 - .changeset/fresh-houses-check.md | 5 - .changeset/fresh-impalas-bow.md | 5 - .changeset/fresh-walls-bathe.md | 5 - .changeset/fresh-weeks-trade.md | 5 - .changeset/fresh-wombats-learn.md | 5 - .changeset/fresh-zoos-burn.md | 5 - .changeset/friendly-candles-relate.md | 5 - .changeset/friendly-clouds-rhyme.md | 5 - .changeset/friendly-dryers-jog.md | 5 - .changeset/friendly-lies-camp.md | 5 - .changeset/friendly-rice-confess.md | 5 - .changeset/friendly-taxis-hammer.md | 5 - .changeset/funny-bugs-kiss.md | 5 - .changeset/funny-cooks-clean.md | 5 - .changeset/funny-dragons-double.md | 5 - .changeset/funny-houses-kick.md | 5 - .changeset/funny-ties-jump.md | 5 - .changeset/funny-trees-cry.md | 5 - .changeset/funny-wombats-argue.md | 5 - .changeset/fuzzy-bags-camp.md | 5 - .changeset/fuzzy-donuts-provide.md | 5 - .changeset/fuzzy-tigers-swim.md | 5 - .changeset/gentle-dolls-juggle.md | 5 - .changeset/gentle-eagles-walk.md | 5 - .changeset/gentle-needles-train.md | 5 - .changeset/gentle-sheep-hug.md | 5 - .changeset/gentle-spies-happen.md | 5 - .changeset/gentle-ties-fetch.md | 5 - .changeset/gentle-toys-chew.md | 5 - .changeset/gentle-trees-exercise.md | 5 - .changeset/gentle-wasps-pull.md | 5 - .changeset/giant-bananas-turn.md | 5 - .changeset/giant-jars-applaud.md | 5 - .changeset/giant-ladybugs-thank.md | 5 - .changeset/giant-moons-own.md | 5 - .changeset/giant-planets-shake.md | 5 - .changeset/giant-plants-grin.md | 5 - .changeset/giant-roses-press.md | 5 - .changeset/gold-pens-sell.md | 5 - .changeset/gold-students-jump.md | 5 - .changeset/gold-tools-nail.md | 5 - .changeset/good-buses-reply.md | 5 - .changeset/good-cars-visit.md | 5 - .changeset/good-kings-try.md | 5 - .changeset/good-pianos-jump.md | 5 - .changeset/good-plums-type.md | 5 - .changeset/good-rice-tap.md | 5 - .changeset/good-rivers-yawn.md | 5 - .changeset/good-roses-argue.md | 5 - .changeset/good-vans-bake.md | 5 - .changeset/good-zebras-turn.md | 5 - .changeset/gorgeous-boxes-design.md | 5 - .changeset/gorgeous-coats-jog.md | 5 - .changeset/gorgeous-hats-wonder.md | 5 - .changeset/gorgeous-monkeys-carry.md | 5 - .changeset/gorgeous-pans-sort.md | 5 - .changeset/gorgeous-singers-rest.md | 5 - .changeset/great-dots-wonder.md | 5 - .changeset/great-fans-unite.md | 5 - .changeset/great-icons-retire.md | 5 - .changeset/great-plums-pretend.md | 5 - .changeset/green-baboons-sip.md | 5 - .changeset/green-cameras-bake.md | 5 - .changeset/green-eggs-approve.md | 5 - .changeset/green-fishes-lie.md | 5 - .changeset/green-hounds-play.md | 5 - .changeset/green-snails-tickle.md | 5 - .changeset/green-tigers-judge.md | 5 - .changeset/green-walls-clap.md | 5 - .changeset/green-windows-tap.md | 5 - .changeset/grumpy-avocados-fetch.md | 5 - .changeset/grumpy-insects-sleep.md | 5 - .changeset/grumpy-jars-sparkle.md | 5 - .changeset/happy-beds-scream.md | 5 - .changeset/happy-dogs-jump.md | 5 - .changeset/happy-dolls-joke.md | 5 - .changeset/happy-eggs-rest.md | 5 - .changeset/happy-lobsters-lick.md | 5 - .changeset/happy-moles-live.md | 5 - .changeset/happy-planets-rest.md | 5 - .changeset/happy-suits-film.md | 5 - .changeset/healthy-ants-film.md | 5 - .changeset/healthy-dancers-play.md | 5 - .changeset/healthy-mangos-brush.md | 5 - .changeset/healthy-planes-vanish.md | 5 - .changeset/healthy-poets-float.md | 5 - .changeset/healthy-zebras-accept.md | 5 - .changeset/heavy-cars-ring.md | 5 - .changeset/heavy-comics-move.md | 5 - .changeset/heavy-doors-applaud.md | 5 - .changeset/heavy-ducks-leave.md | 5 - .changeset/heavy-ears-rule.md | 5 - .changeset/heavy-feet-attend.md | 5 - .changeset/heavy-houses-pay.md | 5 - .changeset/hip-balloons-begin.md | 5 - .changeset/hip-garlics-tap.md | 5 - .changeset/hip-goats-smoke.md | 5 - .changeset/hip-jeans-provide.md | 5 - .changeset/hip-months-breathe.md | 5 - .changeset/hip-pumpkins-boil.md | 5 - .changeset/hip-stingrays-teach.md | 5 - .changeset/honest-buses-add.md | 5 - .changeset/honest-dragons-turn.md | 5 - .changeset/honest-icons-change.md | 5 - .changeset/honest-nails-share.md | 5 - .changeset/honest-pans-kick.md | 5 - .changeset/honest-phones-flash.md | 5 - .changeset/hot-cooks-repair.md | 5 - .changeset/hot-glasses-roll.md | 5 - .changeset/hot-grapes-destroy.md | 5 - .changeset/hot-jobs-tap.md | 5 - .changeset/hot-kangaroos-invite.md | 5 - .changeset/hot-peaches-clean.md | 5 - .changeset/hot-rivers-punch.md | 5 - .changeset/hot-sloths-clap.md | 5 - .changeset/hot-tips-appear.md | 5 - .changeset/hungry-boxes-relate.md | 5 - .changeset/hungry-dots-fry.md | 5 - .changeset/hungry-pants-push.md | 5 - .changeset/hungry-singers-share.md | 5 - .changeset/hungry-tips-unite.md | 5 - .changeset/hungry-trees-travel.md | 5 - .changeset/itchy-beans-melt.md | 5 - .changeset/itchy-beds-kneel.md | 5 - .changeset/itchy-bulldogs-tan.md | 5 - .changeset/itchy-eels-marry.md | 5 - .changeset/itchy-kings-deliver.md | 5 - .changeset/itchy-lemons-punch.md | 5 - .changeset/itchy-lions-wash.md | 5 - .changeset/itchy-oranges-behave.md | 5 - .changeset/itchy-panthers-shave.md | 5 - .changeset/itchy-peaches-compare.md | 5 - .changeset/itchy-pianos-marry.md | 5 - .changeset/itchy-terms-guess.md | 5 - .changeset/khaki-camels-punch.md | 5 - .changeset/khaki-cheetahs-refuse.md | 5 - .changeset/khaki-cooks-develop.md | 5 - .changeset/khaki-donkeys-jump.md | 5 - .changeset/khaki-ligers-sing.md | 5 - .changeset/khaki-mails-draw.md | 5 - .changeset/khaki-mails-scream.md | 5 - .changeset/khaki-mirrors-warn.md | 5 - .changeset/khaki-monkeys-cry.md | 5 - .changeset/khaki-moose-arrive.md | 5 - .changeset/khaki-tomatoes-rule.md | 5 - .changeset/kind-baboons-approve.md | 5 - .changeset/kind-deers-lay.md | 5 - .changeset/kind-doors-grin.md | 5 - .changeset/kind-dots-sort.md | 5 - .changeset/kind-eagles-join.md | 5 - .changeset/kind-rings-flash.md | 5 - .changeset/kind-snakes-drive.md | 5 - .changeset/kind-spoons-return.md | 5 - .changeset/large-clouds-carry.md | 5 - .changeset/large-emus-cough.md | 5 - .changeset/large-rules-hang.md | 5 - .changeset/large-turkeys-deny.md | 5 - .changeset/large-waves-join.md | 5 - .changeset/late-bees-vanish.md | 5 - .changeset/late-crabs-lay.md | 5 - .changeset/late-geckos-draw.md | 5 - .changeset/late-grapes-judge.md | 5 - .changeset/late-peaches-mate.md | 5 - .changeset/late-zebras-argue.md | 5 - .changeset/lazy-carrots-buy.md | 5 - .changeset/lazy-knives-happen.md | 5 - .changeset/lazy-masks-sit.md | 5 - .changeset/lazy-months-knock.md | 5 - .changeset/lazy-queens-agree.md | 5 - .changeset/lazy-spiders-think.md | 5 - .changeset/lemon-geese-call.md | 5 - .changeset/lemon-geese-drum.md | 5 - .changeset/lemon-meals-appear.md | 5 - .changeset/lemon-trees-act.md | 5 - .changeset/light-badgers-glow.md | 5 - .changeset/light-crews-deny.md | 5 - .changeset/light-days-clean.md | 5 - .changeset/light-hounds-carry.md | 5 - .changeset/light-humans-hang.md | 5 - .changeset/light-penguins-invent.md | 5 - .changeset/light-pens-watch.md | 5 - .changeset/light-tigers-smoke.md | 5 - .changeset/little-ligers-exist.md | 5 - .changeset/little-pans-jog.md | 5 - .changeset/little-seals-reflect.md | 5 - .changeset/long-buckets-lay.md | 5 - .changeset/long-carrots-sneeze.md | 5 - .changeset/long-coats-fry.md | 5 - .changeset/long-crews-return.md | 5 - .changeset/long-humans-repair.md | 5 - .changeset/long-lobsters-mate.md | 5 - .changeset/loud-cheetahs-flow.md | 5 - .changeset/loud-insects-arrive.md | 5 - .changeset/loud-mugs-smile.md | 5 - .changeset/loud-news-deliver.md | 5 - .changeset/loud-numbers-flow.md | 5 - .changeset/loud-penguins-unite.md | 5 - .changeset/loud-ravens-drop.md | 5 - .changeset/loud-socks-look.md | 5 - .changeset/loud-walls-wave.md | 5 - .changeset/lovely-bugs-sneeze.md | 5 - .changeset/lovely-carpets-lick.md | 5 - .changeset/lovely-houses-own.md | 5 - .changeset/lovely-items-turn.md | 5 - .changeset/lovely-ravens-crash.md | 5 - .changeset/lovely-rules-eat.md | 5 - .changeset/lovely-zebras-own.md | 5 - .changeset/lucky-colts-remember.md | 5 - .changeset/lucky-drinks-push.md | 5 - .changeset/lucky-experts-float.md | 5 - .changeset/lucky-geckos-swim.md | 5 - .changeset/lucky-panthers-chew.md | 5 - .changeset/lucky-schools-hang.md | 5 - .changeset/lucky-teachers-exist.md | 5 - .changeset/lucky-toes-begin.md | 5 - .changeset/many-fishes-warn.md | 5 - .changeset/many-rockets-give.md | 5 - .changeset/many-trees-fix.md | 5 - .changeset/mean-jokes-exist.md | 5 - .changeset/mean-numbers-cry.md | 5 - .changeset/mean-parents-film.md | 5 - .changeset/metal-cameras-jump.md | 5 - .changeset/metal-clouds-raise.md | 5 - .changeset/metal-lobsters-burn.md | 5 - .changeset/metal-pans-trade.md | 5 - .changeset/mighty-cooks-scream.md | 5 - .changeset/mighty-files-hammer.md | 5 - .changeset/mighty-frogs-obey.md | 5 - .changeset/mighty-paws-smash.md | 5 - .changeset/mighty-poets-fix.md | 5 - .changeset/mighty-shoes-nail.md | 5 - .changeset/modern-apricots-promise.md | 5 - .changeset/modern-fishes-double.md | 5 - .changeset/modern-peaches-cheer.md | 5 - .changeset/moody-carrots-lay.md | 5 - .changeset/moody-frogs-exist.md | 5 - .changeset/moody-ghosts-buy.md | 5 - .changeset/moody-houses-argue.md | 5 - .changeset/moody-lions-watch.md | 5 - .changeset/moody-owls-cry.md | 5 - .changeset/moody-pugs-tan.md | 5 - .changeset/moody-sheep-type.md | 5 - .changeset/moody-toys-relax.md | 5 - .changeset/nasty-carrots-develop.md | 5 - .changeset/nasty-eggs-walk.md | 5 - .changeset/nasty-glasses-begin.md | 5 - .changeset/nasty-lions-double.md | 5 - .changeset/nasty-mayflies-smoke.md | 5 - .changeset/nasty-penguins-pump.md | 5 - .changeset/nasty-teachers-end.md | 5 - .changeset/nasty-yaks-peel.md | 5 - .changeset/neat-boats-shake.md | 5 - .changeset/neat-boxes-chew.md | 5 - .changeset/neat-dingos-clap.md | 5 - .changeset/neat-ducks-jam.md | 5 - .changeset/neat-files-rescue.md | 5 - .changeset/neat-jokes-beam.md | 5 - .changeset/neat-rabbits-divide.md | 5 - .changeset/neat-ways-allow.md | 5 - .changeset/nervous-adults-sell.md | 5 - .changeset/nervous-berries-boil.md | 5 - .changeset/nervous-chefs-exist.md | 5 - .changeset/nervous-dolphins-allow.md | 5 - .changeset/nervous-ducks-repeat.md | 5 - .changeset/nervous-spoons-relax.md | 5 - .changeset/nervous-squids-drop.md | 5 - .changeset/nervous-turkeys-end.md | 5 - .changeset/new-baboons-fetch.md | 5 - .changeset/new-boats-wait.md | 5 - .changeset/new-brooms-grin.md | 5 - .changeset/new-cooks-roll.md | 5 - .changeset/new-rabbits-flow.md | 5 - .changeset/nice-avocados-move.md | 5 - .changeset/nice-bottles-greet.md | 5 - .changeset/nice-brooms-battle.md | 5 - .changeset/nice-jobs-breathe.md | 5 - .changeset/nine-ants-invite.md | 5 - .changeset/nine-cooks-join.md | 5 - .changeset/nine-kids-whisper.md | 5 - .changeset/nine-vans-admire.md | 5 - .changeset/ninety-days-visit.md | 5 - .changeset/ninety-dingos-walk.md | 5 - .changeset/ninety-dots-train.md | 5 - .changeset/ninety-months-laugh.md | 5 - .changeset/ninety-rockets-battle.md | 5 - .changeset/odd-buckets-lie.md | 5 - .changeset/odd-needles-joke.md | 5 - .changeset/odd-schools-wait.md | 5 - .changeset/odd-shirts-hear.md | 5 - .changeset/odd-shoes-cheat.md | 5 - .changeset/odd-taxis-retire.md | 5 - .changeset/odd-toys-glow.md | 5 - .changeset/old-flies-jog.md | 5 - .changeset/old-houses-drum.md | 5 - .changeset/old-jokes-deliver.md | 5 - .changeset/old-mails-sneeze.md | 5 - .changeset/old-oranges-compete.md | 5 - .changeset/old-planets-bow.md | 5 - .changeset/old-planets-kiss.md | 5 - .changeset/old-spoons-pull.md | 5 - .changeset/olive-apples-lick.md | 5 - .changeset/olive-cobras-wonder.md | 5 - .changeset/olive-forks-grin.md | 5 - .changeset/olive-kangaroos-brake.md | 5 - .changeset/olive-llamas-warn.md | 5 - .changeset/olive-mice-fix.md | 5 - .changeset/olive-moons-act.md | 5 - .changeset/olive-seals-sell.md | 5 - .changeset/olive-shirts-complain.md | 5 - .changeset/olive-socks-kick.md | 5 - .changeset/orange-comics-prove.md | 5 - .changeset/orange-crews-rescue.md | 5 - .changeset/orange-dingos-poke.md | 5 - .changeset/orange-laws-drop.md | 5 - .changeset/orange-masks-exercise.md | 5 - .changeset/orange-sheep-exist.md | 5 - .changeset/orange-yaks-protect.md | 5 - .changeset/orange-zoos-heal.md | 5 - .changeset/perfect-actors-bake.md | 5 - .changeset/perfect-ants-allow.md | 5 - .changeset/perfect-avocados-greet.md | 5 - .changeset/perfect-cooks-shop.md | 5 - .changeset/perfect-hairs-matter.md | 5 - .changeset/perfect-hats-dance.md | 5 - .changeset/perfect-pugs-shake.md | 5 - .changeset/pink-bikes-agree.md | 5 - .changeset/pink-countries-repair.md | 5 - .changeset/pink-goats-promise.md | 5 - .changeset/pink-mayflies-tie.md | 5 - .changeset/pink-shirts-film.md | 5 - .changeset/plenty-clouds-reply.md | 5 - .changeset/plenty-elephants-fry.md | 5 - .changeset/plenty-items-build.md | 5 - .changeset/plenty-rings-stare.md | 5 - .changeset/plenty-starfishes-dress.md | 5 - .changeset/plenty-turkeys-raise.md | 5 - .changeset/plenty-zoos-fix.md | 5 - .changeset/polite-dolphins-care.md | 5 - .changeset/polite-peas-mate.md | 5 - .changeset/polite-pugs-attend.md | 5 - .changeset/polite-pumpkins-guess.md | 5 - .changeset/polite-ravens-study.md | 5 - .changeset/polite-tomatoes-trade.md | 5 - .changeset/polite-ways-serve.md | 5 - .changeset/poor-eggs-enjoy.md | 5 - .changeset/poor-hats-design.md | 5 - .changeset/poor-mugs-pay.md | 5 - .changeset/poor-seahorses-flash.md | 5 - .changeset/poor-shrimps-explain.md | 5 - .changeset/popular-apes-bathe.md | 5 - .changeset/popular-cameras-tie.md | 5 - .changeset/popular-cups-bathe.md | 5 - .changeset/popular-dolphins-shake.md | 5 - .changeset/popular-feet-rule.md | 5 - .changeset/popular-games-hug.md | 5 - .changeset/popular-ligers-perform.md | 5 - .changeset/popular-mangos-rest.md | 5 - .changeset/popular-news-happen.md | 5 - .changeset/popular-roses-teach.md | 5 - .changeset/popular-walls-hunt.md | 5 - .changeset/pre.json | 1027 ------------------------- .changeset/pretty-ties-help.md | 5 - .changeset/proud-lobsters-lie.md | 5 - .changeset/proud-pets-hang.md | 5 - .changeset/proud-queens-sniff.md | 5 - .changeset/purple-dragons-peel.md | 5 - .changeset/quick-eagles-sit.md | 5 - .changeset/quick-paws-wash.md | 5 - .changeset/quick-pumpkins-study.md | 5 - .changeset/quiet-apricots-dream.md | 5 - .changeset/quiet-berries-end.md | 5 - .changeset/quiet-berries-explode.md | 5 - .changeset/quiet-camels-mate.md | 5 - .changeset/quiet-cobras-smile.md | 5 - .changeset/quiet-crabs-nail.md | 5 - .changeset/quiet-timers-speak.md | 5 - .changeset/rare-ears-agree.md | 5 - .changeset/rare-insects-tell.md | 5 - .changeset/rare-mirrors-act.md | 5 - .changeset/rare-pears-whisper.md | 5 - .changeset/rare-worms-hunt.md | 5 - .changeset/real-camels-pay.md | 5 - .changeset/real-guests-do.md | 5 - .changeset/real-items-suffer.md | 5 - .changeset/real-pandas-brush.md | 5 - .changeset/real-timers-complain.md | 5 - .changeset/red-cycles-pretend.md | 5 - .changeset/red-doors-own.md | 5 - .changeset/red-feet-worry.md | 5 - .changeset/red-kings-draw.md | 5 - .changeset/red-ladybugs-turn.md | 5 - .changeset/red-maps-nail.md | 5 - .changeset/red-poets-study.md | 5 - .changeset/red-pots-pretend.md | 5 - .changeset/rich-cobras-exist.md | 5 - .changeset/rich-elephants-relax.md | 5 - .changeset/rich-garlics-laugh.md | 5 - .changeset/rich-ladybugs-admire.md | 5 - .changeset/rich-olives-yell.md | 5 - .changeset/rich-plums-thank.md | 5 - .changeset/rich-sheep-burn.md | 5 - .changeset/rich-tables-sing.md | 5 - .changeset/rich-taxis-hear.md | 5 - .changeset/rich-waves-mix.md | 5 - .changeset/rotten-actors-rush.md | 5 - .changeset/rotten-bags-type.md | 5 - .changeset/rotten-buckets-develop.md | 5 - .changeset/rotten-experts-relax.md | 5 - .changeset/rotten-poems-applaud.md | 5 - .changeset/rotten-rules-invite.md | 5 - .changeset/rude-ghosts-tickle.md | 5 - .changeset/selfish-dragons-knock.md | 5 - .changeset/selfish-panthers-add.md | 5 - .changeset/selfish-socks-smile.md | 5 - .changeset/selfish-spies-help.md | 5 - .changeset/selfish-tools-hide.md | 5 - .changeset/selfish-trainers-kiss.md | 5 - .changeset/serious-bobcats-carry.md | 5 - .changeset/serious-crabs-punch.md | 5 - .changeset/serious-goats-tap.md | 5 - .changeset/serious-gorillas-eat.md | 5 - .changeset/serious-kids-deliver.md | 5 - .changeset/serious-needles-joke.md | 5 - .changeset/serious-owls-think.md | 5 - .changeset/serious-poems-brake.md | 5 - .changeset/serious-socks-cover.md | 5 - .changeset/serious-zebras-scream.md | 5 - .changeset/seven-bees-tell.md | 5 - .changeset/seven-dancers-brush.md | 5 - .changeset/seven-deers-jam.md | 5 - .changeset/seven-garlics-serve.md | 5 - .changeset/seven-hornets-smile.md | 5 - .changeset/seven-jobs-sniff.md | 5 - .changeset/seven-masks-end.md | 5 - .changeset/seven-news-live.md | 5 - .changeset/seven-ravens-check.md | 5 - .changeset/seven-wombats-retire.md | 5 - .changeset/shaggy-cameras-live.md | 5 - .changeset/shaggy-comics-jog.md | 5 - .changeset/sharp-fishes-serve.md | 5 - .changeset/sharp-foxes-whisper.md | 5 - .changeset/sharp-gorillas-impress.md | 5 - .changeset/sharp-kids-happen.md | 5 - .changeset/sharp-spies-live.md | 5 - .changeset/sharp-tomatoes-learn.md | 5 - .changeset/shiny-baboons-play.md | 5 - .changeset/shiny-jobs-judge.md | 5 - .changeset/shiny-kangaroos-move.md | 5 - .changeset/shiny-mayflies-clean.md | 5 - .changeset/shiny-melons-love.md | 5 - .changeset/shiny-months-tease.md | 5 - .changeset/shiny-pillows-relax.md | 5 - .changeset/shiny-rats-heal.md | 5 - .changeset/shiny-shrimps-march.md | 5 - .changeset/shiny-starfishes-cross.md | 5 - .changeset/shiny-wombats-argue.md | 5 - .changeset/short-buses-camp.md | 5 - .changeset/short-countries-rush.md | 5 - .changeset/short-starfishes-beg.md | 5 - .changeset/shy-fishes-drive.md | 5 - .changeset/shy-scissors-smile.md | 5 - .changeset/silent-apes-report.md | 5 - .changeset/silent-elephants-film.md | 5 - .changeset/silent-hats-stare.md | 5 - .changeset/silent-rabbits-join.md | 5 - .changeset/silent-rocks-yell.md | 5 - .changeset/silly-ducks-mix.md | 5 - .changeset/silly-fishes-deny.md | 5 - .changeset/silly-houses-promise.md | 5 - .changeset/silly-laws-happen.md | 5 - .changeset/silly-lies-film.md | 5 - .changeset/silly-masks-exist.md | 5 - .changeset/silly-ways-wash.md | 5 - .changeset/silver-beans-hear.md | 5 - .changeset/silver-mice-double.md | 5 - .changeset/silver-points-approve.md | 5 - .changeset/silver-sheep-knock.md | 5 - .changeset/six-apes-peel.md | 5 - .changeset/six-beans-laugh.md | 5 - .changeset/six-bears-trade.md | 5 - .changeset/six-boats-shave.md | 5 - .changeset/six-chicken-kneel.md | 5 - .changeset/six-gorillas-obey.md | 5 - .changeset/six-moons-invent.md | 5 - .changeset/six-vans-add.md | 5 - .changeset/sixty-items-crash.md | 5 - .changeset/sixty-numbers-hope.md | 5 - .changeset/sixty-pandas-rush.md | 5 - .changeset/sixty-plants-cover.md | 5 - .changeset/sleepy-cats-eat.md | 5 - .changeset/sleepy-dogs-sit.md | 5 - .changeset/slimy-clouds-talk.md | 5 - .changeset/slimy-garlics-beg.md | 5 - .changeset/slimy-hairs-impress.md | 5 - .changeset/slimy-laws-explode.md | 5 - .changeset/slimy-news-help.md | 5 - .changeset/slimy-onions-approve.md | 5 - .changeset/slimy-walls-draw.md | 5 - .changeset/slow-badgers-invite.md | 5 - .changeset/slow-beds-shave.md | 5 - .changeset/slow-chefs-dream.md | 5 - .changeset/slow-gorillas-yawn.md | 5 - .changeset/slow-kids-sparkle.md | 5 - .changeset/slow-ligers-enjoy.md | 5 - .changeset/slow-plums-chew.md | 5 - .changeset/slow-wombats-reply.md | 5 - .changeset/small-apples-eat.md | 5 - .changeset/small-chefs-sing.md | 5 - .changeset/small-owls-remain.md | 5 - .changeset/small-papayas-laugh.md | 5 - .changeset/small-planets-destroy.md | 5 - .changeset/small-sheep-type.md | 5 - .changeset/small-spiders-fail.md | 5 - .changeset/small-suns-lie.md | 5 - .changeset/smart-cars-know.md | 5 - .changeset/smart-cherries-leave.md | 5 - .changeset/smart-fans-crash.md | 5 - .changeset/smart-grapes-mate.md | 5 - .changeset/smart-parents-swim.md | 5 - .changeset/smart-poets-care.md | 5 - .changeset/smart-spiders-fetch.md | 5 - .changeset/smart-turkeys-tell.md | 5 - .changeset/smart-zebras-pay.md | 5 - .changeset/smart-zoos-vanish.md | 5 - .changeset/smooth-apes-shave.md | 5 - .changeset/smooth-kids-protect.md | 5 - .changeset/smooth-pens-exist.md | 5 - .changeset/smooth-pens-protect.md | 5 - .changeset/smooth-rings-rush.md | 5 - .changeset/smooth-windows-explain.md | 5 - .changeset/soft-clocks-remember.md | 5 - .changeset/soft-geese-learn.md | 5 - .changeset/soft-months-grab.md | 5 - .changeset/soft-stingrays-attend.md | 5 - .changeset/soft-tigers-wink.md | 5 - .changeset/sour-bags-fail.md | 5 - .changeset/sour-forks-stare.md | 5 - .changeset/sour-geese-listen.md | 5 - .changeset/sour-jeans-collect.md | 5 - .changeset/sour-poems-trade.md | 5 - .changeset/sour-rules-march.md | 5 - .changeset/sour-tomatoes-knock.md | 5 - .changeset/sour-weeks-fix.md | 5 - .changeset/spicy-jeans-deliver.md | 5 - .changeset/spicy-peas-vanish.md | 5 - .changeset/spicy-plums-admire.md | 5 - .changeset/spotty-crabs-give.md | 5 - .changeset/spotty-houses-search.md | 5 - .changeset/spotty-kings-hug.md | 5 - .changeset/spotty-pens-agree.md | 5 - .changeset/spotty-rocks-destroy.md | 5 - .changeset/spotty-shrimps-hug.md | 5 - .changeset/spotty-spiders-compare.md | 5 - .changeset/spotty-trees-provide.md | 5 - .changeset/spotty-turkeys-sparkle.md | 5 - .changeset/stale-books-perform.md | 5 - .changeset/stale-comics-look.md | 5 - .changeset/stale-fans-rest.md | 5 - .changeset/stale-jeans-refuse.md | 5 - .changeset/stale-nails-listen.md | 5 - .changeset/stale-rats-check.md | 5 - .changeset/strange-apricots-happen.md | 5 - .changeset/strange-pears-perform.md | 5 - .changeset/strange-pillows-greet.md | 5 - .changeset/strange-roses-brake.md | 5 - .changeset/strange-trains-destroy.md | 5 - .changeset/strong-apricots-destroy.md | 5 - .changeset/strong-gifts-smoke.md | 5 - .changeset/strong-lemons-provide.md | 5 - .changeset/strong-pans-doubt.md | 5 - .changeset/stupid-bottles-lay.md | 5 - .changeset/stupid-cars-behave.md | 5 - .changeset/stupid-dodos-hide.md | 5 - .changeset/stupid-parents-crash.md | 5 - .changeset/stupid-rivers-stare.md | 5 - .changeset/sweet-bottles-check.md | 5 - .changeset/sweet-mangos-beg.md | 5 - .changeset/sweet-pens-sniff.md | 5 - .changeset/swift-donkeys-perform.md | 5 - .changeset/swift-fans-stare.md | 5 - .changeset/swift-feet-juggle.md | 5 - .changeset/swift-knives-tie.md | 5 - .changeset/swift-poets-carry.md | 5 - .changeset/swift-queens-begin.md | 5 - .changeset/swift-rats-sing.md | 5 - .changeset/swift-ravens-hunt.md | 5 - .changeset/swift-seahorses-deliver.md | 5 - .changeset/tall-books-grin.md | 5 - .changeset/tall-dragons-switch.md | 5 - .changeset/tall-garlics-try.md | 5 - .changeset/tall-mugs-buy.md | 5 - .changeset/tall-shrimps-worry.md | 5 - .changeset/tall-tigers-wait.md | 5 - .changeset/tame-cycles-kneel.md | 5 - .changeset/tame-dodos-float.md | 5 - .changeset/tame-dots-battle.md | 5 - .changeset/tame-frogs-shave.md | 5 - .changeset/tame-goats-bow.md | 5 - .changeset/tame-spies-drum.md | 5 - .changeset/tasty-cheetahs-appear.md | 5 - .changeset/tasty-mice-admire.md | 5 - .changeset/tasty-numbers-perform.md | 5 - .changeset/tasty-spies-sniff.md | 5 - .changeset/tasty-steaks-smile.md | 5 - .changeset/ten-eels-move.md | 5 - .changeset/ten-foxes-repeat.md | 5 - .changeset/ten-geese-share.md | 5 - .changeset/ten-jokes-divide.md | 5 - .changeset/ten-laws-grow.md | 5 - .changeset/ten-peaches-sleep.md | 5 - .changeset/ten-singers-cough.md | 5 - .changeset/ten-singers-repair.md | 5 - .changeset/ten-teachers-travel.md | 5 - .changeset/ten-ties-repair.md | 5 - .changeset/ten-trainers-juggle.md | 5 - .changeset/ten-vans-divide.md | 5 - .changeset/ten-worms-reflect.md | 5 - .changeset/tender-bats-switch.md | 5 - .changeset/tender-lemons-judge.md | 5 - .changeset/tender-rocks-walk.md | 5 - .changeset/tender-suns-love.md | 5 - .changeset/thick-cycles-rule.md | 5 - .changeset/thick-pans-tell.md | 5 - .changeset/thick-shirts-deliver.md | 5 - .changeset/thick-swans-type.md | 5 - .changeset/thin-colts-yawn.md | 5 - .changeset/thin-foxes-lick.md | 5 - .changeset/thin-papayas-tap.md | 5 - .changeset/thin-spoons-float.md | 5 - .changeset/thin-years-rhyme.md | 5 - .changeset/thirty-dogs-whisper.md | 5 - .changeset/thirty-flies-push.md | 5 - .changeset/thirty-flowers-sit.md | 5 - .changeset/thirty-ghosts-fix.md | 5 - .changeset/thirty-guests-flow.md | 5 - .changeset/thirty-impalas-repair.md | 5 - .changeset/thirty-pears-hug.md | 5 - .changeset/thirty-wombats-relax.md | 5 - .changeset/three-buses-sleep.md | 5 - .changeset/three-camels-sell.md | 5 - .changeset/three-donkeys-jump.md | 5 - .changeset/three-foxes-relax.md | 5 - .changeset/three-icons-trade.md | 5 - .changeset/three-lions-visit.md | 5 - .changeset/three-papayas-buy.md | 5 - .changeset/three-rice-tie.md | 5 - .changeset/three-suits-grin.md | 5 - .changeset/tidy-buses-whisper.md | 5 - .changeset/tidy-chefs-taste.md | 5 - .changeset/tidy-deers-hope.md | 5 - .changeset/tidy-fans-relax.md | 5 - .changeset/tidy-lizards-happen.md | 5 - .changeset/tidy-starfishes-allow.md | 5 - .changeset/tiny-ads-press.md | 5 - .changeset/tiny-kings-whisper.md | 5 - .changeset/tiny-meals-deliver.md | 5 - .changeset/tiny-moose-kiss.md | 5 - .changeset/tiny-taxis-whisper.md | 5 - .changeset/tough-buckets-thank.md | 5 - .changeset/tough-pans-boil.md | 5 - .changeset/tough-radios-punch.md | 5 - .changeset/tough-snails-chew.md | 5 - .changeset/tough-tomatoes-explain.md | 5 - .changeset/tricky-avocados-play.md | 5 - .changeset/tricky-balloons-care.md | 5 - .changeset/tricky-coats-shop.md | 5 - .changeset/tricky-ears-shout.md | 5 - .changeset/tricky-laws-bathe.md | 5 - .changeset/twelve-beans-drive.md | 5 - .changeset/twelve-bears-worry.md | 5 - .changeset/twelve-cows-learn.md | 5 - .changeset/twelve-dragons-join.md | 5 - .changeset/twelve-mayflies-decide.md | 5 - .changeset/twelve-onions-juggle.md | 5 - .changeset/twelve-scissors-kneel.md | 5 - .changeset/twelve-shrimps-run.md | 5 - .changeset/twelve-worms-jog.md | 5 - .changeset/twenty-gifts-develop.md | 5 - .changeset/twenty-toes-attack.md | 5 - .changeset/two-brooms-fail.md | 5 - .changeset/two-candles-move.md | 5 - .changeset/two-cats-approve.md | 5 - .changeset/two-chefs-lie.md | 5 - .changeset/two-dogs-accept.md | 5 - .changeset/two-dragons-yell.md | 5 - .changeset/two-falcons-buy.md | 5 - .changeset/two-keys-watch.md | 5 - .changeset/unlucky-baboons-greet.md | 5 - .changeset/unlucky-boxes-obey.md | 5 - .changeset/unlucky-points-clap.md | 5 - .changeset/unlucky-spies-flow.md | 5 - .changeset/unlucky-steaks-warn.md | 5 - .changeset/unlucky-trees-lick.md | 5 - .changeset/violet-bats-brake.md | 5 - .changeset/violet-buses-cross.md | 5 - .changeset/violet-mails-trade.md | 5 - .changeset/violet-mugs-behave.md | 5 - .changeset/violet-otters-carry.md | 5 - .changeset/violet-pigs-jam.md | 5 - .changeset/warm-cherries-shake.md | 5 - .changeset/warm-cycles-call.md | 5 - .changeset/warm-planets-cry.md | 5 - .changeset/warm-waves-reply.md | 5 - .changeset/weak-drinks-speak.md | 5 - .changeset/weak-frogs-bow.md | 5 - .changeset/weak-terms-destroy.md | 5 - .changeset/wet-bats-exercise.md | 5 - .changeset/wet-donkeys-fry.md | 5 - .changeset/wet-games-fly.md | 5 - .changeset/wet-hats-peel.md | 5 - .changeset/wet-pears-buy.md | 5 - .changeset/wet-pears-remain.md | 5 - .changeset/wet-wombats-repeat.md | 5 - .changeset/wicked-bikes-matter.md | 5 - .changeset/wicked-carrots-explain.md | 5 - .changeset/wicked-clouds-exercise.md | 5 - .changeset/wicked-doors-train.md | 5 - .changeset/wicked-emus-drive.md | 5 - .changeset/wicked-hairs-cheer.md | 5 - .changeset/wicked-wasps-allow.md | 5 - .changeset/wicked-ways-reply.md | 5 - .changeset/wicked-years-drive.md | 5 - .changeset/wild-chairs-build.md | 5 - .changeset/wild-cows-chew.md | 5 - .changeset/wild-foxes-wonder.md | 5 - .changeset/wild-mice-look.md | 5 - .changeset/wild-moose-compare.md | 5 - .changeset/wild-moose-destroy.md | 5 - .changeset/wild-poems-design.md | 5 - .changeset/wild-pumas-count.md | 5 - .changeset/wise-apples-care.md | 5 - .changeset/wise-dancers-hang.md | 5 - .changeset/wise-dodos-tell.md | 5 - .changeset/wise-donkeys-marry.md | 5 - .changeset/wise-jobs-admire.md | 5 - .changeset/wise-kids-wash.md | 5 - .changeset/wise-radios-exercise.md | 5 - .changeset/wise-ties-clap.md | 5 - .changeset/witty-bikes-shave.md | 5 - .changeset/witty-camels-warn.md | 5 - .changeset/witty-frogs-cheat.md | 5 - .changeset/witty-hornets-think.md | 5 - .changeset/witty-phones-retire.md | 5 - .changeset/witty-readers-provide.md | 5 - .changeset/witty-shirts-confess.md | 5 - .changeset/witty-sloths-impress.md | 5 - .changeset/witty-steaks-dream.md | 5 - .changeset/witty-tomatoes-care.md | 5 - .changeset/witty-years-crash.md | 5 - .changeset/yellow-bananas-rhyme.md | 5 - .changeset/yellow-pugs-raise.md | 5 - .changeset/yellow-rockets-sit.md | 5 - .changeset/yellow-taxis-double.md | 5 - .changeset/yellow-trees-juggle.md | 5 - .changeset/young-ads-roll.md | 5 - .changeset/young-ducks-punch.md | 5 - .changeset/young-feet-double.md | 5 - .changeset/young-masks-refuse.md | 5 - .changeset/young-peaches-agree.md | 5 - packages/svelte/CHANGELOG.md | 14 + packages/svelte/package.json | 2 +- 1017 files changed, 15 insertions(+), 6098 deletions(-) delete mode 100644 .changeset/afraid-dogs-matter.md delete mode 100644 .changeset/afraid-geckos-dance.md delete mode 100644 .changeset/afraid-kids-hide.md delete mode 100644 .changeset/afraid-moose-matter.md delete mode 100644 .changeset/afraid-trainers-occur.md delete mode 100644 .changeset/afraid-worms-drum.md delete mode 100644 .changeset/angry-birds-fly.md delete mode 100644 .changeset/angry-books-jam.md delete mode 100644 .changeset/angry-plums-punch.md delete mode 100644 .changeset/angry-wasps-help.md delete mode 100644 .changeset/angry-weeks-design.md delete mode 100644 .changeset/beige-clocks-notice.md delete mode 100644 .changeset/beige-cobras-smoke.md delete mode 100644 .changeset/beige-donkeys-exercise.md delete mode 100644 .changeset/beige-flies-wash.md delete mode 100644 .changeset/beige-gifts-appear.md delete mode 100644 .changeset/beige-lamps-ring.md delete mode 100644 .changeset/beige-mirrors-listen.md delete mode 100644 .changeset/beige-rabbits-shave.md delete mode 100644 .changeset/beige-seas-share.md delete mode 100644 .changeset/big-apes-smell.md delete mode 100644 .changeset/big-cars-serve.md delete mode 100644 .changeset/big-eggs-flash.md delete mode 100644 .changeset/big-eyes-carry.md delete mode 100644 .changeset/big-geese-act.md delete mode 100644 .changeset/big-moons-occur.md delete mode 100644 .changeset/blue-ants-raise.md delete mode 100644 .changeset/blue-lemons-wait.md delete mode 100644 .changeset/blue-rules-juggle.md delete mode 100644 .changeset/blue-timers-film.md delete mode 100644 .changeset/blue-waves-sneeze.md delete mode 100644 .changeset/brave-candles-serve.md delete mode 100644 .changeset/brave-carrots-draw.md delete mode 100644 .changeset/brave-doors-compete.md delete mode 100644 .changeset/brave-gorillas-end.md delete mode 100644 .changeset/brave-gorillas-fold.md delete mode 100644 .changeset/brave-pigs-obey.md delete mode 100644 .changeset/brave-points-sleep.md delete mode 100644 .changeset/brave-rivers-jam.md delete mode 100644 .changeset/brave-shrimps-kiss.md delete mode 100644 .changeset/brave-walls-destroy.md delete mode 100644 .changeset/brave-walls-flow.md delete mode 100644 .changeset/breezy-carrots-flash.md delete mode 100644 .changeset/breezy-rules-beg.md delete mode 100644 .changeset/breezy-waves-camp.md delete mode 100644 .changeset/bright-berries-smell.md delete mode 100644 .changeset/bright-colts-play.md delete mode 100644 .changeset/bright-falcons-float.md delete mode 100644 .changeset/bright-needles-pretend.md delete mode 100644 .changeset/bright-peas-juggle.md delete mode 100644 .changeset/bright-seas-brake.md delete mode 100644 .changeset/bright-snakes-sing.md delete mode 100644 .changeset/brown-geckos-fry.md delete mode 100644 .changeset/brown-houses-obey.md delete mode 100644 .changeset/brown-insects-float.md delete mode 100644 .changeset/brown-months-flow.md delete mode 100644 .changeset/brown-months-fry.md delete mode 100644 .changeset/brown-pens-repeat.md delete mode 100644 .changeset/brown-radios-itch.md delete mode 100644 .changeset/brown-spoons-boil.md delete mode 100644 .changeset/brown-turkeys-tap.md delete mode 100644 .changeset/calm-buses-clap.md delete mode 100644 .changeset/calm-cameras-hide.md delete mode 100644 .changeset/calm-clocks-raise.md delete mode 100644 .changeset/calm-pandas-vanish.md delete mode 100644 .changeset/calm-ravens-sneeze.md delete mode 100644 .changeset/chatty-beans-divide.md delete mode 100644 .changeset/chatty-cups-drop.md delete mode 100644 .changeset/chatty-ghosts-unite.md delete mode 100644 .changeset/chatty-sloths-allow.md delete mode 100644 .changeset/chatty-snails-train.md delete mode 100644 .changeset/chatty-taxis-juggle.md delete mode 100644 .changeset/chilled-ladybugs-invite.md delete mode 100644 .changeset/chilled-pumas-invite.md delete mode 100644 .changeset/chilled-seas-jog.md delete mode 100644 .changeset/chilly-carpets-switch.md delete mode 100644 .changeset/chilly-dolphins-lick.md delete mode 100644 .changeset/chilly-glasses-retire.md delete mode 100644 .changeset/chilly-laws-juggle.md delete mode 100644 .changeset/chilly-pans-raise.md delete mode 100644 .changeset/chilly-rocks-hug.md delete mode 100644 .changeset/chilly-snakes-scream.md delete mode 100644 .changeset/chilly-waves-count.md delete mode 100644 .changeset/clean-cats-wave.md delete mode 100644 .changeset/clean-eels-beg.md delete mode 100644 .changeset/clean-melons-wash.md delete mode 100644 .changeset/clean-shirts-yawn.md delete mode 100644 .changeset/clean-sloths-nail.md delete mode 100644 .changeset/clever-chefs-relate.md delete mode 100644 .changeset/clever-maps-travel.md delete mode 100644 .changeset/clever-rockets-burn.md delete mode 100644 .changeset/clever-sloths-push.md delete mode 100644 .changeset/clever-stingrays-shout.md delete mode 100644 .changeset/clever-toys-laugh.md delete mode 100644 .changeset/cold-beans-tease.md delete mode 100644 .changeset/cold-birds-own.md delete mode 100644 .changeset/cold-cheetahs-judge.md delete mode 100644 .changeset/cold-lamps-accept.md delete mode 100644 .changeset/cold-masks-learn.md delete mode 100644 .changeset/cold-shrimps-hug.md delete mode 100644 .changeset/cold-socks-learn.md delete mode 100644 .changeset/cold-teachers-turn.md delete mode 100644 .changeset/cool-actors-tan.md delete mode 100644 .changeset/cool-ants-leave.md delete mode 100644 .changeset/cool-apes-confess.md delete mode 100644 .changeset/cool-comics-marry.md delete mode 100644 .changeset/cool-jobs-scream.md delete mode 100644 .changeset/cool-peas-lick.md delete mode 100644 .changeset/cool-poems-watch.md delete mode 100644 .changeset/cool-rabbits-tickle.md delete mode 100644 .changeset/cool-roses-trade.md delete mode 100644 .changeset/cool-turtles-travel.md delete mode 100644 .changeset/cool-yaks-run.md delete mode 100644 .changeset/cuddly-pianos-drop.md delete mode 100644 .changeset/cuddly-points-tickle.md delete mode 100644 .changeset/curly-cooks-cheer.md delete mode 100644 .changeset/curly-lizards-dream.md delete mode 100644 .changeset/curvy-buses-laugh.md delete mode 100644 .changeset/curvy-cups-cough.md delete mode 100644 .changeset/curvy-flies-exercise.md delete mode 100644 .changeset/curvy-foxes-wink.md delete mode 100644 .changeset/curvy-papayas-pretend.md delete mode 100644 .changeset/curvy-ties-shout.md delete mode 100644 .changeset/cyan-colts-raise.md delete mode 100644 .changeset/cyan-ducks-teach.md delete mode 100644 .changeset/cyan-flowers-destroy.md delete mode 100644 .changeset/cyan-news-grow.md delete mode 100644 .changeset/cyan-spies-grin.md delete mode 100644 .changeset/cyan-squids-drive.md delete mode 100644 .changeset/cyan-toes-share.md delete mode 100644 .changeset/dirty-bats-punch.md delete mode 100644 .changeset/dirty-donuts-yell.md delete mode 100644 .changeset/dirty-eyes-itch.md delete mode 100644 .changeset/dirty-garlics-design.md delete mode 100644 .changeset/dirty-jars-tap.md delete mode 100644 .changeset/dirty-pens-look.md delete mode 100644 .changeset/dirty-pianos-eat.md delete mode 100644 .changeset/dirty-tips-add.md delete mode 100644 .changeset/dirty-worms-type.md delete mode 100644 .changeset/dry-clocks-grow.md delete mode 100644 .changeset/dry-eggs-play.md delete mode 100644 .changeset/dry-eggs-retire.md delete mode 100644 .changeset/dry-fans-march.md delete mode 100644 .changeset/dry-ghosts-prove.md delete mode 100644 .changeset/dry-hotels-matter.md delete mode 100644 .changeset/dry-parrots-bathe.md delete mode 100644 .changeset/dry-pillows-exist.md delete mode 100644 .changeset/dull-coins-vanish.md delete mode 100644 .changeset/dull-donkeys-smell.md delete mode 100644 .changeset/dull-mangos-wave.md delete mode 100644 .changeset/dull-pens-pay.md delete mode 100644 .changeset/dull-pots-add.md delete mode 100644 .changeset/dull-roses-relate.md delete mode 100644 .changeset/dull-worms-relax.md delete mode 100644 .changeset/early-ads-tie.md delete mode 100644 .changeset/early-months-whisper.md delete mode 100644 .changeset/early-needles-bake.md delete mode 100644 .changeset/early-rockets-join.md delete mode 100644 .changeset/early-taxis-allow.md delete mode 100644 .changeset/eight-carrots-hunt.md delete mode 100644 .changeset/eight-comics-tell.md delete mode 100644 .changeset/eight-cougars-watch.md delete mode 100644 .changeset/eight-hornets-punch.md delete mode 100644 .changeset/eight-jeans-compare.md delete mode 100644 .changeset/eight-pans-worry.md delete mode 100644 .changeset/eight-pianos-raise.md delete mode 100644 .changeset/eight-steaks-shout.md delete mode 100644 .changeset/eight-waves-mate.md delete mode 100644 .changeset/eighty-bikes-camp.md delete mode 100644 .changeset/eighty-bugs-fetch.md delete mode 100644 .changeset/eighty-days-cheat.md delete mode 100644 .changeset/eighty-days-wave.md delete mode 100644 .changeset/eighty-dragons-search.md delete mode 100644 .changeset/eighty-dryers-pretend.md delete mode 100644 .changeset/eighty-hornets-breathe.md delete mode 100644 .changeset/eighty-lizards-notice.md delete mode 100644 .changeset/eighty-mails-develop.md delete mode 100644 .changeset/eleven-avocados-walk.md delete mode 100644 .changeset/eleven-beers-yell.md delete mode 100644 .changeset/eleven-cows-judge.md delete mode 100644 .changeset/eleven-cycles-applaud.md delete mode 100644 .changeset/eleven-donuts-sit.md delete mode 100644 .changeset/eleven-hounds-pump.md delete mode 100644 .changeset/eleven-humans-kneel.md delete mode 100644 .changeset/eleven-icons-sniff.md delete mode 100644 .changeset/eleven-peaches-tap.md delete mode 100644 .changeset/eleven-teachers-drive.md delete mode 100644 .changeset/empty-bags-heal.md delete mode 100644 .changeset/empty-bulldogs-exercise.md delete mode 100644 .changeset/empty-coins-build.md delete mode 100644 .changeset/empty-crabs-think.md delete mode 100644 .changeset/empty-files-prove.md delete mode 100644 .changeset/empty-flowers-change.md delete mode 100644 .changeset/empty-geckos-pretend.md delete mode 100644 .changeset/empty-horses-tell.md delete mode 100644 .changeset/empty-tools-share.md delete mode 100644 .changeset/fair-bags-smoke.md delete mode 100644 .changeset/fair-beers-help.md delete mode 100644 .changeset/fair-crabs-check.md delete mode 100644 .changeset/fair-items-bathe.md delete mode 100644 .changeset/fair-pianos-talk.md delete mode 100644 .changeset/fair-spies-repeat.md delete mode 100644 .changeset/famous-chairs-notice.md delete mode 100644 .changeset/famous-falcons-melt.md delete mode 100644 .changeset/famous-kiwis-thank.md delete mode 100644 .changeset/famous-knives-sneeze.md delete mode 100644 .changeset/famous-mirrors-count.md delete mode 100644 .changeset/famous-pants-pay.md delete mode 100644 .changeset/fast-donkeys-pay.md delete mode 100644 .changeset/fast-penguins-matter.md delete mode 100644 .changeset/fast-toes-act.md delete mode 100644 .changeset/fast-weeks-clean.md delete mode 100644 .changeset/few-badgers-guess.md delete mode 100644 .changeset/few-cheetahs-taste.md delete mode 100644 .changeset/few-clouds-shop.md delete mode 100644 .changeset/few-mugs-fail.md delete mode 100644 .changeset/few-teachers-know.md delete mode 100644 .changeset/few-walls-check.md delete mode 100644 .changeset/few-zoos-own.md delete mode 100644 .changeset/fifty-actors-agree.md delete mode 100644 .changeset/fifty-masks-give.md delete mode 100644 .changeset/fifty-rice-wait.md delete mode 100644 .changeset/fifty-steaks-float.md delete mode 100644 .changeset/fifty-toys-invite.md delete mode 100644 .changeset/five-birds-check.md delete mode 100644 .changeset/five-maps-reflect.md delete mode 100644 .changeset/five-shirts-run.md delete mode 100644 .changeset/five-suns-roll.md delete mode 100644 .changeset/five-tigers-search.md delete mode 100644 .changeset/flat-feet-visit.md delete mode 100644 .changeset/flat-flies-know.md delete mode 100644 .changeset/flat-ghosts-fly.md delete mode 100644 .changeset/flat-melons-protect.md delete mode 100644 .changeset/flat-olives-live.md delete mode 100644 .changeset/fluffy-colts-grin.md delete mode 100644 .changeset/fluffy-dolls-share.md delete mode 100644 .changeset/fluffy-humans-worry.md delete mode 100644 .changeset/fluffy-kings-complain.md delete mode 100644 .changeset/fluffy-ravens-juggle.md delete mode 100644 .changeset/forty-bikes-buy.md delete mode 100644 .changeset/forty-chicken-heal.md delete mode 100644 .changeset/forty-comics-invent.md delete mode 100644 .changeset/forty-dogs-divide.md delete mode 100644 .changeset/forty-dolls-wave.md delete mode 100644 .changeset/forty-peaches-unite.md delete mode 100644 .changeset/forty-suns-smile.md delete mode 100644 .changeset/four-balloons-beam.md delete mode 100644 .changeset/four-flies-hammer.md delete mode 100644 .changeset/four-kids-flow.md delete mode 100644 .changeset/four-mice-hammer.md delete mode 100644 .changeset/four-papayas-turn.md delete mode 100644 .changeset/four-peas-tickle.md delete mode 100644 .changeset/four-pugs-listen.md delete mode 100644 .changeset/four-yaks-boil.md delete mode 100644 .changeset/fresh-beds-wash.md delete mode 100644 .changeset/fresh-dots-destroy.md delete mode 100644 .changeset/fresh-houses-check.md delete mode 100644 .changeset/fresh-impalas-bow.md delete mode 100644 .changeset/fresh-walls-bathe.md delete mode 100644 .changeset/fresh-weeks-trade.md delete mode 100644 .changeset/fresh-wombats-learn.md delete mode 100644 .changeset/fresh-zoos-burn.md delete mode 100644 .changeset/friendly-candles-relate.md delete mode 100644 .changeset/friendly-clouds-rhyme.md delete mode 100644 .changeset/friendly-dryers-jog.md delete mode 100644 .changeset/friendly-lies-camp.md delete mode 100644 .changeset/friendly-rice-confess.md delete mode 100644 .changeset/friendly-taxis-hammer.md delete mode 100644 .changeset/funny-bugs-kiss.md delete mode 100644 .changeset/funny-cooks-clean.md delete mode 100644 .changeset/funny-dragons-double.md delete mode 100644 .changeset/funny-houses-kick.md delete mode 100644 .changeset/funny-ties-jump.md delete mode 100644 .changeset/funny-trees-cry.md delete mode 100644 .changeset/funny-wombats-argue.md delete mode 100644 .changeset/fuzzy-bags-camp.md delete mode 100644 .changeset/fuzzy-donuts-provide.md delete mode 100644 .changeset/fuzzy-tigers-swim.md delete mode 100644 .changeset/gentle-dolls-juggle.md delete mode 100644 .changeset/gentle-eagles-walk.md delete mode 100644 .changeset/gentle-needles-train.md delete mode 100644 .changeset/gentle-sheep-hug.md delete mode 100644 .changeset/gentle-spies-happen.md delete mode 100644 .changeset/gentle-ties-fetch.md delete mode 100644 .changeset/gentle-toys-chew.md delete mode 100644 .changeset/gentle-trees-exercise.md delete mode 100644 .changeset/gentle-wasps-pull.md delete mode 100644 .changeset/giant-bananas-turn.md delete mode 100644 .changeset/giant-jars-applaud.md delete mode 100644 .changeset/giant-ladybugs-thank.md delete mode 100644 .changeset/giant-moons-own.md delete mode 100644 .changeset/giant-planets-shake.md delete mode 100644 .changeset/giant-plants-grin.md delete mode 100644 .changeset/giant-roses-press.md delete mode 100644 .changeset/gold-pens-sell.md delete mode 100644 .changeset/gold-students-jump.md delete mode 100644 .changeset/gold-tools-nail.md delete mode 100644 .changeset/good-buses-reply.md delete mode 100644 .changeset/good-cars-visit.md delete mode 100644 .changeset/good-kings-try.md delete mode 100644 .changeset/good-pianos-jump.md delete mode 100644 .changeset/good-plums-type.md delete mode 100644 .changeset/good-rice-tap.md delete mode 100644 .changeset/good-rivers-yawn.md delete mode 100644 .changeset/good-roses-argue.md delete mode 100644 .changeset/good-vans-bake.md delete mode 100644 .changeset/good-zebras-turn.md delete mode 100644 .changeset/gorgeous-boxes-design.md delete mode 100644 .changeset/gorgeous-coats-jog.md delete mode 100644 .changeset/gorgeous-hats-wonder.md delete mode 100644 .changeset/gorgeous-monkeys-carry.md delete mode 100644 .changeset/gorgeous-pans-sort.md delete mode 100644 .changeset/gorgeous-singers-rest.md delete mode 100644 .changeset/great-dots-wonder.md delete mode 100644 .changeset/great-fans-unite.md delete mode 100644 .changeset/great-icons-retire.md delete mode 100644 .changeset/great-plums-pretend.md delete mode 100644 .changeset/green-baboons-sip.md delete mode 100644 .changeset/green-cameras-bake.md delete mode 100644 .changeset/green-eggs-approve.md delete mode 100644 .changeset/green-fishes-lie.md delete mode 100644 .changeset/green-hounds-play.md delete mode 100644 .changeset/green-snails-tickle.md delete mode 100644 .changeset/green-tigers-judge.md delete mode 100644 .changeset/green-walls-clap.md delete mode 100644 .changeset/green-windows-tap.md delete mode 100644 .changeset/grumpy-avocados-fetch.md delete mode 100644 .changeset/grumpy-insects-sleep.md delete mode 100644 .changeset/grumpy-jars-sparkle.md delete mode 100644 .changeset/happy-beds-scream.md delete mode 100644 .changeset/happy-dogs-jump.md delete mode 100644 .changeset/happy-dolls-joke.md delete mode 100644 .changeset/happy-eggs-rest.md delete mode 100644 .changeset/happy-lobsters-lick.md delete mode 100644 .changeset/happy-moles-live.md delete mode 100644 .changeset/happy-planets-rest.md delete mode 100644 .changeset/happy-suits-film.md delete mode 100644 .changeset/healthy-ants-film.md delete mode 100644 .changeset/healthy-dancers-play.md delete mode 100644 .changeset/healthy-mangos-brush.md delete mode 100644 .changeset/healthy-planes-vanish.md delete mode 100644 .changeset/healthy-poets-float.md delete mode 100644 .changeset/healthy-zebras-accept.md delete mode 100644 .changeset/heavy-cars-ring.md delete mode 100644 .changeset/heavy-comics-move.md delete mode 100644 .changeset/heavy-doors-applaud.md delete mode 100644 .changeset/heavy-ducks-leave.md delete mode 100644 .changeset/heavy-ears-rule.md delete mode 100644 .changeset/heavy-feet-attend.md delete mode 100644 .changeset/heavy-houses-pay.md delete mode 100644 .changeset/hip-balloons-begin.md delete mode 100644 .changeset/hip-garlics-tap.md delete mode 100644 .changeset/hip-goats-smoke.md delete mode 100644 .changeset/hip-jeans-provide.md delete mode 100644 .changeset/hip-months-breathe.md delete mode 100644 .changeset/hip-pumpkins-boil.md delete mode 100644 .changeset/hip-stingrays-teach.md delete mode 100644 .changeset/honest-buses-add.md delete mode 100644 .changeset/honest-dragons-turn.md delete mode 100644 .changeset/honest-icons-change.md delete mode 100644 .changeset/honest-nails-share.md delete mode 100644 .changeset/honest-pans-kick.md delete mode 100644 .changeset/honest-phones-flash.md delete mode 100644 .changeset/hot-cooks-repair.md delete mode 100644 .changeset/hot-glasses-roll.md delete mode 100644 .changeset/hot-grapes-destroy.md delete mode 100644 .changeset/hot-jobs-tap.md delete mode 100644 .changeset/hot-kangaroos-invite.md delete mode 100644 .changeset/hot-peaches-clean.md delete mode 100644 .changeset/hot-rivers-punch.md delete mode 100644 .changeset/hot-sloths-clap.md delete mode 100644 .changeset/hot-tips-appear.md delete mode 100644 .changeset/hungry-boxes-relate.md delete mode 100644 .changeset/hungry-dots-fry.md delete mode 100644 .changeset/hungry-pants-push.md delete mode 100644 .changeset/hungry-singers-share.md delete mode 100644 .changeset/hungry-tips-unite.md delete mode 100644 .changeset/hungry-trees-travel.md delete mode 100644 .changeset/itchy-beans-melt.md delete mode 100644 .changeset/itchy-beds-kneel.md delete mode 100644 .changeset/itchy-bulldogs-tan.md delete mode 100644 .changeset/itchy-eels-marry.md delete mode 100644 .changeset/itchy-kings-deliver.md delete mode 100644 .changeset/itchy-lemons-punch.md delete mode 100644 .changeset/itchy-lions-wash.md delete mode 100644 .changeset/itchy-oranges-behave.md delete mode 100644 .changeset/itchy-panthers-shave.md delete mode 100644 .changeset/itchy-peaches-compare.md delete mode 100644 .changeset/itchy-pianos-marry.md delete mode 100644 .changeset/itchy-terms-guess.md delete mode 100644 .changeset/khaki-camels-punch.md delete mode 100644 .changeset/khaki-cheetahs-refuse.md delete mode 100644 .changeset/khaki-cooks-develop.md delete mode 100644 .changeset/khaki-donkeys-jump.md delete mode 100644 .changeset/khaki-ligers-sing.md delete mode 100644 .changeset/khaki-mails-draw.md delete mode 100644 .changeset/khaki-mails-scream.md delete mode 100644 .changeset/khaki-mirrors-warn.md delete mode 100644 .changeset/khaki-monkeys-cry.md delete mode 100644 .changeset/khaki-moose-arrive.md delete mode 100644 .changeset/khaki-tomatoes-rule.md delete mode 100644 .changeset/kind-baboons-approve.md delete mode 100644 .changeset/kind-deers-lay.md delete mode 100644 .changeset/kind-doors-grin.md delete mode 100644 .changeset/kind-dots-sort.md delete mode 100644 .changeset/kind-eagles-join.md delete mode 100644 .changeset/kind-rings-flash.md delete mode 100644 .changeset/kind-snakes-drive.md delete mode 100644 .changeset/kind-spoons-return.md delete mode 100644 .changeset/large-clouds-carry.md delete mode 100644 .changeset/large-emus-cough.md delete mode 100644 .changeset/large-rules-hang.md delete mode 100644 .changeset/large-turkeys-deny.md delete mode 100644 .changeset/large-waves-join.md delete mode 100644 .changeset/late-bees-vanish.md delete mode 100644 .changeset/late-crabs-lay.md delete mode 100644 .changeset/late-geckos-draw.md delete mode 100644 .changeset/late-grapes-judge.md delete mode 100644 .changeset/late-peaches-mate.md delete mode 100644 .changeset/late-zebras-argue.md delete mode 100644 .changeset/lazy-carrots-buy.md delete mode 100644 .changeset/lazy-knives-happen.md delete mode 100644 .changeset/lazy-masks-sit.md delete mode 100644 .changeset/lazy-months-knock.md delete mode 100644 .changeset/lazy-queens-agree.md delete mode 100644 .changeset/lazy-spiders-think.md delete mode 100644 .changeset/lemon-geese-call.md delete mode 100644 .changeset/lemon-geese-drum.md delete mode 100644 .changeset/lemon-meals-appear.md delete mode 100644 .changeset/lemon-trees-act.md delete mode 100644 .changeset/light-badgers-glow.md delete mode 100644 .changeset/light-crews-deny.md delete mode 100644 .changeset/light-days-clean.md delete mode 100644 .changeset/light-hounds-carry.md delete mode 100644 .changeset/light-humans-hang.md delete mode 100644 .changeset/light-penguins-invent.md delete mode 100644 .changeset/light-pens-watch.md delete mode 100644 .changeset/light-tigers-smoke.md delete mode 100644 .changeset/little-ligers-exist.md delete mode 100644 .changeset/little-pans-jog.md delete mode 100644 .changeset/little-seals-reflect.md delete mode 100644 .changeset/long-buckets-lay.md delete mode 100644 .changeset/long-carrots-sneeze.md delete mode 100644 .changeset/long-coats-fry.md delete mode 100644 .changeset/long-crews-return.md delete mode 100644 .changeset/long-humans-repair.md delete mode 100644 .changeset/long-lobsters-mate.md delete mode 100644 .changeset/loud-cheetahs-flow.md delete mode 100644 .changeset/loud-insects-arrive.md delete mode 100644 .changeset/loud-mugs-smile.md delete mode 100644 .changeset/loud-news-deliver.md delete mode 100644 .changeset/loud-numbers-flow.md delete mode 100644 .changeset/loud-penguins-unite.md delete mode 100644 .changeset/loud-ravens-drop.md delete mode 100644 .changeset/loud-socks-look.md delete mode 100644 .changeset/loud-walls-wave.md delete mode 100644 .changeset/lovely-bugs-sneeze.md delete mode 100644 .changeset/lovely-carpets-lick.md delete mode 100644 .changeset/lovely-houses-own.md delete mode 100644 .changeset/lovely-items-turn.md delete mode 100644 .changeset/lovely-ravens-crash.md delete mode 100644 .changeset/lovely-rules-eat.md delete mode 100644 .changeset/lovely-zebras-own.md delete mode 100644 .changeset/lucky-colts-remember.md delete mode 100644 .changeset/lucky-drinks-push.md delete mode 100644 .changeset/lucky-experts-float.md delete mode 100644 .changeset/lucky-geckos-swim.md delete mode 100644 .changeset/lucky-panthers-chew.md delete mode 100644 .changeset/lucky-schools-hang.md delete mode 100644 .changeset/lucky-teachers-exist.md delete mode 100644 .changeset/lucky-toes-begin.md delete mode 100644 .changeset/many-fishes-warn.md delete mode 100644 .changeset/many-rockets-give.md delete mode 100644 .changeset/many-trees-fix.md delete mode 100644 .changeset/mean-jokes-exist.md delete mode 100644 .changeset/mean-numbers-cry.md delete mode 100644 .changeset/mean-parents-film.md delete mode 100644 .changeset/metal-cameras-jump.md delete mode 100644 .changeset/metal-clouds-raise.md delete mode 100644 .changeset/metal-lobsters-burn.md delete mode 100644 .changeset/metal-pans-trade.md delete mode 100644 .changeset/mighty-cooks-scream.md delete mode 100644 .changeset/mighty-files-hammer.md delete mode 100644 .changeset/mighty-frogs-obey.md delete mode 100644 .changeset/mighty-paws-smash.md delete mode 100644 .changeset/mighty-poets-fix.md delete mode 100644 .changeset/mighty-shoes-nail.md delete mode 100644 .changeset/modern-apricots-promise.md delete mode 100644 .changeset/modern-fishes-double.md delete mode 100644 .changeset/modern-peaches-cheer.md delete mode 100644 .changeset/moody-carrots-lay.md delete mode 100644 .changeset/moody-frogs-exist.md delete mode 100644 .changeset/moody-ghosts-buy.md delete mode 100644 .changeset/moody-houses-argue.md delete mode 100644 .changeset/moody-lions-watch.md delete mode 100644 .changeset/moody-owls-cry.md delete mode 100644 .changeset/moody-pugs-tan.md delete mode 100644 .changeset/moody-sheep-type.md delete mode 100644 .changeset/moody-toys-relax.md delete mode 100644 .changeset/nasty-carrots-develop.md delete mode 100644 .changeset/nasty-eggs-walk.md delete mode 100644 .changeset/nasty-glasses-begin.md delete mode 100644 .changeset/nasty-lions-double.md delete mode 100644 .changeset/nasty-mayflies-smoke.md delete mode 100644 .changeset/nasty-penguins-pump.md delete mode 100644 .changeset/nasty-teachers-end.md delete mode 100644 .changeset/nasty-yaks-peel.md delete mode 100644 .changeset/neat-boats-shake.md delete mode 100644 .changeset/neat-boxes-chew.md delete mode 100644 .changeset/neat-dingos-clap.md delete mode 100644 .changeset/neat-ducks-jam.md delete mode 100644 .changeset/neat-files-rescue.md delete mode 100644 .changeset/neat-jokes-beam.md delete mode 100644 .changeset/neat-rabbits-divide.md delete mode 100644 .changeset/neat-ways-allow.md delete mode 100644 .changeset/nervous-adults-sell.md delete mode 100644 .changeset/nervous-berries-boil.md delete mode 100644 .changeset/nervous-chefs-exist.md delete mode 100644 .changeset/nervous-dolphins-allow.md delete mode 100644 .changeset/nervous-ducks-repeat.md delete mode 100644 .changeset/nervous-spoons-relax.md delete mode 100644 .changeset/nervous-squids-drop.md delete mode 100644 .changeset/nervous-turkeys-end.md delete mode 100644 .changeset/new-baboons-fetch.md delete mode 100644 .changeset/new-boats-wait.md delete mode 100644 .changeset/new-brooms-grin.md delete mode 100644 .changeset/new-cooks-roll.md delete mode 100644 .changeset/new-rabbits-flow.md delete mode 100644 .changeset/nice-avocados-move.md delete mode 100644 .changeset/nice-bottles-greet.md delete mode 100644 .changeset/nice-brooms-battle.md delete mode 100644 .changeset/nice-jobs-breathe.md delete mode 100644 .changeset/nine-ants-invite.md delete mode 100644 .changeset/nine-cooks-join.md delete mode 100644 .changeset/nine-kids-whisper.md delete mode 100644 .changeset/nine-vans-admire.md delete mode 100644 .changeset/ninety-days-visit.md delete mode 100644 .changeset/ninety-dingos-walk.md delete mode 100644 .changeset/ninety-dots-train.md delete mode 100644 .changeset/ninety-months-laugh.md delete mode 100644 .changeset/ninety-rockets-battle.md delete mode 100644 .changeset/odd-buckets-lie.md delete mode 100644 .changeset/odd-needles-joke.md delete mode 100644 .changeset/odd-schools-wait.md delete mode 100644 .changeset/odd-shirts-hear.md delete mode 100644 .changeset/odd-shoes-cheat.md delete mode 100644 .changeset/odd-taxis-retire.md delete mode 100644 .changeset/odd-toys-glow.md delete mode 100644 .changeset/old-flies-jog.md delete mode 100644 .changeset/old-houses-drum.md delete mode 100644 .changeset/old-jokes-deliver.md delete mode 100644 .changeset/old-mails-sneeze.md delete mode 100644 .changeset/old-oranges-compete.md delete mode 100644 .changeset/old-planets-bow.md delete mode 100644 .changeset/old-planets-kiss.md delete mode 100644 .changeset/old-spoons-pull.md delete mode 100644 .changeset/olive-apples-lick.md delete mode 100644 .changeset/olive-cobras-wonder.md delete mode 100644 .changeset/olive-forks-grin.md delete mode 100644 .changeset/olive-kangaroos-brake.md delete mode 100644 .changeset/olive-llamas-warn.md delete mode 100644 .changeset/olive-mice-fix.md delete mode 100644 .changeset/olive-moons-act.md delete mode 100644 .changeset/olive-seals-sell.md delete mode 100644 .changeset/olive-shirts-complain.md delete mode 100644 .changeset/olive-socks-kick.md delete mode 100644 .changeset/orange-comics-prove.md delete mode 100644 .changeset/orange-crews-rescue.md delete mode 100644 .changeset/orange-dingos-poke.md delete mode 100644 .changeset/orange-laws-drop.md delete mode 100644 .changeset/orange-masks-exercise.md delete mode 100644 .changeset/orange-sheep-exist.md delete mode 100644 .changeset/orange-yaks-protect.md delete mode 100644 .changeset/orange-zoos-heal.md delete mode 100644 .changeset/perfect-actors-bake.md delete mode 100644 .changeset/perfect-ants-allow.md delete mode 100644 .changeset/perfect-avocados-greet.md delete mode 100644 .changeset/perfect-cooks-shop.md delete mode 100644 .changeset/perfect-hairs-matter.md delete mode 100644 .changeset/perfect-hats-dance.md delete mode 100644 .changeset/perfect-pugs-shake.md delete mode 100644 .changeset/pink-bikes-agree.md delete mode 100644 .changeset/pink-countries-repair.md delete mode 100644 .changeset/pink-goats-promise.md delete mode 100644 .changeset/pink-mayflies-tie.md delete mode 100644 .changeset/pink-shirts-film.md delete mode 100644 .changeset/plenty-clouds-reply.md delete mode 100644 .changeset/plenty-elephants-fry.md delete mode 100644 .changeset/plenty-items-build.md delete mode 100644 .changeset/plenty-rings-stare.md delete mode 100644 .changeset/plenty-starfishes-dress.md delete mode 100644 .changeset/plenty-turkeys-raise.md delete mode 100644 .changeset/plenty-zoos-fix.md delete mode 100644 .changeset/polite-dolphins-care.md delete mode 100644 .changeset/polite-peas-mate.md delete mode 100644 .changeset/polite-pugs-attend.md delete mode 100644 .changeset/polite-pumpkins-guess.md delete mode 100644 .changeset/polite-ravens-study.md delete mode 100644 .changeset/polite-tomatoes-trade.md delete mode 100644 .changeset/polite-ways-serve.md delete mode 100644 .changeset/poor-eggs-enjoy.md delete mode 100644 .changeset/poor-hats-design.md delete mode 100644 .changeset/poor-mugs-pay.md delete mode 100644 .changeset/poor-seahorses-flash.md delete mode 100644 .changeset/poor-shrimps-explain.md delete mode 100644 .changeset/popular-apes-bathe.md delete mode 100644 .changeset/popular-cameras-tie.md delete mode 100644 .changeset/popular-cups-bathe.md delete mode 100644 .changeset/popular-dolphins-shake.md delete mode 100644 .changeset/popular-feet-rule.md delete mode 100644 .changeset/popular-games-hug.md delete mode 100644 .changeset/popular-ligers-perform.md delete mode 100644 .changeset/popular-mangos-rest.md delete mode 100644 .changeset/popular-news-happen.md delete mode 100644 .changeset/popular-roses-teach.md delete mode 100644 .changeset/popular-walls-hunt.md delete mode 100644 .changeset/pre.json delete mode 100644 .changeset/pretty-ties-help.md delete mode 100644 .changeset/proud-lobsters-lie.md delete mode 100644 .changeset/proud-pets-hang.md delete mode 100644 .changeset/proud-queens-sniff.md delete mode 100644 .changeset/purple-dragons-peel.md delete mode 100644 .changeset/quick-eagles-sit.md delete mode 100644 .changeset/quick-paws-wash.md delete mode 100644 .changeset/quick-pumpkins-study.md delete mode 100644 .changeset/quiet-apricots-dream.md delete mode 100644 .changeset/quiet-berries-end.md delete mode 100644 .changeset/quiet-berries-explode.md delete mode 100644 .changeset/quiet-camels-mate.md delete mode 100644 .changeset/quiet-cobras-smile.md delete mode 100644 .changeset/quiet-crabs-nail.md delete mode 100644 .changeset/quiet-timers-speak.md delete mode 100644 .changeset/rare-ears-agree.md delete mode 100644 .changeset/rare-insects-tell.md delete mode 100644 .changeset/rare-mirrors-act.md delete mode 100644 .changeset/rare-pears-whisper.md delete mode 100644 .changeset/rare-worms-hunt.md delete mode 100644 .changeset/real-camels-pay.md delete mode 100644 .changeset/real-guests-do.md delete mode 100644 .changeset/real-items-suffer.md delete mode 100644 .changeset/real-pandas-brush.md delete mode 100644 .changeset/real-timers-complain.md delete mode 100644 .changeset/red-cycles-pretend.md delete mode 100644 .changeset/red-doors-own.md delete mode 100644 .changeset/red-feet-worry.md delete mode 100644 .changeset/red-kings-draw.md delete mode 100644 .changeset/red-ladybugs-turn.md delete mode 100644 .changeset/red-maps-nail.md delete mode 100644 .changeset/red-poets-study.md delete mode 100644 .changeset/red-pots-pretend.md delete mode 100644 .changeset/rich-cobras-exist.md delete mode 100644 .changeset/rich-elephants-relax.md delete mode 100644 .changeset/rich-garlics-laugh.md delete mode 100644 .changeset/rich-ladybugs-admire.md delete mode 100644 .changeset/rich-olives-yell.md delete mode 100644 .changeset/rich-plums-thank.md delete mode 100644 .changeset/rich-sheep-burn.md delete mode 100644 .changeset/rich-tables-sing.md delete mode 100644 .changeset/rich-taxis-hear.md delete mode 100644 .changeset/rich-waves-mix.md delete mode 100644 .changeset/rotten-actors-rush.md delete mode 100644 .changeset/rotten-bags-type.md delete mode 100644 .changeset/rotten-buckets-develop.md delete mode 100644 .changeset/rotten-experts-relax.md delete mode 100644 .changeset/rotten-poems-applaud.md delete mode 100644 .changeset/rotten-rules-invite.md delete mode 100644 .changeset/rude-ghosts-tickle.md delete mode 100644 .changeset/selfish-dragons-knock.md delete mode 100644 .changeset/selfish-panthers-add.md delete mode 100644 .changeset/selfish-socks-smile.md delete mode 100644 .changeset/selfish-spies-help.md delete mode 100644 .changeset/selfish-tools-hide.md delete mode 100644 .changeset/selfish-trainers-kiss.md delete mode 100644 .changeset/serious-bobcats-carry.md delete mode 100644 .changeset/serious-crabs-punch.md delete mode 100644 .changeset/serious-goats-tap.md delete mode 100644 .changeset/serious-gorillas-eat.md delete mode 100644 .changeset/serious-kids-deliver.md delete mode 100644 .changeset/serious-needles-joke.md delete mode 100644 .changeset/serious-owls-think.md delete mode 100644 .changeset/serious-poems-brake.md delete mode 100644 .changeset/serious-socks-cover.md delete mode 100644 .changeset/serious-zebras-scream.md delete mode 100644 .changeset/seven-bees-tell.md delete mode 100644 .changeset/seven-dancers-brush.md delete mode 100644 .changeset/seven-deers-jam.md delete mode 100644 .changeset/seven-garlics-serve.md delete mode 100644 .changeset/seven-hornets-smile.md delete mode 100644 .changeset/seven-jobs-sniff.md delete mode 100644 .changeset/seven-masks-end.md delete mode 100644 .changeset/seven-news-live.md delete mode 100644 .changeset/seven-ravens-check.md delete mode 100644 .changeset/seven-wombats-retire.md delete mode 100644 .changeset/shaggy-cameras-live.md delete mode 100644 .changeset/shaggy-comics-jog.md delete mode 100644 .changeset/sharp-fishes-serve.md delete mode 100644 .changeset/sharp-foxes-whisper.md delete mode 100644 .changeset/sharp-gorillas-impress.md delete mode 100644 .changeset/sharp-kids-happen.md delete mode 100644 .changeset/sharp-spies-live.md delete mode 100644 .changeset/sharp-tomatoes-learn.md delete mode 100644 .changeset/shiny-baboons-play.md delete mode 100644 .changeset/shiny-jobs-judge.md delete mode 100644 .changeset/shiny-kangaroos-move.md delete mode 100644 .changeset/shiny-mayflies-clean.md delete mode 100644 .changeset/shiny-melons-love.md delete mode 100644 .changeset/shiny-months-tease.md delete mode 100644 .changeset/shiny-pillows-relax.md delete mode 100644 .changeset/shiny-rats-heal.md delete mode 100644 .changeset/shiny-shrimps-march.md delete mode 100644 .changeset/shiny-starfishes-cross.md delete mode 100644 .changeset/shiny-wombats-argue.md delete mode 100644 .changeset/short-buses-camp.md delete mode 100644 .changeset/short-countries-rush.md delete mode 100644 .changeset/short-starfishes-beg.md delete mode 100644 .changeset/shy-fishes-drive.md delete mode 100644 .changeset/shy-scissors-smile.md delete mode 100644 .changeset/silent-apes-report.md delete mode 100644 .changeset/silent-elephants-film.md delete mode 100644 .changeset/silent-hats-stare.md delete mode 100644 .changeset/silent-rabbits-join.md delete mode 100644 .changeset/silent-rocks-yell.md delete mode 100644 .changeset/silly-ducks-mix.md delete mode 100644 .changeset/silly-fishes-deny.md delete mode 100644 .changeset/silly-houses-promise.md delete mode 100644 .changeset/silly-laws-happen.md delete mode 100644 .changeset/silly-lies-film.md delete mode 100644 .changeset/silly-masks-exist.md delete mode 100644 .changeset/silly-ways-wash.md delete mode 100644 .changeset/silver-beans-hear.md delete mode 100644 .changeset/silver-mice-double.md delete mode 100644 .changeset/silver-points-approve.md delete mode 100644 .changeset/silver-sheep-knock.md delete mode 100644 .changeset/six-apes-peel.md delete mode 100644 .changeset/six-beans-laugh.md delete mode 100644 .changeset/six-bears-trade.md delete mode 100644 .changeset/six-boats-shave.md delete mode 100644 .changeset/six-chicken-kneel.md delete mode 100644 .changeset/six-gorillas-obey.md delete mode 100644 .changeset/six-moons-invent.md delete mode 100644 .changeset/six-vans-add.md delete mode 100644 .changeset/sixty-items-crash.md delete mode 100644 .changeset/sixty-numbers-hope.md delete mode 100644 .changeset/sixty-pandas-rush.md delete mode 100644 .changeset/sixty-plants-cover.md delete mode 100644 .changeset/sleepy-cats-eat.md delete mode 100644 .changeset/sleepy-dogs-sit.md delete mode 100644 .changeset/slimy-clouds-talk.md delete mode 100644 .changeset/slimy-garlics-beg.md delete mode 100644 .changeset/slimy-hairs-impress.md delete mode 100644 .changeset/slimy-laws-explode.md delete mode 100644 .changeset/slimy-news-help.md delete mode 100644 .changeset/slimy-onions-approve.md delete mode 100644 .changeset/slimy-walls-draw.md delete mode 100644 .changeset/slow-badgers-invite.md delete mode 100644 .changeset/slow-beds-shave.md delete mode 100644 .changeset/slow-chefs-dream.md delete mode 100644 .changeset/slow-gorillas-yawn.md delete mode 100644 .changeset/slow-kids-sparkle.md delete mode 100644 .changeset/slow-ligers-enjoy.md delete mode 100644 .changeset/slow-plums-chew.md delete mode 100644 .changeset/slow-wombats-reply.md delete mode 100644 .changeset/small-apples-eat.md delete mode 100644 .changeset/small-chefs-sing.md delete mode 100644 .changeset/small-owls-remain.md delete mode 100644 .changeset/small-papayas-laugh.md delete mode 100644 .changeset/small-planets-destroy.md delete mode 100644 .changeset/small-sheep-type.md delete mode 100644 .changeset/small-spiders-fail.md delete mode 100644 .changeset/small-suns-lie.md delete mode 100644 .changeset/smart-cars-know.md delete mode 100644 .changeset/smart-cherries-leave.md delete mode 100644 .changeset/smart-fans-crash.md delete mode 100644 .changeset/smart-grapes-mate.md delete mode 100644 .changeset/smart-parents-swim.md delete mode 100644 .changeset/smart-poets-care.md delete mode 100644 .changeset/smart-spiders-fetch.md delete mode 100644 .changeset/smart-turkeys-tell.md delete mode 100644 .changeset/smart-zebras-pay.md delete mode 100644 .changeset/smart-zoos-vanish.md delete mode 100644 .changeset/smooth-apes-shave.md delete mode 100644 .changeset/smooth-kids-protect.md delete mode 100644 .changeset/smooth-pens-exist.md delete mode 100644 .changeset/smooth-pens-protect.md delete mode 100644 .changeset/smooth-rings-rush.md delete mode 100644 .changeset/smooth-windows-explain.md delete mode 100644 .changeset/soft-clocks-remember.md delete mode 100644 .changeset/soft-geese-learn.md delete mode 100644 .changeset/soft-months-grab.md delete mode 100644 .changeset/soft-stingrays-attend.md delete mode 100644 .changeset/soft-tigers-wink.md delete mode 100644 .changeset/sour-bags-fail.md delete mode 100644 .changeset/sour-forks-stare.md delete mode 100644 .changeset/sour-geese-listen.md delete mode 100644 .changeset/sour-jeans-collect.md delete mode 100644 .changeset/sour-poems-trade.md delete mode 100644 .changeset/sour-rules-march.md delete mode 100644 .changeset/sour-tomatoes-knock.md delete mode 100644 .changeset/sour-weeks-fix.md delete mode 100644 .changeset/spicy-jeans-deliver.md delete mode 100644 .changeset/spicy-peas-vanish.md delete mode 100644 .changeset/spicy-plums-admire.md delete mode 100644 .changeset/spotty-crabs-give.md delete mode 100644 .changeset/spotty-houses-search.md delete mode 100644 .changeset/spotty-kings-hug.md delete mode 100644 .changeset/spotty-pens-agree.md delete mode 100644 .changeset/spotty-rocks-destroy.md delete mode 100644 .changeset/spotty-shrimps-hug.md delete mode 100644 .changeset/spotty-spiders-compare.md delete mode 100644 .changeset/spotty-trees-provide.md delete mode 100644 .changeset/spotty-turkeys-sparkle.md delete mode 100644 .changeset/stale-books-perform.md delete mode 100644 .changeset/stale-comics-look.md delete mode 100644 .changeset/stale-fans-rest.md delete mode 100644 .changeset/stale-jeans-refuse.md delete mode 100644 .changeset/stale-nails-listen.md delete mode 100644 .changeset/stale-rats-check.md delete mode 100644 .changeset/strange-apricots-happen.md delete mode 100644 .changeset/strange-pears-perform.md delete mode 100644 .changeset/strange-pillows-greet.md delete mode 100644 .changeset/strange-roses-brake.md delete mode 100644 .changeset/strange-trains-destroy.md delete mode 100644 .changeset/strong-apricots-destroy.md delete mode 100644 .changeset/strong-gifts-smoke.md delete mode 100644 .changeset/strong-lemons-provide.md delete mode 100644 .changeset/strong-pans-doubt.md delete mode 100644 .changeset/stupid-bottles-lay.md delete mode 100644 .changeset/stupid-cars-behave.md delete mode 100644 .changeset/stupid-dodos-hide.md delete mode 100644 .changeset/stupid-parents-crash.md delete mode 100644 .changeset/stupid-rivers-stare.md delete mode 100644 .changeset/sweet-bottles-check.md delete mode 100644 .changeset/sweet-mangos-beg.md delete mode 100644 .changeset/sweet-pens-sniff.md delete mode 100644 .changeset/swift-donkeys-perform.md delete mode 100644 .changeset/swift-fans-stare.md delete mode 100644 .changeset/swift-feet-juggle.md delete mode 100644 .changeset/swift-knives-tie.md delete mode 100644 .changeset/swift-poets-carry.md delete mode 100644 .changeset/swift-queens-begin.md delete mode 100644 .changeset/swift-rats-sing.md delete mode 100644 .changeset/swift-ravens-hunt.md delete mode 100644 .changeset/swift-seahorses-deliver.md delete mode 100644 .changeset/tall-books-grin.md delete mode 100644 .changeset/tall-dragons-switch.md delete mode 100644 .changeset/tall-garlics-try.md delete mode 100644 .changeset/tall-mugs-buy.md delete mode 100644 .changeset/tall-shrimps-worry.md delete mode 100644 .changeset/tall-tigers-wait.md delete mode 100644 .changeset/tame-cycles-kneel.md delete mode 100644 .changeset/tame-dodos-float.md delete mode 100644 .changeset/tame-dots-battle.md delete mode 100644 .changeset/tame-frogs-shave.md delete mode 100644 .changeset/tame-goats-bow.md delete mode 100644 .changeset/tame-spies-drum.md delete mode 100644 .changeset/tasty-cheetahs-appear.md delete mode 100644 .changeset/tasty-mice-admire.md delete mode 100644 .changeset/tasty-numbers-perform.md delete mode 100644 .changeset/tasty-spies-sniff.md delete mode 100644 .changeset/tasty-steaks-smile.md delete mode 100644 .changeset/ten-eels-move.md delete mode 100644 .changeset/ten-foxes-repeat.md delete mode 100644 .changeset/ten-geese-share.md delete mode 100644 .changeset/ten-jokes-divide.md delete mode 100644 .changeset/ten-laws-grow.md delete mode 100644 .changeset/ten-peaches-sleep.md delete mode 100644 .changeset/ten-singers-cough.md delete mode 100644 .changeset/ten-singers-repair.md delete mode 100644 .changeset/ten-teachers-travel.md delete mode 100644 .changeset/ten-ties-repair.md delete mode 100644 .changeset/ten-trainers-juggle.md delete mode 100644 .changeset/ten-vans-divide.md delete mode 100644 .changeset/ten-worms-reflect.md delete mode 100644 .changeset/tender-bats-switch.md delete mode 100644 .changeset/tender-lemons-judge.md delete mode 100644 .changeset/tender-rocks-walk.md delete mode 100644 .changeset/tender-suns-love.md delete mode 100644 .changeset/thick-cycles-rule.md delete mode 100644 .changeset/thick-pans-tell.md delete mode 100644 .changeset/thick-shirts-deliver.md delete mode 100644 .changeset/thick-swans-type.md delete mode 100644 .changeset/thin-colts-yawn.md delete mode 100644 .changeset/thin-foxes-lick.md delete mode 100644 .changeset/thin-papayas-tap.md delete mode 100644 .changeset/thin-spoons-float.md delete mode 100644 .changeset/thin-years-rhyme.md delete mode 100644 .changeset/thirty-dogs-whisper.md delete mode 100644 .changeset/thirty-flies-push.md delete mode 100644 .changeset/thirty-flowers-sit.md delete mode 100644 .changeset/thirty-ghosts-fix.md delete mode 100644 .changeset/thirty-guests-flow.md delete mode 100644 .changeset/thirty-impalas-repair.md delete mode 100644 .changeset/thirty-pears-hug.md delete mode 100644 .changeset/thirty-wombats-relax.md delete mode 100644 .changeset/three-buses-sleep.md delete mode 100644 .changeset/three-camels-sell.md delete mode 100644 .changeset/three-donkeys-jump.md delete mode 100644 .changeset/three-foxes-relax.md delete mode 100644 .changeset/three-icons-trade.md delete mode 100644 .changeset/three-lions-visit.md delete mode 100644 .changeset/three-papayas-buy.md delete mode 100644 .changeset/three-rice-tie.md delete mode 100644 .changeset/three-suits-grin.md delete mode 100644 .changeset/tidy-buses-whisper.md delete mode 100644 .changeset/tidy-chefs-taste.md delete mode 100644 .changeset/tidy-deers-hope.md delete mode 100644 .changeset/tidy-fans-relax.md delete mode 100644 .changeset/tidy-lizards-happen.md delete mode 100644 .changeset/tidy-starfishes-allow.md delete mode 100644 .changeset/tiny-ads-press.md delete mode 100644 .changeset/tiny-kings-whisper.md delete mode 100644 .changeset/tiny-meals-deliver.md delete mode 100644 .changeset/tiny-moose-kiss.md delete mode 100644 .changeset/tiny-taxis-whisper.md delete mode 100644 .changeset/tough-buckets-thank.md delete mode 100644 .changeset/tough-pans-boil.md delete mode 100644 .changeset/tough-radios-punch.md delete mode 100644 .changeset/tough-snails-chew.md delete mode 100644 .changeset/tough-tomatoes-explain.md delete mode 100644 .changeset/tricky-avocados-play.md delete mode 100644 .changeset/tricky-balloons-care.md delete mode 100644 .changeset/tricky-coats-shop.md delete mode 100644 .changeset/tricky-ears-shout.md delete mode 100644 .changeset/tricky-laws-bathe.md delete mode 100644 .changeset/twelve-beans-drive.md delete mode 100644 .changeset/twelve-bears-worry.md delete mode 100644 .changeset/twelve-cows-learn.md delete mode 100644 .changeset/twelve-dragons-join.md delete mode 100644 .changeset/twelve-mayflies-decide.md delete mode 100644 .changeset/twelve-onions-juggle.md delete mode 100644 .changeset/twelve-scissors-kneel.md delete mode 100644 .changeset/twelve-shrimps-run.md delete mode 100644 .changeset/twelve-worms-jog.md delete mode 100644 .changeset/twenty-gifts-develop.md delete mode 100644 .changeset/twenty-toes-attack.md delete mode 100644 .changeset/two-brooms-fail.md delete mode 100644 .changeset/two-candles-move.md delete mode 100644 .changeset/two-cats-approve.md delete mode 100644 .changeset/two-chefs-lie.md delete mode 100644 .changeset/two-dogs-accept.md delete mode 100644 .changeset/two-dragons-yell.md delete mode 100644 .changeset/two-falcons-buy.md delete mode 100644 .changeset/two-keys-watch.md delete mode 100644 .changeset/unlucky-baboons-greet.md delete mode 100644 .changeset/unlucky-boxes-obey.md delete mode 100644 .changeset/unlucky-points-clap.md delete mode 100644 .changeset/unlucky-spies-flow.md delete mode 100644 .changeset/unlucky-steaks-warn.md delete mode 100644 .changeset/unlucky-trees-lick.md delete mode 100644 .changeset/violet-bats-brake.md delete mode 100644 .changeset/violet-buses-cross.md delete mode 100644 .changeset/violet-mails-trade.md delete mode 100644 .changeset/violet-mugs-behave.md delete mode 100644 .changeset/violet-otters-carry.md delete mode 100644 .changeset/violet-pigs-jam.md delete mode 100644 .changeset/warm-cherries-shake.md delete mode 100644 .changeset/warm-cycles-call.md delete mode 100644 .changeset/warm-planets-cry.md delete mode 100644 .changeset/warm-waves-reply.md delete mode 100644 .changeset/weak-drinks-speak.md delete mode 100644 .changeset/weak-frogs-bow.md delete mode 100644 .changeset/weak-terms-destroy.md delete mode 100644 .changeset/wet-bats-exercise.md delete mode 100644 .changeset/wet-donkeys-fry.md delete mode 100644 .changeset/wet-games-fly.md delete mode 100644 .changeset/wet-hats-peel.md delete mode 100644 .changeset/wet-pears-buy.md delete mode 100644 .changeset/wet-pears-remain.md delete mode 100644 .changeset/wet-wombats-repeat.md delete mode 100644 .changeset/wicked-bikes-matter.md delete mode 100644 .changeset/wicked-carrots-explain.md delete mode 100644 .changeset/wicked-clouds-exercise.md delete mode 100644 .changeset/wicked-doors-train.md delete mode 100644 .changeset/wicked-emus-drive.md delete mode 100644 .changeset/wicked-hairs-cheer.md delete mode 100644 .changeset/wicked-wasps-allow.md delete mode 100644 .changeset/wicked-ways-reply.md delete mode 100644 .changeset/wicked-years-drive.md delete mode 100644 .changeset/wild-chairs-build.md delete mode 100644 .changeset/wild-cows-chew.md delete mode 100644 .changeset/wild-foxes-wonder.md delete mode 100644 .changeset/wild-mice-look.md delete mode 100644 .changeset/wild-moose-compare.md delete mode 100644 .changeset/wild-moose-destroy.md delete mode 100644 .changeset/wild-poems-design.md delete mode 100644 .changeset/wild-pumas-count.md delete mode 100644 .changeset/wise-apples-care.md delete mode 100644 .changeset/wise-dancers-hang.md delete mode 100644 .changeset/wise-dodos-tell.md delete mode 100644 .changeset/wise-donkeys-marry.md delete mode 100644 .changeset/wise-jobs-admire.md delete mode 100644 .changeset/wise-kids-wash.md delete mode 100644 .changeset/wise-radios-exercise.md delete mode 100644 .changeset/wise-ties-clap.md delete mode 100644 .changeset/witty-bikes-shave.md delete mode 100644 .changeset/witty-camels-warn.md delete mode 100644 .changeset/witty-frogs-cheat.md delete mode 100644 .changeset/witty-hornets-think.md delete mode 100644 .changeset/witty-phones-retire.md delete mode 100644 .changeset/witty-readers-provide.md delete mode 100644 .changeset/witty-shirts-confess.md delete mode 100644 .changeset/witty-sloths-impress.md delete mode 100644 .changeset/witty-steaks-dream.md delete mode 100644 .changeset/witty-tomatoes-care.md delete mode 100644 .changeset/witty-years-crash.md delete mode 100644 .changeset/yellow-bananas-rhyme.md delete mode 100644 .changeset/yellow-pugs-raise.md delete mode 100644 .changeset/yellow-rockets-sit.md delete mode 100644 .changeset/yellow-taxis-double.md delete mode 100644 .changeset/yellow-trees-juggle.md delete mode 100644 .changeset/young-ads-roll.md delete mode 100644 .changeset/young-ducks-punch.md delete mode 100644 .changeset/young-feet-double.md delete mode 100644 .changeset/young-masks-refuse.md delete mode 100644 .changeset/young-peaches-agree.md diff --git a/.changeset/afraid-dogs-matter.md b/.changeset/afraid-dogs-matter.md deleted file mode 100644 index fcd33b9e39..0000000000 --- a/.changeset/afraid-dogs-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: align `beforeUpdate`/`afterUpdate` behavior better with that in Svelte 4 diff --git a/.changeset/afraid-geckos-dance.md b/.changeset/afraid-geckos-dance.md deleted file mode 100644 index 944f321cc9..0000000000 --- a/.changeset/afraid-geckos-dance.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add `anchor` support to mount() API diff --git a/.changeset/afraid-kids-hide.md b/.changeset/afraid-kids-hide.md deleted file mode 100644 index 890ea86af2..0000000000 --- a/.changeset/afraid-kids-hide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: throw error when auto-subscribed store variable shadow by local variable diff --git a/.changeset/afraid-moose-matter.md b/.changeset/afraid-moose-matter.md deleted file mode 100644 index d6be9c8546..0000000000 --- a/.changeset/afraid-moose-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: tweak script/style tag parsing/preprocessing logic diff --git a/.changeset/afraid-trainers-occur.md b/.changeset/afraid-trainers-occur.md deleted file mode 100644 index 144bbdf7c9..0000000000 --- a/.changeset/afraid-trainers-occur.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure use directives execute in the correct sequence diff --git a/.changeset/afraid-worms-drum.md b/.changeset/afraid-worms-drum.md deleted file mode 100644 index ecbcd3b5b8..0000000000 --- a/.changeset/afraid-worms-drum.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: address derived memory leak on disconnection from reactive graph diff --git a/.changeset/angry-birds-fly.md b/.changeset/angry-birds-fly.md deleted file mode 100644 index 084656cb23..0000000000 --- a/.changeset/angry-birds-fly.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: reflect SvelteURLSearchParams changes to SvelteURL diff --git a/.changeset/angry-books-jam.md b/.changeset/angry-books-jam.md deleted file mode 100644 index 6552a54e31..0000000000 --- a/.changeset/angry-books-jam.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve nested effect heuristics diff --git a/.changeset/angry-plums-punch.md b/.changeset/angry-plums-punch.md deleted file mode 100644 index 22af9d313b..0000000000 --- a/.changeset/angry-plums-punch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: improve should_proxy_or_freeze logic internally diff --git a/.changeset/angry-wasps-help.md b/.changeset/angry-wasps-help.md deleted file mode 100644 index 0310b4a4ab..0000000000 --- a/.changeset/angry-wasps-help.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: remove `handle_compile_error` diff --git a/.changeset/angry-weeks-design.md b/.changeset/angry-weeks-design.md deleted file mode 100644 index 897f2e2192..0000000000 --- a/.changeset/angry-weeks-design.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure reactive graph is fully traversed in the marking phase for non-runes mode diff --git a/.changeset/beige-clocks-notice.md b/.changeset/beige-clocks-notice.md deleted file mode 100644 index be133078d4..0000000000 --- a/.changeset/beige-clocks-notice.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: only set attribute as property if element has setter diff --git a/.changeset/beige-cobras-smoke.md b/.changeset/beige-cobras-smoke.md deleted file mode 100644 index c3ec1ac04a..0000000000 --- a/.changeset/beige-cobras-smoke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: add support for webkitdirectory DOM boolean attribute diff --git a/.changeset/beige-donkeys-exercise.md b/.changeset/beige-donkeys-exercise.md deleted file mode 100644 index d0137b3615..0000000000 --- a/.changeset/beige-donkeys-exercise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure source and filename are known to compileModule's source map diff --git a/.changeset/beige-flies-wash.md b/.changeset/beige-flies-wash.md deleted file mode 100644 index 2ccce23dfe..0000000000 --- a/.changeset/beige-flies-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add unstate utility function diff --git a/.changeset/beige-gifts-appear.md b/.changeset/beige-gifts-appear.md deleted file mode 100644 index 8dfd043c64..0000000000 --- a/.changeset/beige-gifts-appear.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: simpler effect DOM boundaries diff --git a/.changeset/beige-lamps-ring.md b/.changeset/beige-lamps-ring.md deleted file mode 100644 index f647921060..0000000000 --- a/.changeset/beige-lamps-ring.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: always return true from `deleteProperty` trap diff --git a/.changeset/beige-mirrors-listen.md b/.changeset/beige-mirrors-listen.md deleted file mode 100644 index 8962681490..0000000000 --- a/.changeset/beige-mirrors-listen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly scope CSS selectors with descendant combinators diff --git a/.changeset/beige-rabbits-shave.md b/.changeset/beige-rabbits-shave.md deleted file mode 100644 index b63c13d06c..0000000000 --- a/.changeset/beige-rabbits-shave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve props aliasing diff --git a/.changeset/beige-seas-share.md b/.changeset/beige-seas-share.md deleted file mode 100644 index 3758385c55..0000000000 --- a/.changeset/beige-seas-share.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: disallow binding to component exports in runes mode diff --git a/.changeset/big-apes-smell.md b/.changeset/big-apes-smell.md deleted file mode 100644 index 1612e5e601..0000000000 --- a/.changeset/big-apes-smell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: deprecate `svelte:component` diff --git a/.changeset/big-cars-serve.md b/.changeset/big-cars-serve.md deleted file mode 100644 index ada0f61ba9..0000000000 --- a/.changeset/big-cars-serve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: transform textarea and contenteditable binding expressions diff --git a/.changeset/big-eggs-flash.md b/.changeset/big-eggs-flash.md deleted file mode 100644 index c5524c55a6..0000000000 --- a/.changeset/big-eggs-flash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: implement support for `:is(...)` and `:where(...)` diff --git a/.changeset/big-eyes-carry.md b/.changeset/big-eyes-carry.md deleted file mode 100644 index 8e2b4ac736..0000000000 --- a/.changeset/big-eyes-carry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: handle event delegation correctly when having sibling event listeners diff --git a/.changeset/big-geese-act.md b/.changeset/big-geese-act.md deleted file mode 100644 index 08e1e29d15..0000000000 --- a/.changeset/big-geese-act.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: only throw bind error when not passing a value diff --git a/.changeset/big-moons-occur.md b/.changeset/big-moons-occur.md deleted file mode 100644 index 42429d31f6..0000000000 --- a/.changeset/big-moons-occur.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve unowned derived signal heuristics diff --git a/.changeset/blue-ants-raise.md b/.changeset/blue-ants-raise.md deleted file mode 100644 index b77e70216d..0000000000 --- a/.changeset/blue-ants-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve bind:this support around proxyied state diff --git a/.changeset/blue-lemons-wait.md b/.changeset/blue-lemons-wait.md deleted file mode 100644 index d6c7004678..0000000000 --- a/.changeset/blue-lemons-wait.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: collect all necessary setters of html elements when spreading attributes diff --git a/.changeset/blue-rules-juggle.md b/.changeset/blue-rules-juggle.md deleted file mode 100644 index 6da0270910..0000000000 --- a/.changeset/blue-rules-juggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: don't clear date input on temporarily invalid value diff --git a/.changeset/blue-timers-film.md b/.changeset/blue-timers-film.md deleted file mode 100644 index 4a7e421700..0000000000 --- a/.changeset/blue-timers-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: skip certain slot validations for custom elements diff --git a/.changeset/blue-waves-sneeze.md b/.changeset/blue-waves-sneeze.md deleted file mode 100644 index 12f8d663c7..0000000000 --- a/.changeset/blue-waves-sneeze.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: optimise effects diff --git a/.changeset/brave-candles-serve.md b/.changeset/brave-candles-serve.md deleted file mode 100644 index f758e3cc76..0000000000 --- a/.changeset/brave-candles-serve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly migrate sequence expressions diff --git a/.changeset/brave-carrots-draw.md b/.changeset/brave-carrots-draw.md deleted file mode 100644 index 4e60193fde..0000000000 --- a/.changeset/brave-carrots-draw.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: more robust moving of each item nodes diff --git a/.changeset/brave-doors-compete.md b/.changeset/brave-doors-compete.md deleted file mode 100644 index 2e417df5f6..0000000000 --- a/.changeset/brave-doors-compete.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: visit expression for `svelte:component` references diff --git a/.changeset/brave-gorillas-end.md b/.changeset/brave-gorillas-end.md deleted file mode 100644 index 8c86b5a09e..0000000000 --- a/.changeset/brave-gorillas-end.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: use keys for hmr modules diff --git a/.changeset/brave-gorillas-fold.md b/.changeset/brave-gorillas-fold.md deleted file mode 100644 index 5a551cbff2..0000000000 --- a/.changeset/brave-gorillas-fold.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure `$state.snapshot` never errors diff --git a/.changeset/brave-pigs-obey.md b/.changeset/brave-pigs-obey.md deleted file mode 100644 index 312ead8ade..0000000000 --- a/.changeset/brave-pigs-obey.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: increment derived versions when updating diff --git a/.changeset/brave-points-sleep.md b/.changeset/brave-points-sleep.md deleted file mode 100644 index 6412a09434..0000000000 --- a/.changeset/brave-points-sleep.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve code generation for `bind:this` in SSR mode diff --git a/.changeset/brave-rivers-jam.md b/.changeset/brave-rivers-jam.md deleted file mode 100644 index c8dcd42c0d..0000000000 --- a/.changeset/brave-rivers-jam.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure user effects are correctly executed on initialisation diff --git a/.changeset/brave-shrimps-kiss.md b/.changeset/brave-shrimps-kiss.md deleted file mode 100644 index 096a156794..0000000000 --- a/.changeset/brave-shrimps-kiss.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve transition outro easing diff --git a/.changeset/brave-walls-destroy.md b/.changeset/brave-walls-destroy.md deleted file mode 100644 index 86737de23f..0000000000 --- a/.changeset/brave-walls-destroy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: use internal `get_descriptors` helper diff --git a/.changeset/brave-walls-flow.md b/.changeset/brave-walls-flow.md deleted file mode 100644 index c00bdf37f9..0000000000 --- a/.changeset/brave-walls-flow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improved effect sequencing and execution order diff --git a/.changeset/breezy-carrots-flash.md b/.changeset/breezy-carrots-flash.md deleted file mode 100644 index 8d9fce63f9..0000000000 --- a/.changeset/breezy-carrots-flash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve ssr template code generation diff --git a/.changeset/breezy-rules-beg.md b/.changeset/breezy-rules-beg.md deleted file mode 100644 index 094aef5a19..0000000000 --- a/.changeset/breezy-rules-beg.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: further improvements to hmr component key generation diff --git a/.changeset/breezy-waves-camp.md b/.changeset/breezy-waves-camp.md deleted file mode 100644 index a324706d9c..0000000000 --- a/.changeset/breezy-waves-camp.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: validate form inside a form diff --git a/.changeset/bright-berries-smell.md b/.changeset/bright-berries-smell.md deleted file mode 100644 index f1fdb4aa81..0000000000 --- a/.changeset/bright-berries-smell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: remove correct event listener from document diff --git a/.changeset/bright-colts-play.md b/.changeset/bright-colts-play.md deleted file mode 100644 index 758264da10..0000000000 --- a/.changeset/bright-colts-play.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure dynamic event handlers are wrapped in a derived diff --git a/.changeset/bright-falcons-float.md b/.changeset/bright-falcons-float.md deleted file mode 100644 index 5d550917c2..0000000000 --- a/.changeset/bright-falcons-float.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: improve SSR invalid element error message diff --git a/.changeset/bright-needles-pretend.md b/.changeset/bright-needles-pretend.md deleted file mode 100644 index 03bb20e4f1..0000000000 --- a/.changeset/bright-needles-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: abort outro when intro starts diff --git a/.changeset/bright-peas-juggle.md b/.changeset/bright-peas-juggle.md deleted file mode 100644 index 8ef8beaeab..0000000000 --- a/.changeset/bright-peas-juggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -A transition's parameters are now evaluated when the transition is initialized. diff --git a/.changeset/bright-seas-brake.md b/.changeset/bright-seas-brake.md deleted file mode 100644 index a63350cba6..0000000000 --- a/.changeset/bright-seas-brake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add hidden until-found and beforematch diff --git a/.changeset/bright-snakes-sing.md b/.changeset/bright-snakes-sing.md deleted file mode 100644 index 23989cab63..0000000000 --- a/.changeset/bright-snakes-sing.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make `@types/estree` a dependency diff --git a/.changeset/brown-geckos-fry.md b/.changeset/brown-geckos-fry.md deleted file mode 100644 index e3b3e086af..0000000000 --- a/.changeset/brown-geckos-fry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly interpret empty aria- attribute diff --git a/.changeset/brown-houses-obey.md b/.changeset/brown-houses-obey.md deleted file mode 100644 index 65c1ce4289..0000000000 --- a/.changeset/brown-houses-obey.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: further improvements to effect scheduling and flushing diff --git a/.changeset/brown-insects-float.md b/.changeset/brown-insects-float.md deleted file mode 100644 index 58d397b427..0000000000 --- a/.changeset/brown-insects-float.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -perf: speed up $.exclude_from_object diff --git a/.changeset/brown-months-flow.md b/.changeset/brown-months-flow.md deleted file mode 100644 index 77a1781adb..0000000000 --- a/.changeset/brown-months-flow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: warn on invalid event handlers diff --git a/.changeset/brown-months-fry.md b/.changeset/brown-months-fry.md deleted file mode 100644 index a95410d976..0000000000 --- a/.changeset/brown-months-fry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: treeshake unused store subscriptions in SSR mode diff --git a/.changeset/brown-pens-repeat.md b/.changeset/brown-pens-repeat.md deleted file mode 100644 index 0ac7046324..0000000000 --- a/.changeset/brown-pens-repeat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: keep bound inputs in sync in runes mode diff --git a/.changeset/brown-radios-itch.md b/.changeset/brown-radios-itch.md deleted file mode 100644 index 216737809a..0000000000 --- a/.changeset/brown-radios-itch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure typings for `` are picked up diff --git a/.changeset/brown-spoons-boil.md b/.changeset/brown-spoons-boil.md deleted file mode 100644 index ba681e7d05..0000000000 --- a/.changeset/brown-spoons-boil.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -revert: address bug in before/after update diff --git a/.changeset/brown-turkeys-tap.md b/.changeset/brown-turkeys-tap.md deleted file mode 100644 index 96a6126658..0000000000 --- a/.changeset/brown-turkeys-tap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure onwheel is passive by default diff --git a/.changeset/calm-buses-clap.md b/.changeset/calm-buses-clap.md deleted file mode 100644 index 409949443d..0000000000 --- a/.changeset/calm-buses-clap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: don't warn on writes to `$state` diff --git a/.changeset/calm-cameras-hide.md b/.changeset/calm-cameras-hide.md deleted file mode 100644 index 63bf6a896b..0000000000 --- a/.changeset/calm-cameras-hide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: tidy up dynamic event handler generated code diff --git a/.changeset/calm-clocks-raise.md b/.changeset/calm-clocks-raise.md deleted file mode 100644 index dbcfabe197..0000000000 --- a/.changeset/calm-clocks-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve signal perf by using Set rather than array for reactions diff --git a/.changeset/calm-pandas-vanish.md b/.changeset/calm-pandas-vanish.md deleted file mode 100644 index 9d67399be1..0000000000 --- a/.changeset/calm-pandas-vanish.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make ownership validation work correctly with HMR diff --git a/.changeset/calm-ravens-sneeze.md b/.changeset/calm-ravens-sneeze.md deleted file mode 100644 index 4c463f5169..0000000000 --- a/.changeset/calm-ravens-sneeze.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: add reactive Set class to svelte/reactivity diff --git a/.changeset/chatty-beans-divide.md b/.changeset/chatty-beans-divide.md deleted file mode 100644 index bcf47bfbbf..0000000000 --- a/.changeset/chatty-beans-divide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: use safe-equals comparison for `@const` tags in legacy mode diff --git a/.changeset/chatty-cups-drop.md b/.changeset/chatty-cups-drop.md deleted file mode 100644 index 282a9b25de..0000000000 --- a/.changeset/chatty-cups-drop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add support for `{@const}` inside snippet block diff --git a/.changeset/chatty-ghosts-unite.md b/.changeset/chatty-ghosts-unite.md deleted file mode 100644 index 076616d2da..0000000000 --- a/.changeset/chatty-ghosts-unite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: skip pending block for already-resolved promises diff --git a/.changeset/chatty-sloths-allow.md b/.changeset/chatty-sloths-allow.md deleted file mode 100644 index 09146ea12c..0000000000 --- a/.changeset/chatty-sloths-allow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -perf: bail early when traversing non-state diff --git a/.changeset/chatty-snails-train.md b/.changeset/chatty-snails-train.md deleted file mode 100644 index 817621178b..0000000000 --- a/.changeset/chatty-snails-train.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure signal graph is consistent before triggering $inspect signals diff --git a/.changeset/chatty-taxis-juggle.md b/.changeset/chatty-taxis-juggle.md deleted file mode 100644 index 34eb8bc9a9..0000000000 --- a/.changeset/chatty-taxis-juggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: delegate events on elements with bind-this diff --git a/.changeset/chilled-ladybugs-invite.md b/.changeset/chilled-ladybugs-invite.md deleted file mode 100644 index 3074d919a0..0000000000 --- a/.changeset/chilled-ladybugs-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: dynamic event delegation for stateful call expressions diff --git a/.changeset/chilled-pumas-invite.md b/.changeset/chilled-pumas-invite.md deleted file mode 100644 index 943f2d4836..0000000000 --- a/.changeset/chilled-pumas-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: apply keyed validation only for keyed each diff --git a/.changeset/chilled-seas-jog.md b/.changeset/chilled-seas-jog.md deleted file mode 100644 index 7862a5e2cd..0000000000 --- a/.changeset/chilled-seas-jog.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: coerce incremented/decremented sources diff --git a/.changeset/chilly-carpets-switch.md b/.changeset/chilly-carpets-switch.md deleted file mode 100644 index ca8660969a..0000000000 --- a/.changeset/chilly-carpets-switch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: add css hash to custom element rendered with `svelte:element` diff --git a/.changeset/chilly-dolphins-lick.md b/.changeset/chilly-dolphins-lick.md deleted file mode 100644 index 1941f0a6a0..0000000000 --- a/.changeset/chilly-dolphins-lick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: remove selector api diff --git a/.changeset/chilly-glasses-retire.md b/.changeset/chilly-glasses-retire.md deleted file mode 100644 index d98cd25f31..0000000000 --- a/.changeset/chilly-glasses-retire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: exclude custom elements from HTML tree validation diff --git a/.changeset/chilly-laws-juggle.md b/.changeset/chilly-laws-juggle.md deleted file mode 100644 index 9f7c4b89d9..0000000000 --- a/.changeset/chilly-laws-juggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: relax `Component` type diff --git a/.changeset/chilly-pans-raise.md b/.changeset/chilly-pans-raise.md deleted file mode 100644 index 02a162dfb8..0000000000 --- a/.changeset/chilly-pans-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow runelike writable as prop diff --git a/.changeset/chilly-rocks-hug.md b/.changeset/chilly-rocks-hug.md deleted file mode 100644 index cccc87da32..0000000000 --- a/.changeset/chilly-rocks-hug.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: introduce `$host` rune, deprecate `createEventDispatcher` diff --git a/.changeset/chilly-snakes-scream.md b/.changeset/chilly-snakes-scream.md deleted file mode 100644 index dfdc19458e..0000000000 --- a/.changeset/chilly-snakes-scream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: warn against accidental global event referenced diff --git a/.changeset/chilly-waves-count.md b/.changeset/chilly-waves-count.md deleted file mode 100644 index 8cd413f731..0000000000 --- a/.changeset/chilly-waves-count.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure reactivity system remains consistent with removals diff --git a/.changeset/clean-cats-wave.md b/.changeset/clean-cats-wave.md deleted file mode 100644 index 9ab78982ca..0000000000 --- a/.changeset/clean-cats-wave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: robustify migration script diff --git a/.changeset/clean-eels-beg.md b/.changeset/clean-eels-beg.md deleted file mode 100644 index 2cf079196c..0000000000 --- a/.changeset/clean-eels-beg.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: emit useful error on invalid binding to derived state diff --git a/.changeset/clean-melons-wash.md b/.changeset/clean-melons-wash.md deleted file mode 100644 index e510bb6035..0000000000 --- a/.changeset/clean-melons-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: relax constraint for `ComponentProps` diff --git a/.changeset/clean-shirts-yawn.md b/.changeset/clean-shirts-yawn.md deleted file mode 100644 index 12b113baa1..0000000000 --- a/.changeset/clean-shirts-yawn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: throw error if derived creates state and then depends on it diff --git a/.changeset/clean-sloths-nail.md b/.changeset/clean-sloths-nail.md deleted file mode 100644 index 9e93a3fda6..0000000000 --- a/.changeset/clean-sloths-nail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure local prop value is read during teardown diff --git a/.changeset/clever-chefs-relate.md b/.changeset/clever-chefs-relate.md deleted file mode 100644 index 46db5c6ae7..0000000000 --- a/.changeset/clever-chefs-relate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: allow transition undefined payload diff --git a/.changeset/clever-maps-travel.md b/.changeset/clever-maps-travel.md deleted file mode 100644 index e0eb566bf9..0000000000 --- a/.changeset/clever-maps-travel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow comments after last selector in css diff --git a/.changeset/clever-rockets-burn.md b/.changeset/clever-rockets-burn.md deleted file mode 100644 index eced64e637..0000000000 --- a/.changeset/clever-rockets-burn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: handle event hoisting props referencing diff --git a/.changeset/clever-sloths-push.md b/.changeset/clever-sloths-push.md deleted file mode 100644 index 91e2612c4d..0000000000 --- a/.changeset/clever-sloths-push.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: remove unstate(), replace with $state.snapshot rune diff --git a/.changeset/clever-stingrays-shout.md b/.changeset/clever-stingrays-shout.md deleted file mode 100644 index 8bb9ff1acb..0000000000 --- a/.changeset/clever-stingrays-shout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: support `array.lastIndexOf` without second argument diff --git a/.changeset/clever-toys-laugh.md b/.changeset/clever-toys-laugh.md deleted file mode 100644 index d1f72545bd..0000000000 --- a/.changeset/clever-toys-laugh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: hydrate multiple `` elements correctly diff --git a/.changeset/cold-beans-tease.md b/.changeset/cold-beans-tease.md deleted file mode 100644 index 7359c27cc0..0000000000 --- a/.changeset/cold-beans-tease.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: populate `this.#sources` when constructing reactive map diff --git a/.changeset/cold-birds-own.md b/.changeset/cold-birds-own.md deleted file mode 100644 index 043f64b028..0000000000 --- a/.changeset/cold-birds-own.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: add inline new class warning diff --git a/.changeset/cold-cheetahs-judge.md b/.changeset/cold-cheetahs-judge.md deleted file mode 100644 index 63302f29e8..0000000000 --- a/.changeset/cold-cheetahs-judge.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: deduplicate children prop and default slot diff --git a/.changeset/cold-lamps-accept.md b/.changeset/cold-lamps-accept.md deleted file mode 100644 index 9de7866ec8..0000000000 --- a/.changeset/cold-lamps-accept.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: sort `{@const ...}` tags topologically in legacy mode diff --git a/.changeset/cold-masks-learn.md b/.changeset/cold-masks-learn.md deleted file mode 100644 index 1ecc5e3c65..0000000000 --- a/.changeset/cold-masks-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve proxy effect dependency tracking diff --git a/.changeset/cold-shrimps-hug.md b/.changeset/cold-shrimps-hug.md deleted file mode 100644 index be5dc91d2f..0000000000 --- a/.changeset/cold-shrimps-hug.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: assign correct scope to attributes of named slot diff --git a/.changeset/cold-socks-learn.md b/.changeset/cold-socks-learn.md deleted file mode 100644 index 51c45b8f19..0000000000 --- a/.changeset/cold-socks-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: account for `zoom` when calculating animation transforms diff --git a/.changeset/cold-teachers-turn.md b/.changeset/cold-teachers-turn.md deleted file mode 100644 index e86ffbcdfe..0000000000 --- a/.changeset/cold-teachers-turn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correct start of `{:else if}` and `{:else}` diff --git a/.changeset/cool-actors-tan.md b/.changeset/cool-actors-tan.md deleted file mode 100644 index 2e7bd90ce6..0000000000 --- a/.changeset/cool-actors-tan.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: MathML support diff --git a/.changeset/cool-ants-leave.md b/.changeset/cool-ants-leave.md deleted file mode 100644 index c1a1d038a9..0000000000 --- a/.changeset/cool-ants-leave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure proxied array length is updated diff --git a/.changeset/cool-apes-confess.md b/.changeset/cool-apes-confess.md deleted file mode 100644 index 6142d430ff..0000000000 --- a/.changeset/cool-apes-confess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure inserted code is preserved during migration diff --git a/.changeset/cool-comics-marry.md b/.changeset/cool-comics-marry.md deleted file mode 100644 index 1b9d814596..0000000000 --- a/.changeset/cool-comics-marry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix missing classes after dynamic expressions in class attribute diff --git a/.changeset/cool-jobs-scream.md b/.changeset/cool-jobs-scream.md deleted file mode 100644 index 7ca46a06c5..0000000000 --- a/.changeset/cool-jobs-scream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add support for svelte inspector diff --git a/.changeset/cool-peas-lick.md b/.changeset/cool-peas-lick.md deleted file mode 100644 index 4b3e562c46..0000000000 --- a/.changeset/cool-peas-lick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: onDestroy functions run child-first diff --git a/.changeset/cool-poems-watch.md b/.changeset/cool-poems-watch.md deleted file mode 100644 index 34527ad16f..0000000000 --- a/.changeset/cool-poems-watch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: disallow mixing on:click and onclick syntax diff --git a/.changeset/cool-rabbits-tickle.md b/.changeset/cool-rabbits-tickle.md deleted file mode 100644 index 1d684821ac..0000000000 --- a/.changeset/cool-rabbits-tickle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve bind:this support for each blocks diff --git a/.changeset/cool-roses-trade.md b/.changeset/cool-roses-trade.md deleted file mode 100644 index ae05a8f8b4..0000000000 --- a/.changeset/cool-roses-trade.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve effect over-fire on store subscription init diff --git a/.changeset/cool-turtles-travel.md b/.changeset/cool-turtles-travel.md deleted file mode 100644 index 31145e6e76..0000000000 --- a/.changeset/cool-turtles-travel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure custom elements do not sync flush on mount diff --git a/.changeset/cool-yaks-run.md b/.changeset/cool-yaks-run.md deleted file mode 100644 index 8b316a8caf..0000000000 --- a/.changeset/cool-yaks-run.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: only use getComputedStyle with elements diff --git a/.changeset/cuddly-pianos-drop.md b/.changeset/cuddly-pianos-drop.md deleted file mode 100644 index 7993ba6289..0000000000 --- a/.changeset/cuddly-pianos-drop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve bundle code size diff --git a/.changeset/cuddly-points-tickle.md b/.changeset/cuddly-points-tickle.md deleted file mode 100644 index 4a75553b42..0000000000 --- a/.changeset/cuddly-points-tickle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: execute sole static script tag diff --git a/.changeset/curly-cooks-cheer.md b/.changeset/curly-cooks-cheer.md deleted file mode 100644 index 2859e1ca1a..0000000000 --- a/.changeset/curly-cooks-cheer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make more types from `svelte/compiler` public diff --git a/.changeset/curly-lizards-dream.md b/.changeset/curly-lizards-dream.md deleted file mode 100644 index 1f7d32f484..0000000000 --- a/.changeset/curly-lizards-dream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: coerce attribute value to string before comparison diff --git a/.changeset/curvy-buses-laugh.md b/.changeset/curvy-buses-laugh.md deleted file mode 100644 index a32df28039..0000000000 --- a/.changeset/curvy-buses-laugh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: better ownership mutation validation diff --git a/.changeset/curvy-cups-cough.md b/.changeset/curvy-cups-cough.md deleted file mode 100644 index e16cb83777..0000000000 --- a/.changeset/curvy-cups-cough.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: snippets can now take multiple arguments, support default parameters. Because of this, the type signature has changed diff --git a/.changeset/curvy-flies-exercise.md b/.changeset/curvy-flies-exercise.md deleted file mode 100644 index bcdbe1b448..0000000000 --- a/.changeset/curvy-flies-exercise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure correct context for action update/destroy functions diff --git a/.changeset/curvy-foxes-wink.md b/.changeset/curvy-foxes-wink.md deleted file mode 100644 index 1b405fb294..0000000000 --- a/.changeset/curvy-foxes-wink.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: better types for the `autocomplete` attribute diff --git a/.changeset/curvy-papayas-pretend.md b/.changeset/curvy-papayas-pretend.md deleted file mode 100644 index d5357dc5bc..0000000000 --- a/.changeset/curvy-papayas-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add compiler error when encountering a $-prefixed store value outside a .svelte file diff --git a/.changeset/curvy-ties-shout.md b/.changeset/curvy-ties-shout.md deleted file mode 100644 index ee8bc567e3..0000000000 --- a/.changeset/curvy-ties-shout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: deeply unstate objects passed to inspect diff --git a/.changeset/cyan-colts-raise.md b/.changeset/cyan-colts-raise.md deleted file mode 100644 index 4a6e9aa1a1..0000000000 --- a/.changeset/cyan-colts-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve internal mechanism for handling process_effects diff --git a/.changeset/cyan-ducks-teach.md b/.changeset/cyan-ducks-teach.md deleted file mode 100644 index e33663e61d..0000000000 --- a/.changeset/cyan-ducks-teach.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make messages more consistent diff --git a/.changeset/cyan-flowers-destroy.md b/.changeset/cyan-flowers-destroy.md deleted file mode 100644 index 2db04a7588..0000000000 --- a/.changeset/cyan-flowers-destroy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correctly determine `bind:group` members diff --git a/.changeset/cyan-news-grow.md b/.changeset/cyan-news-grow.md deleted file mode 100644 index 1e7e5d342d..0000000000 --- a/.changeset/cyan-news-grow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: address event delegation duplication behaviour diff --git a/.changeset/cyan-spies-grin.md b/.changeset/cyan-spies-grin.md deleted file mode 100644 index b278b427b6..0000000000 --- a/.changeset/cyan-spies-grin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve global transition handling of effect cleardown diff --git a/.changeset/cyan-squids-drive.md b/.changeset/cyan-squids-drive.md deleted file mode 100644 index ae01d66fed..0000000000 --- a/.changeset/cyan-squids-drive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: make hr, script and template valid select children diff --git a/.changeset/cyan-toes-share.md b/.changeset/cyan-toes-share.md deleted file mode 100644 index 4255b8d703..0000000000 --- a/.changeset/cyan-toes-share.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: more robust handling of events in spread attributes diff --git a/.changeset/dirty-bats-punch.md b/.changeset/dirty-bats-punch.md deleted file mode 100644 index 8274a2bbc3..0000000000 --- a/.changeset/dirty-bats-punch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: handle delegated events of elements moved outside the container diff --git a/.changeset/dirty-donuts-yell.md b/.changeset/dirty-donuts-yell.md deleted file mode 100644 index a444313905..0000000000 --- a/.changeset/dirty-donuts-yell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: replace `$derived.call` with `$derived.by` diff --git a/.changeset/dirty-eyes-itch.md b/.changeset/dirty-eyes-itch.md deleted file mode 100644 index a134e973c2..0000000000 --- a/.changeset/dirty-eyes-itch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure all effect cleanup functions are untracked diff --git a/.changeset/dirty-garlics-design.md b/.changeset/dirty-garlics-design.md deleted file mode 100644 index 525160b762..0000000000 --- a/.changeset/dirty-garlics-design.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add type of `$effect.active` diff --git a/.changeset/dirty-jars-tap.md b/.changeset/dirty-jars-tap.md deleted file mode 100644 index 35a2772e48..0000000000 --- a/.changeset/dirty-jars-tap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: error on duplicate style and class directive diff --git a/.changeset/dirty-pens-look.md b/.changeset/dirty-pens-look.md deleted file mode 100644 index 16536edce7..0000000000 --- a/.changeset/dirty-pens-look.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly handle SvelteDate methods with arguments diff --git a/.changeset/dirty-pianos-eat.md b/.changeset/dirty-pianos-eat.md deleted file mode 100644 index 4bc34bd440..0000000000 --- a/.changeset/dirty-pianos-eat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure $state.snapshot correctly clones Date objects diff --git a/.changeset/dirty-tips-add.md b/.changeset/dirty-tips-add.md deleted file mode 100644 index 305dbd1b16..0000000000 --- a/.changeset/dirty-tips-add.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correct bind this multiple bindings diff --git a/.changeset/dirty-worms-type.md b/.changeset/dirty-worms-type.md deleted file mode 100644 index 0a824fcb1d..0000000000 --- a/.changeset/dirty-worms-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: avoid disconnecting deriveds that are still active diff --git a/.changeset/dry-clocks-grow.md b/.changeset/dry-clocks-grow.md deleted file mode 100644 index 1975d9785c..0000000000 --- a/.changeset/dry-clocks-grow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add `$state.frozen` rune diff --git a/.changeset/dry-eggs-play.md b/.changeset/dry-eggs-play.md deleted file mode 100644 index 962e26fbff..0000000000 --- a/.changeset/dry-eggs-play.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve text node output diff --git a/.changeset/dry-eggs-retire.md b/.changeset/dry-eggs-retire.md deleted file mode 100644 index 1e8bb95d75..0000000000 --- a/.changeset/dry-eggs-retire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve style parser whitespace handling diff --git a/.changeset/dry-fans-march.md b/.changeset/dry-fans-march.md deleted file mode 100644 index 6d16d55d12..0000000000 --- a/.changeset/dry-fans-march.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: refine css `:global()` selector checks in a compound selector diff --git a/.changeset/dry-ghosts-prove.md b/.changeset/dry-ghosts-prove.md deleted file mode 100644 index 2603a0a5c1..0000000000 --- a/.changeset/dry-ghosts-prove.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: bail out of event hoisting when referencing store subscriptions diff --git a/.changeset/dry-hotels-matter.md b/.changeset/dry-hotels-matter.md deleted file mode 100644 index 927f84908d..0000000000 --- a/.changeset/dry-hotels-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: remove $.unwrap calls from each block indexes diff --git a/.changeset/dry-parrots-bathe.md b/.changeset/dry-parrots-bathe.md deleted file mode 100644 index 8b5b599547..0000000000 --- a/.changeset/dry-parrots-bathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: support contenteditable binding undefined fallback diff --git a/.changeset/dry-pillows-exist.md b/.changeset/dry-pillows-exist.md deleted file mode 100644 index dab22ccef1..0000000000 --- a/.changeset/dry-pillows-exist.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: more efficient hydration markers diff --git a/.changeset/dull-coins-vanish.md b/.changeset/dull-coins-vanish.md deleted file mode 100644 index 2b62f07bb1..0000000000 --- a/.changeset/dull-coins-vanish.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: bump specificity on all members of a selector list diff --git a/.changeset/dull-donkeys-smell.md b/.changeset/dull-donkeys-smell.md deleted file mode 100644 index 31b1ac319d..0000000000 --- a/.changeset/dull-donkeys-smell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: `$state.is` missing second argument on the server diff --git a/.changeset/dull-mangos-wave.md b/.changeset/dull-mangos-wave.md deleted file mode 100644 index 18ba4e3c8c..0000000000 --- a/.changeset/dull-mangos-wave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve whitespace handling diff --git a/.changeset/dull-pens-pay.md b/.changeset/dull-pens-pay.md deleted file mode 100644 index 2ebb7c25a4..0000000000 --- a/.changeset/dull-pens-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: remove `createRoot` references diff --git a/.changeset/dull-pots-add.md b/.changeset/dull-pots-add.md deleted file mode 100644 index c993f2532b..0000000000 --- a/.changeset/dull-pots-add.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: don't override instance methods during legacy class creation diff --git a/.changeset/dull-roses-relate.md b/.changeset/dull-roses-relate.md deleted file mode 100644 index b0da71fe59..0000000000 --- a/.changeset/dull-roses-relate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: infer `svg` namespace correctly diff --git a/.changeset/dull-worms-relax.md b/.changeset/dull-worms-relax.md deleted file mode 100644 index 96ad11673c..0000000000 --- a/.changeset/dull-worms-relax.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: disallow string literal values in `` diff --git a/.changeset/early-ads-tie.md b/.changeset/early-ads-tie.md deleted file mode 100644 index ee885795cc..0000000000 --- a/.changeset/early-ads-tie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: rename internal object properties diff --git a/.changeset/early-months-whisper.md b/.changeset/early-months-whisper.md deleted file mode 100644 index dbc29a3408..0000000000 --- a/.changeset/early-months-whisper.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: loosen proxy signal creation heuristics diff --git a/.changeset/early-needles-bake.md b/.changeset/early-needles-bake.md deleted file mode 100644 index 0cd5c198ea..0000000000 --- a/.changeset/early-needles-bake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: blank CSS contents while migrating diff --git a/.changeset/early-rockets-join.md b/.changeset/early-rockets-join.md deleted file mode 100644 index c220930ef5..0000000000 --- a/.changeset/early-rockets-join.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: bail out if slot name changes and $$slots assigned to variable diff --git a/.changeset/early-taxis-allow.md b/.changeset/early-taxis-allow.md deleted file mode 100644 index 6539b0cb6b..0000000000 --- a/.changeset/early-taxis-allow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: provide guidance in browser console when logging $state objects diff --git a/.changeset/eight-carrots-hunt.md b/.changeset/eight-carrots-hunt.md deleted file mode 100644 index a220e13080..0000000000 --- a/.changeset/eight-carrots-hunt.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: error on imports to `svelte/internal/*` diff --git a/.changeset/eight-comics-tell.md b/.changeset/eight-comics-tell.md deleted file mode 100644 index fa506aba46..0000000000 --- a/.changeset/eight-comics-tell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add support for `` diff --git a/.changeset/eight-cougars-watch.md b/.changeset/eight-cougars-watch.md deleted file mode 100644 index 8a7c234e58..0000000000 --- a/.changeset/eight-cougars-watch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: better handle img loading attribute diff --git a/.changeset/eight-hornets-punch.md b/.changeset/eight-hornets-punch.md deleted file mode 100644 index e4ae2217f4..0000000000 --- a/.changeset/eight-hornets-punch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: make static `element` property available for the SvelteComponent type diff --git a/.changeset/eight-jeans-compare.md b/.changeset/eight-jeans-compare.md deleted file mode 100644 index fbd71dd1c2..0000000000 --- a/.changeset/eight-jeans-compare.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve reactive Map and Set implementations diff --git a/.changeset/eight-pans-worry.md b/.changeset/eight-pans-worry.md deleted file mode 100644 index 61c970b97f..0000000000 --- a/.changeset/eight-pans-worry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: transitions within dynamic components now function correctly diff --git a/.changeset/eight-pianos-raise.md b/.changeset/eight-pianos-raise.md deleted file mode 100644 index d73c7424a9..0000000000 --- a/.changeset/eight-pianos-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add backwards-compat for old warning codes in legacy mode diff --git a/.changeset/eight-steaks-shout.md b/.changeset/eight-steaks-shout.md deleted file mode 100644 index 62dbebafaf..0000000000 --- a/.changeset/eight-steaks-shout.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correct update_block index type diff --git a/.changeset/eight-waves-mate.md b/.changeset/eight-waves-mate.md deleted file mode 100644 index 3c6dd1b776..0000000000 --- a/.changeset/eight-waves-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: avoid migrating slots in custom elements diff --git a/.changeset/eighty-bikes-camp.md b/.changeset/eighty-bikes-camp.md deleted file mode 100644 index 273e6ad996..0000000000 --- a/.changeset/eighty-bikes-camp.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: handle private fields in `class` in `.svelte.js` files diff --git a/.changeset/eighty-bugs-fetch.md b/.changeset/eighty-bugs-fetch.md deleted file mode 100644 index 35bde6a377..0000000000 --- a/.changeset/eighty-bugs-fetch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: inline start and end node properties into effect diff --git a/.changeset/eighty-days-cheat.md b/.changeset/eighty-days-cheat.md deleted file mode 100644 index 1dab9a948f..0000000000 --- a/.changeset/eighty-days-cheat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve template literal expression output generation diff --git a/.changeset/eighty-days-wave.md b/.changeset/eighty-days-wave.md deleted file mode 100644 index 86da3748e8..0000000000 --- a/.changeset/eighty-days-wave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly ensure prop bindings are reactive when bound diff --git a/.changeset/eighty-dragons-search.md b/.changeset/eighty-dragons-search.md deleted file mode 100644 index 83a72c88e8..0000000000 --- a/.changeset/eighty-dragons-search.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -perf: inline module variables into template diff --git a/.changeset/eighty-dryers-pretend.md b/.changeset/eighty-dryers-pretend.md deleted file mode 100644 index 3416fd615a..0000000000 --- a/.changeset/eighty-dryers-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: disallow state mutations in logic block expression diff --git a/.changeset/eighty-hornets-breathe.md b/.changeset/eighty-hornets-breathe.md deleted file mode 100644 index f4e3cb0ad7..0000000000 --- a/.changeset/eighty-hornets-breathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: apply class/style directives after attributes diff --git a/.changeset/eighty-lizards-notice.md b/.changeset/eighty-lizards-notice.md deleted file mode 100644 index 507d66e3cb..0000000000 --- a/.changeset/eighty-lizards-notice.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: improve runtime overhead of creating comment templates diff --git a/.changeset/eighty-mails-develop.md b/.changeset/eighty-mails-develop.md deleted file mode 100644 index 94eee085f7..0000000000 --- a/.changeset/eighty-mails-develop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: render undefined html as the empty string diff --git a/.changeset/eleven-avocados-walk.md b/.changeset/eleven-avocados-walk.md deleted file mode 100644 index af50fb60b2..0000000000 --- a/.changeset/eleven-avocados-walk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correctly serialize object assignment expressions diff --git a/.changeset/eleven-beers-yell.md b/.changeset/eleven-beers-yell.md deleted file mode 100644 index 9f38d30e9c..0000000000 --- a/.changeset/eleven-beers-yell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: use implicit return for each block keys diff --git a/.changeset/eleven-cows-judge.md b/.changeset/eleven-cows-judge.md deleted file mode 100644 index 16efbf8678..0000000000 --- a/.changeset/eleven-cows-judge.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: reverse parent/child order in invalid HTML warning diff --git a/.changeset/eleven-cycles-applaud.md b/.changeset/eleven-cycles-applaud.md deleted file mode 100644 index 3e73a89252..0000000000 --- a/.changeset/eleven-cycles-applaud.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: preserve slots inside templates with a shadowrootmode attribute diff --git a/.changeset/eleven-donuts-sit.md b/.changeset/eleven-donuts-sit.md deleted file mode 100644 index b372cc1983..0000000000 --- a/.changeset/eleven-donuts-sit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make animations more robust to quick shuffling diff --git a/.changeset/eleven-hounds-pump.md b/.changeset/eleven-hounds-pump.md deleted file mode 100644 index bcd106e61f..0000000000 --- a/.changeset/eleven-hounds-pump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: clear `Map`/`Set` before triggering `$inspect` callbacks diff --git a/.changeset/eleven-humans-kneel.md b/.changeset/eleven-humans-kneel.md deleted file mode 100644 index bb721a83be..0000000000 --- a/.changeset/eleven-humans-kneel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: cleanup non-branch effects created inside block effects diff --git a/.changeset/eleven-icons-sniff.md b/.changeset/eleven-icons-sniff.md deleted file mode 100644 index fd2b1af9c5..0000000000 --- a/.changeset/eleven-icons-sniff.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: error on incorrect attributes for svelte:body diff --git a/.changeset/eleven-peaches-tap.md b/.changeset/eleven-peaches-tap.md deleted file mode 100644 index 5df9c70e12..0000000000 --- a/.changeset/eleven-peaches-tap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure snapshot logs don't affect dependency graph diff --git a/.changeset/eleven-teachers-drive.md b/.changeset/eleven-teachers-drive.md deleted file mode 100644 index 6a8129a733..0000000000 --- a/.changeset/eleven-teachers-drive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: treat module-level imports as non-reactive in legacy mode diff --git a/.changeset/empty-bags-heal.md b/.changeset/empty-bags-heal.md deleted file mode 100644 index b19b631c51..0000000000 --- a/.changeset/empty-bags-heal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: use init properties when exporting non-state values in prod diff --git a/.changeset/empty-bulldogs-exercise.md b/.changeset/empty-bulldogs-exercise.md deleted file mode 100644 index 087a8f7775..0000000000 --- a/.changeset/empty-bulldogs-exercise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve outro behavior with transitions diff --git a/.changeset/empty-coins-build.md b/.changeset/empty-coins-build.md deleted file mode 100644 index b78d25bb34..0000000000 --- a/.changeset/empty-coins-build.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improved $inspect handling of reactive Map/Set/Date diff --git a/.changeset/empty-crabs-think.md b/.changeset/empty-crabs-think.md deleted file mode 100644 index 9e42b23228..0000000000 --- a/.changeset/empty-crabs-think.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: refactor props handling diff --git a/.changeset/empty-files-prove.md b/.changeset/empty-files-prove.md deleted file mode 100644 index 03ea2f70a5..0000000000 --- a/.changeset/empty-files-prove.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: robustify migration script around indentation and comments diff --git a/.changeset/empty-flowers-change.md b/.changeset/empty-flowers-change.md deleted file mode 100644 index a2ce49c226..0000000000 --- a/.changeset/empty-flowers-change.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: replicate Svelte 4 props update detection in legacy mode diff --git a/.changeset/empty-geckos-pretend.md b/.changeset/empty-geckos-pretend.md deleted file mode 100644 index defe2fb419..0000000000 --- a/.changeset/empty-geckos-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure reactions are kept dirty when marking them again diff --git a/.changeset/empty-horses-tell.md b/.changeset/empty-horses-tell.md deleted file mode 100644 index 6633da1967..0000000000 --- a/.changeset/empty-horses-tell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: keep default values of props a proxy after reassignment diff --git a/.changeset/empty-tools-share.md b/.changeset/empty-tools-share.md deleted file mode 100644 index da284dec37..0000000000 --- a/.changeset/empty-tools-share.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add compiler error for invalid

      contents diff --git a/.changeset/fair-bags-smoke.md b/.changeset/fair-bags-smoke.md deleted file mode 100644 index 683b4e2417..0000000000 --- a/.changeset/fair-bags-smoke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: simplify HMR implementation diff --git a/.changeset/fair-beers-help.md b/.changeset/fair-beers-help.md deleted file mode 100644 index a48fcee2fe..0000000000 --- a/.changeset/fair-beers-help.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: make store initialization logic simpler diff --git a/.changeset/fair-crabs-check.md b/.changeset/fair-crabs-check.md deleted file mode 100644 index fa51ebf2d5..0000000000 --- a/.changeset/fair-crabs-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: prevent false positives when detecting runes mode diff --git a/.changeset/fair-items-bathe.md b/.changeset/fair-items-bathe.md deleted file mode 100644 index 3abaf8e7bd..0000000000 --- a/.changeset/fair-items-bathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: add media listeners immediately when using `bind:paused` diff --git a/.changeset/fair-pianos-talk.md b/.changeset/fair-pianos-talk.md deleted file mode 100644 index f9622afbe9..0000000000 --- a/.changeset/fair-pianos-talk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correctly apply event.currentTarget diff --git a/.changeset/fair-spies-repeat.md b/.changeset/fair-spies-repeat.md deleted file mode 100644 index fc4a7dbd2f..0000000000 --- a/.changeset/fair-spies-repeat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: make `$props()` rune non-generic diff --git a/.changeset/famous-chairs-notice.md b/.changeset/famous-chairs-notice.md deleted file mode 100644 index a060a9b6a8..0000000000 --- a/.changeset/famous-chairs-notice.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: more accurate `render`/`mount`/`hydrate` options diff --git a/.changeset/famous-falcons-melt.md b/.changeset/famous-falcons-melt.md deleted file mode 100644 index e891fdfbcd..0000000000 --- a/.changeset/famous-falcons-melt.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add back `derived` type overload diff --git a/.changeset/famous-kiwis-thank.md b/.changeset/famous-kiwis-thank.md deleted file mode 100644 index d19daf62bb..0000000000 --- a/.changeset/famous-kiwis-thank.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: adjust heuristics for effect_update_depth_exceeded diff --git a/.changeset/famous-knives-sneeze.md b/.changeset/famous-knives-sneeze.md deleted file mode 100644 index 9c7dcb42d3..0000000000 --- a/.changeset/famous-knives-sneeze.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure implicit children snippet renders correctly diff --git a/.changeset/famous-mirrors-count.md b/.changeset/famous-mirrors-count.md deleted file mode 100644 index 78e6011629..0000000000 --- a/.changeset/famous-mirrors-count.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: align list of passive events with browser defaults diff --git a/.changeset/famous-pants-pay.md b/.changeset/famous-pants-pay.md deleted file mode 100644 index 49c3a06051..0000000000 --- a/.changeset/famous-pants-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: bump zimmerframe to fix bugs introduced in previous version diff --git a/.changeset/fast-donkeys-pay.md b/.changeset/fast-donkeys-pay.md deleted file mode 100644 index 29913f5e52..0000000000 --- a/.changeset/fast-donkeys-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: simpler ` hydration diff --git a/.changeset/fast-penguins-matter.md b/.changeset/fast-penguins-matter.md deleted file mode 100644 index 523aaf8a12..0000000000 --- a/.changeset/fast-penguins-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: apply modifiers to bubbled events diff --git a/.changeset/fast-toes-act.md b/.changeset/fast-toes-act.md deleted file mode 100644 index 121d5d4a71..0000000000 --- a/.changeset/fast-toes-act.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: properly assign trailing comments diff --git a/.changeset/fast-weeks-clean.md b/.changeset/fast-weeks-clean.md deleted file mode 100644 index 4ce7f286b3..0000000000 --- a/.changeset/fast-weeks-clean.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: keep intermediate number value representations diff --git a/.changeset/few-badgers-guess.md b/.changeset/few-badgers-guess.md deleted file mode 100644 index b721433c96..0000000000 --- a/.changeset/few-badgers-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: warn in dev on `{@html ...}` block hydration mismatch diff --git a/.changeset/few-cheetahs-taste.md b/.changeset/few-cheetahs-taste.md deleted file mode 100644 index 34da32f362..0000000000 --- a/.changeset/few-cheetahs-taste.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: reorder reactive statements during migration diff --git a/.changeset/few-clouds-shop.md b/.changeset/few-clouds-shop.md deleted file mode 100644 index c21f6eef6c..0000000000 --- a/.changeset/few-clouds-shop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: always run pre effects immediately diff --git a/.changeset/few-mugs-fail.md b/.changeset/few-mugs-fail.md deleted file mode 100644 index b3a4a611e0..0000000000 --- a/.changeset/few-mugs-fail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: reuse common templates diff --git a/.changeset/few-teachers-know.md b/.changeset/few-teachers-know.md deleted file mode 100644 index 9c79998ac2..0000000000 --- a/.changeset/few-teachers-know.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: revert ownership widening change diff --git a/.changeset/few-walls-check.md b/.changeset/few-walls-check.md deleted file mode 100644 index b91ab9d844..0000000000 --- a/.changeset/few-walls-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: prevent div/0 when generating transition keyframes diff --git a/.changeset/few-zoos-own.md b/.changeset/few-zoos-own.md deleted file mode 100644 index ae1b77f9ce..0000000000 --- a/.changeset/few-zoos-own.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: omit `state_referenced_locally` warning for component exports diff --git a/.changeset/fifty-actors-agree.md b/.changeset/fifty-actors-agree.md deleted file mode 100644 index 2fd5cc66ef..0000000000 --- a/.changeset/fifty-actors-agree.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: disallow `Object.defineProperty` on state proxies with non-basic descriptors diff --git a/.changeset/fifty-masks-give.md b/.changeset/fifty-masks-give.md deleted file mode 100644 index c555a7a34b..0000000000 --- a/.changeset/fifty-masks-give.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: run render functions for dynamic void elements diff --git a/.changeset/fifty-rice-wait.md b/.changeset/fifty-rice-wait.md deleted file mode 100644 index 1bc58dcfe0..0000000000 --- a/.changeset/fifty-rice-wait.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve each key animations diff --git a/.changeset/fifty-steaks-float.md b/.changeset/fifty-steaks-float.md deleted file mode 100644 index b100f215be..0000000000 --- a/.changeset/fifty-steaks-float.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: address unowned propagation signal issue diff --git a/.changeset/fifty-toys-invite.md b/.changeset/fifty-toys-invite.md deleted file mode 100644 index 2dd19c3b04..0000000000 --- a/.changeset/fifty-toys-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: never set custom element props as attributes inside templates diff --git a/.changeset/five-birds-check.md b/.changeset/five-birds-check.md deleted file mode 100644 index edf46bff53..0000000000 --- a/.changeset/five-birds-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: widen ownership upon property access if necessary diff --git a/.changeset/five-maps-reflect.md b/.changeset/five-maps-reflect.md deleted file mode 100644 index bdc8d6ec18..0000000000 --- a/.changeset/five-maps-reflect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure assignments to state field inside constructor trigger effects diff --git a/.changeset/five-shirts-run.md b/.changeset/five-shirts-run.md deleted file mode 100644 index 0a4f285c7d..0000000000 --- a/.changeset/five-shirts-run.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: use WAAPI to control timing of JS-based animations diff --git a/.changeset/five-suns-roll.md b/.changeset/five-suns-roll.md deleted file mode 100644 index ffd0ca44cf..0000000000 --- a/.changeset/five-suns-roll.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: don't show `state_referenced_locally` warning on types diff --git a/.changeset/five-tigers-search.md b/.changeset/five-tigers-search.md deleted file mode 100644 index fb345c559f..0000000000 --- a/.changeset/five-tigers-search.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: better readonly checks for proxies diff --git a/.changeset/flat-feet-visit.md b/.changeset/flat-feet-visit.md deleted file mode 100644 index 0d99c89318..0000000000 --- a/.changeset/flat-feet-visit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure bound input content is resumed on hydration diff --git a/.changeset/flat-flies-know.md b/.changeset/flat-flies-know.md deleted file mode 100644 index 2eebab1ebb..0000000000 --- a/.changeset/flat-flies-know.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: allow custom element events on slot to bubble inside custom element diff --git a/.changeset/flat-ghosts-fly.md b/.changeset/flat-ghosts-fly.md deleted file mode 100644 index bcd10f7066..0000000000 --- a/.changeset/flat-ghosts-fly.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make `legacy.componentApi` option more visible diff --git a/.changeset/flat-melons-protect.md b/.changeset/flat-melons-protect.md deleted file mode 100644 index 43a8c45754..0000000000 --- a/.changeset/flat-melons-protect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure `$$slots` exists in runes mode diff --git a/.changeset/flat-olives-live.md b/.changeset/flat-olives-live.md deleted file mode 100644 index 50c19e039d..0000000000 --- a/.changeset/flat-olives-live.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: set correct scope for `@const` tags within slots diff --git a/.changeset/fluffy-colts-grin.md b/.changeset/fluffy-colts-grin.md deleted file mode 100644 index f4023f454d..0000000000 --- a/.changeset/fluffy-colts-grin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: move dev-time component properties to private symbols' diff --git a/.changeset/fluffy-dolls-share.md b/.changeset/fluffy-dolls-share.md deleted file mode 100644 index 3eae889004..0000000000 --- a/.changeset/fluffy-dolls-share.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: implement nested CSS support diff --git a/.changeset/fluffy-humans-worry.md b/.changeset/fluffy-humans-worry.md deleted file mode 100644 index e5aab5e376..0000000000 --- a/.changeset/fluffy-humans-worry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: derive destructured derived objects values diff --git a/.changeset/fluffy-kings-complain.md b/.changeset/fluffy-kings-complain.md deleted file mode 100644 index 9eed7768d7..0000000000 --- a/.changeset/fluffy-kings-complain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: publish package provenance info diff --git a/.changeset/fluffy-ravens-juggle.md b/.changeset/fluffy-ravens-juggle.md deleted file mode 100644 index f458096360..0000000000 --- a/.changeset/fluffy-ravens-juggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve behaviour of unowned derived signals diff --git a/.changeset/forty-bikes-buy.md b/.changeset/forty-bikes-buy.md deleted file mode 100644 index 503c10451b..0000000000 --- a/.changeset/forty-bikes-buy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve validation error that occurs when using `{@render ...}` to render default slotted content diff --git a/.changeset/forty-chicken-heal.md b/.changeset/forty-chicken-heal.md deleted file mode 100644 index 6370c007b9..0000000000 --- a/.changeset/forty-chicken-heal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: use `internal_set` in `await` block diff --git a/.changeset/forty-comics-invent.md b/.changeset/forty-comics-invent.md deleted file mode 100644 index e507f3621d..0000000000 --- a/.changeset/forty-comics-invent.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: handle undefined bubble events diff --git a/.changeset/forty-dogs-divide.md b/.changeset/forty-dogs-divide.md deleted file mode 100644 index e0351241c6..0000000000 --- a/.changeset/forty-dogs-divide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve each block item equality for immutable mode diff --git a/.changeset/forty-dolls-wave.md b/.changeset/forty-dolls-wave.md deleted file mode 100644 index 6fccd773c0..0000000000 --- a/.changeset/forty-dolls-wave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: insert empty text nodes while hydrating, if necessary diff --git a/.changeset/forty-peaches-unite.md b/.changeset/forty-peaches-unite.md deleted file mode 100644 index b24993deb2..0000000000 --- a/.changeset/forty-peaches-unite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure unstate() only deeply applies to plain objects and arrays diff --git a/.changeset/forty-suns-smile.md b/.changeset/forty-suns-smile.md deleted file mode 100644 index 493b0b0474..0000000000 --- a/.changeset/forty-suns-smile.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: properly analyze group expressions diff --git a/.changeset/four-balloons-beam.md b/.changeset/four-balloons-beam.md deleted file mode 100644 index 4bb459c6d7..0000000000 --- a/.changeset/four-balloons-beam.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: mark function properties on runes as deprecated for better intellisense diff --git a/.changeset/four-flies-hammer.md b/.changeset/four-flies-hammer.md deleted file mode 100644 index b6d3770a4c..0000000000 --- a/.changeset/four-flies-hammer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve each block fallback handling diff --git a/.changeset/four-kids-flow.md b/.changeset/four-kids-flow.md deleted file mode 100644 index 894816dfb6..0000000000 --- a/.changeset/four-kids-flow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": minor ---- - -feat: make custom element `tag` property optional diff --git a/.changeset/four-mice-hammer.md b/.changeset/four-mice-hammer.md deleted file mode 100644 index 22d1af5925..0000000000 --- a/.changeset/four-mice-hammer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve internal proxied state signal heuristic diff --git a/.changeset/four-papayas-turn.md b/.changeset/four-papayas-turn.md deleted file mode 100644 index ceed9bdf71..0000000000 --- a/.changeset/four-papayas-turn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: reset hydrate node after `hydrate(...)` diff --git a/.changeset/four-peas-tickle.md b/.changeset/four-peas-tickle.md deleted file mode 100644 index 3ee45e80fc..0000000000 --- a/.changeset/four-peas-tickle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: remove internal `binding.expression` mechanism diff --git a/.changeset/four-pugs-listen.md b/.changeset/four-pugs-listen.md deleted file mode 100644 index 67e8057932..0000000000 --- a/.changeset/four-pugs-listen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: warn on slots and event handlers in runes mode, error on `` + `{@render ...}` tag usage in same component diff --git a/.changeset/four-yaks-boil.md b/.changeset/four-yaks-boil.md deleted file mode 100644 index ede6c1de19..0000000000 --- a/.changeset/four-yaks-boil.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: replace `$state.frozen` with `$state.raw` diff --git a/.changeset/fresh-beds-wash.md b/.changeset/fresh-beds-wash.md deleted file mode 100644 index a0cb72d402..0000000000 --- a/.changeset/fresh-beds-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: use coarse-grained updates for derived expressions passed to props in legacy mode diff --git a/.changeset/fresh-dots-destroy.md b/.changeset/fresh-dots-destroy.md deleted file mode 100644 index 867be39213..0000000000 --- a/.changeset/fresh-dots-destroy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add validation around disallowed sequence expressions to element attributes diff --git a/.changeset/fresh-houses-check.md b/.changeset/fresh-houses-check.md deleted file mode 100644 index f71ae286a0..0000000000 --- a/.changeset/fresh-houses-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve performance of scheduling effects diff --git a/.changeset/fresh-impalas-bow.md b/.changeset/fresh-impalas-bow.md deleted file mode 100644 index c0f1601afe..0000000000 --- a/.changeset/fresh-impalas-bow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: prevent window listeners from triggering events twice diff --git a/.changeset/fresh-walls-bathe.md b/.changeset/fresh-walls-bathe.md deleted file mode 100644 index 153e4671e4..0000000000 --- a/.changeset/fresh-walls-bathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: handle `this` parameter in TypeScript-annotated functions diff --git a/.changeset/fresh-weeks-trade.md b/.changeset/fresh-weeks-trade.md deleted file mode 100644 index 224db4c896..0000000000 --- a/.changeset/fresh-weeks-trade.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: make operations lazy diff --git a/.changeset/fresh-wombats-learn.md b/.changeset/fresh-wombats-learn.md deleted file mode 100644 index 838d3bace5..0000000000 --- a/.changeset/fresh-wombats-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow leading and trailing comments in mustache expression diff --git a/.changeset/fresh-zoos-burn.md b/.changeset/fresh-zoos-burn.md deleted file mode 100644 index 6b68a02726..0000000000 --- a/.changeset/fresh-zoos-burn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add createRawSnippet API diff --git a/.changeset/friendly-candles-relate.md b/.changeset/friendly-candles-relate.md deleted file mode 100644 index d9bde31819..0000000000 --- a/.changeset/friendly-candles-relate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow `let:` directives on slot elements diff --git a/.changeset/friendly-clouds-rhyme.md b/.changeset/friendly-clouds-rhyme.md deleted file mode 100644 index 6d6fa048de..0000000000 --- a/.changeset/friendly-clouds-rhyme.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: bump dts-buddy for better type generation diff --git a/.changeset/friendly-dryers-jog.md b/.changeset/friendly-dryers-jog.md deleted file mode 100644 index 02a20e6a6f..0000000000 --- a/.changeset/friendly-dryers-jog.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: further improve reconciliation of inert each block rows diff --git a/.changeset/friendly-lies-camp.md b/.changeset/friendly-lies-camp.md deleted file mode 100644 index fe88999868..0000000000 --- a/.changeset/friendly-lies-camp.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: warn on references to mutated non-state in template diff --git a/.changeset/friendly-rice-confess.md b/.changeset/friendly-rice-confess.md deleted file mode 100644 index 709925a097..0000000000 --- a/.changeset/friendly-rice-confess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add `$state.link` rune diff --git a/.changeset/friendly-taxis-hammer.md b/.changeset/friendly-taxis-hammer.md deleted file mode 100644 index 61d6ff9e20..0000000000 --- a/.changeset/friendly-taxis-hammer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add types for the search element diff --git a/.changeset/funny-bugs-kiss.md b/.changeset/funny-bugs-kiss.md deleted file mode 100644 index 1bc817c210..0000000000 --- a/.changeset/funny-bugs-kiss.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: avoid throwing `store_invalid_subscription_module` for runes diff --git a/.changeset/funny-cooks-clean.md b/.changeset/funny-cooks-clean.md deleted file mode 100644 index 93b891c9d0..0000000000 --- a/.changeset/funny-cooks-clean.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: better `render` type diff --git a/.changeset/funny-dragons-double.md b/.changeset/funny-dragons-double.md deleted file mode 100644 index 6a539769de..0000000000 --- a/.changeset/funny-dragons-double.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: simpler hydration of CSS custom property wrappers diff --git a/.changeset/funny-houses-kick.md b/.changeset/funny-houses-kick.md deleted file mode 100644 index e5bdd5c03c..0000000000 --- a/.changeset/funny-houses-kick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: migrate `$$Props` without creating non existent props diff --git a/.changeset/funny-ties-jump.md b/.changeset/funny-ties-jump.md deleted file mode 100644 index 9cea2bde9e..0000000000 --- a/.changeset/funny-ties-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure that CSS is generated for the final frame of a transition diff --git a/.changeset/funny-trees-cry.md b/.changeset/funny-trees-cry.md deleted file mode 100644 index 4f0a24e009..0000000000 --- a/.changeset/funny-trees-cry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: throw on invalid attribute expressions diff --git a/.changeset/funny-wombats-argue.md b/.changeset/funny-wombats-argue.md deleted file mode 100644 index 2d5a707a17..0000000000 --- a/.changeset/funny-wombats-argue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow svelte:self in snippets diff --git a/.changeset/fuzzy-bags-camp.md b/.changeset/fuzzy-bags-camp.md deleted file mode 100644 index eafc09cf27..0000000000 --- a/.changeset/fuzzy-bags-camp.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: add reactive Map class to svelte/reactivity diff --git a/.changeset/fuzzy-donuts-provide.md b/.changeset/fuzzy-donuts-provide.md deleted file mode 100644 index ae5333e6ec..0000000000 --- a/.changeset/fuzzy-donuts-provide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure effect cleanup functions are called with null `this` diff --git a/.changeset/fuzzy-tigers-swim.md b/.changeset/fuzzy-tigers-swim.md deleted file mode 100644 index bd9bca6736..0000000000 --- a/.changeset/fuzzy-tigers-swim.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure locally mutated bindable props persist with spreading props diff --git a/.changeset/gentle-dolls-juggle.md b/.changeset/gentle-dolls-juggle.md deleted file mode 100644 index 30b9ded59f..0000000000 --- a/.changeset/gentle-dolls-juggle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve global transition outro handling diff --git a/.changeset/gentle-eagles-walk.md b/.changeset/gentle-eagles-walk.md deleted file mode 100644 index 4ed6c5b3fe..0000000000 --- a/.changeset/gentle-eagles-walk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: wait a microtask for await blocks to reduce UI churn diff --git a/.changeset/gentle-needles-train.md b/.changeset/gentle-needles-train.md deleted file mode 100644 index 578d495062..0000000000 --- a/.changeset/gentle-needles-train.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: error on invalid element name diff --git a/.changeset/gentle-sheep-hug.md b/.changeset/gentle-sheep-hug.md deleted file mode 100644 index a2a852449c..0000000000 --- a/.changeset/gentle-sheep-hug.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: more validation errors diff --git a/.changeset/gentle-spies-happen.md b/.changeset/gentle-spies-happen.md deleted file mode 100644 index faee9e8d42..0000000000 --- a/.changeset/gentle-spies-happen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: more robust url equality check at dev time diff --git a/.changeset/gentle-ties-fetch.md b/.changeset/gentle-ties-fetch.md deleted file mode 100644 index 8302785811..0000000000 --- a/.changeset/gentle-ties-fetch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve controlled each block cleanup performance diff --git a/.changeset/gentle-toys-chew.md b/.changeset/gentle-toys-chew.md deleted file mode 100644 index dfc9f2013b..0000000000 --- a/.changeset/gentle-toys-chew.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow to access private fields after `this` reassignment diff --git a/.changeset/gentle-trees-exercise.md b/.changeset/gentle-trees-exercise.md deleted file mode 100644 index 7f658692b5..0000000000 --- a/.changeset/gentle-trees-exercise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow for non optional chain call expression in render diff --git a/.changeset/gentle-wasps-pull.md b/.changeset/gentle-wasps-pull.md deleted file mode 100644 index 0251323883..0000000000 --- a/.changeset/gentle-wasps-pull.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: allow classes to be reassigned diff --git a/.changeset/giant-bananas-turn.md b/.changeset/giant-bananas-turn.md deleted file mode 100644 index df4f40e5a8..0000000000 --- a/.changeset/giant-bananas-turn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: adjust order of `derived` function definition overloads diff --git a/.changeset/giant-jars-applaud.md b/.changeset/giant-jars-applaud.md deleted file mode 100644 index b338b3a822..0000000000 --- a/.changeset/giant-jars-applaud.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure hydration walks all nodes diff --git a/.changeset/giant-ladybugs-thank.md b/.changeset/giant-ladybugs-thank.md deleted file mode 100644 index 832c2373cf..0000000000 --- a/.changeset/giant-ladybugs-thank.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make immutable option work more correctly diff --git a/.changeset/giant-moons-own.md b/.changeset/giant-moons-own.md deleted file mode 100644 index 7568f3868d..0000000000 --- a/.changeset/giant-moons-own.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve invalid nested interactive element error diff --git a/.changeset/giant-planets-shake.md b/.changeset/giant-planets-shake.md deleted file mode 100644 index 1197567abd..0000000000 --- a/.changeset/giant-planets-shake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve namespace inference when having `{@render}` and `{@html}` tags diff --git a/.changeset/giant-plants-grin.md b/.changeset/giant-plants-grin.md deleted file mode 100644 index 4f5db1712a..0000000000 --- a/.changeset/giant-plants-grin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: keep sibling selectors when dealing with slots/render tags/`svelte:element` tags diff --git a/.changeset/giant-roses-press.md b/.changeset/giant-roses-press.md deleted file mode 100644 index 68069e0273..0000000000 --- a/.changeset/giant-roses-press.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: support dynamic transition functions diff --git a/.changeset/gold-pens-sell.md b/.changeset/gold-pens-sell.md deleted file mode 100644 index 945c795890..0000000000 --- a/.changeset/gold-pens-sell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: support migrating `svelte:self` diff --git a/.changeset/gold-students-jump.md b/.changeset/gold-students-jump.md deleted file mode 100644 index d38393554a..0000000000 --- a/.changeset/gold-students-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: treat tag with `.` as a component, even if lowercase diff --git a/.changeset/gold-tools-nail.md b/.changeset/gold-tools-nail.md deleted file mode 100644 index 7e99bd67a4..0000000000 --- a/.changeset/gold-tools-nail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure top level snippets are defined when binding to component prop diff --git a/.changeset/good-buses-reply.md b/.changeset/good-buses-reply.md deleted file mode 100644 index e760523f96..0000000000 --- a/.changeset/good-buses-reply.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: allow dynamic `type` attribute with `bind:value` diff --git a/.changeset/good-cars-visit.md b/.changeset/good-cars-visit.md deleted file mode 100644 index 38e71d6633..0000000000 --- a/.changeset/good-cars-visit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: allow input elements within button elements diff --git a/.changeset/good-kings-try.md b/.changeset/good-kings-try.md deleted file mode 100644 index b2239f91a2..0000000000 --- a/.changeset/good-kings-try.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add `migration-task` for impossible to migrate slots diff --git a/.changeset/good-pianos-jump.md b/.changeset/good-pianos-jump.md deleted file mode 100644 index 0ae35e5937..0000000000 --- a/.changeset/good-pianos-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: check that snippet is not rendered as a component diff --git a/.changeset/good-plums-type.md b/.changeset/good-plums-type.md deleted file mode 100644 index 9a1d8965f3..0000000000 --- a/.changeset/good-plums-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: set correct component context when rendering snippets diff --git a/.changeset/good-rice-tap.md b/.changeset/good-rice-tap.md deleted file mode 100644 index 73706bb988..0000000000 --- a/.changeset/good-rice-tap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: expose `CompileError` interface, not class diff --git a/.changeset/good-rivers-yawn.md b/.changeset/good-rivers-yawn.md deleted file mode 100644 index c0206f2b9e..0000000000 --- a/.changeset/good-rivers-yawn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: handle member expressions in directives diff --git a/.changeset/good-roses-argue.md b/.changeset/good-roses-argue.md deleted file mode 100644 index 2191aeb6ef..0000000000 --- a/.changeset/good-roses-argue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correctly handle falsy values of style directives in SSR mode diff --git a/.changeset/good-vans-bake.md b/.changeset/good-vans-bake.md deleted file mode 100644 index 8f3917acc7..0000000000 --- a/.changeset/good-vans-bake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: support migration of `svelte:component` diff --git a/.changeset/good-zebras-turn.md b/.changeset/good-zebras-turn.md deleted file mode 100644 index b2d8d8f3b6..0000000000 --- a/.changeset/good-zebras-turn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: wait until template strings are complete before sanitizing diff --git a/.changeset/gorgeous-boxes-design.md b/.changeset/gorgeous-boxes-design.md deleted file mode 100644 index 5496f6f1fd..0000000000 --- a/.changeset/gorgeous-boxes-design.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure state update expressions are serialised correctly diff --git a/.changeset/gorgeous-coats-jog.md b/.changeset/gorgeous-coats-jog.md deleted file mode 100644 index 0b69c9a966..0000000000 --- a/.changeset/gorgeous-coats-jog.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: remove foreign namespace diff --git a/.changeset/gorgeous-hats-wonder.md b/.changeset/gorgeous-hats-wonder.md deleted file mode 100644 index e1ce7bdaed..0000000000 --- a/.changeset/gorgeous-hats-wonder.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure element size bindings don't unsubscribe multiple times from the resize observer diff --git a/.changeset/gorgeous-monkeys-carry.md b/.changeset/gorgeous-monkeys-carry.md deleted file mode 100644 index 44bdaedf76..0000000000 --- a/.changeset/gorgeous-monkeys-carry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: skip AST analysis of TypeScript AST nodes diff --git a/.changeset/gorgeous-pans-sort.md b/.changeset/gorgeous-pans-sort.md deleted file mode 100644 index 8ed57cadbb..0000000000 --- a/.changeset/gorgeous-pans-sort.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: allow frozen objects to be proxied diff --git a/.changeset/gorgeous-singers-rest.md b/.changeset/gorgeous-singers-rest.md deleted file mode 100644 index 5625c2764a..0000000000 --- a/.changeset/gorgeous-singers-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: add hydrate method, make hydration treeshakeable diff --git a/.changeset/great-dots-wonder.md b/.changeset/great-dots-wonder.md deleted file mode 100644 index 99676035dd..0000000000 --- a/.changeset/great-dots-wonder.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: support migration of single assignment labeled statements diff --git a/.changeset/great-fans-unite.md b/.changeset/great-fans-unite.md deleted file mode 100644 index 813edfa99a..0000000000 --- a/.changeset/great-fans-unite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: cleanup derived destruction diff --git a/.changeset/great-icons-retire.md b/.changeset/great-icons-retire.md deleted file mode 100644 index 53b789db25..0000000000 --- a/.changeset/great-icons-retire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: allow `bind:this` with dynamic type on inputs diff --git a/.changeset/great-plums-pretend.md b/.changeset/great-plums-pretend.md deleted file mode 100644 index 81f944d036..0000000000 --- a/.changeset/great-plums-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: only create a maximum of one document event listener per event diff --git a/.changeset/green-baboons-sip.md b/.changeset/green-baboons-sip.md deleted file mode 100644 index 91d7902867..0000000000 --- a/.changeset/green-baboons-sip.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure $inspect works with SvelteMap and SvelteSet diff --git a/.changeset/green-cameras-bake.md b/.changeset/green-cameras-bake.md deleted file mode 100644 index 311e1b9744..0000000000 --- a/.changeset/green-cameras-bake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: take snippets into account when scoping CSS diff --git a/.changeset/green-eggs-approve.md b/.changeset/green-eggs-approve.md deleted file mode 100644 index 90c7ec357e..0000000000 --- a/.changeset/green-eggs-approve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: adjust mount and createRoot types diff --git a/.changeset/green-fishes-lie.md b/.changeset/green-fishes-lie.md deleted file mode 100644 index 2d890d16d7..0000000000 --- a/.changeset/green-fishes-lie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: only initiate scroll if scroll binding has existing value diff --git a/.changeset/green-hounds-play.md b/.changeset/green-hounds-play.md deleted file mode 100644 index 6a2922d0d5..0000000000 --- a/.changeset/green-hounds-play.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: deconflict generated names against globals diff --git a/.changeset/green-snails-tickle.md b/.changeset/green-snails-tickle.md deleted file mode 100644 index c7a63dd991..0000000000 --- a/.changeset/green-snails-tickle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: use svg methods for updating svg attributes too diff --git a/.changeset/green-tigers-judge.md b/.changeset/green-tigers-judge.md deleted file mode 100644 index b3548bd11f..0000000000 --- a/.changeset/green-tigers-judge.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve handling of unowned derived signals diff --git a/.changeset/green-walls-clap.md b/.changeset/green-walls-clap.md deleted file mode 100644 index 164083db7a..0000000000 --- a/.changeset/green-walls-clap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: remove `$state.link` rune pending further design work diff --git a/.changeset/green-windows-tap.md b/.changeset/green-windows-tap.md deleted file mode 100644 index 964d6373bc..0000000000 --- a/.changeset/green-windows-tap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: handle deletions of previously-unread state proxy properties diff --git a/.changeset/grumpy-avocados-fetch.md b/.changeset/grumpy-avocados-fetch.md deleted file mode 100644 index 8c1dcf5bed..0000000000 --- a/.changeset/grumpy-avocados-fetch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: further adjust heuristics for effect_update_depth_exceeded diff --git a/.changeset/grumpy-insects-sleep.md b/.changeset/grumpy-insects-sleep.md deleted file mode 100644 index e6c2fea660..0000000000 --- a/.changeset/grumpy-insects-sleep.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: disallow using `let:` directives with component render tags diff --git a/.changeset/grumpy-jars-sparkle.md b/.changeset/grumpy-jars-sparkle.md deleted file mode 100644 index 8cf5bd877b..0000000000 --- a/.changeset/grumpy-jars-sparkle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correctly handle closure passed to $derived.by when destructuring diff --git a/.changeset/happy-beds-scream.md b/.changeset/happy-beds-scream.md deleted file mode 100644 index 2a82aff9ba..0000000000 --- a/.changeset/happy-beds-scream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: don't collapse whitespace within text nodes diff --git a/.changeset/happy-dogs-jump.md b/.changeset/happy-dogs-jump.md deleted file mode 100644 index 1a10b3e804..0000000000 --- a/.changeset/happy-dogs-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: capture the correct event names when spreading attributes diff --git a/.changeset/happy-dolls-joke.md b/.changeset/happy-dolls-joke.md deleted file mode 100644 index 8966d5ad2f..0000000000 --- a/.changeset/happy-dolls-joke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: better compile errors for invalid tag names/placement diff --git a/.changeset/happy-eggs-rest.md b/.changeset/happy-eggs-rest.md deleted file mode 100644 index d3c39085f6..0000000000 --- a/.changeset/happy-eggs-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure each block consistency to internal mutations to the collection diff --git a/.changeset/happy-lobsters-lick.md b/.changeset/happy-lobsters-lick.md deleted file mode 100644 index e4f68f04e7..0000000000 --- a/.changeset/happy-lobsters-lick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: repair each block length even without an else diff --git a/.changeset/happy-moles-live.md b/.changeset/happy-moles-live.md deleted file mode 100644 index c73be815b0..0000000000 --- a/.changeset/happy-moles-live.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure hmr block effects are transparent for transitions diff --git a/.changeset/happy-planets-rest.md b/.changeset/happy-planets-rest.md deleted file mode 100644 index 70b7a56f3a..0000000000 --- a/.changeset/happy-planets-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: remove sapper bindings diff --git a/.changeset/happy-suits-film.md b/.changeset/happy-suits-film.md deleted file mode 100644 index 84fdcbdb82..0000000000 --- a/.changeset/happy-suits-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve attribute directive reactivity detection diff --git a/.changeset/healthy-ants-film.md b/.changeset/healthy-ants-film.md deleted file mode 100644 index f4fa0a19b1..0000000000 --- a/.changeset/healthy-ants-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow `bind:this` on `` `

      `/`
      ` elements if they are within a `
      ` element diff --git a/.changeset/metal-cameras-jump.md b/.changeset/metal-cameras-jump.md deleted file mode 100644 index 55943c833c..0000000000 --- a/.changeset/metal-cameras-jump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure types are easier to follow for TypeScript diff --git a/.changeset/metal-clouds-raise.md b/.changeset/metal-clouds-raise.md deleted file mode 100644 index 9693100fb3..0000000000 --- a/.changeset/metal-clouds-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: move compiler.cjs to compiler/index.js diff --git a/.changeset/metal-lobsters-burn.md b/.changeset/metal-lobsters-burn.md deleted file mode 100644 index b1e241554e..0000000000 --- a/.changeset/metal-lobsters-burn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: update type of `options.target` diff --git a/.changeset/metal-pans-trade.md b/.changeset/metal-pans-trade.md deleted file mode 100644 index 5c0feea516..0000000000 --- a/.changeset/metal-pans-trade.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: better support for onwheel events in chrome diff --git a/.changeset/mighty-cooks-scream.md b/.changeset/mighty-cooks-scream.md deleted file mode 100644 index 3d3e662fce..0000000000 --- a/.changeset/mighty-cooks-scream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: adjust scope parent for named slots diff --git a/.changeset/mighty-files-hammer.md b/.changeset/mighty-files-hammer.md deleted file mode 100644 index 889e3482d3..0000000000 --- a/.changeset/mighty-files-hammer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: throw validation error when binding to each argument in runes mode diff --git a/.changeset/mighty-frogs-obey.md b/.changeset/mighty-frogs-obey.md deleted file mode 100644 index 0321c60463..0000000000 --- a/.changeset/mighty-frogs-obey.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure deep mutation ownership widening diff --git a/.changeset/mighty-paws-smash.md b/.changeset/mighty-paws-smash.md deleted file mode 100644 index 56f707e10e..0000000000 --- a/.changeset/mighty-paws-smash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: stricter control flow syntax validation in runes mode diff --git a/.changeset/mighty-poets-fix.md b/.changeset/mighty-poets-fix.md deleted file mode 100644 index e41517360e..0000000000 --- a/.changeset/mighty-poets-fix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: default options.filename to "(unknown)" diff --git a/.changeset/mighty-shoes-nail.md b/.changeset/mighty-shoes-nail.md deleted file mode 100644 index 0a758d5f6b..0000000000 --- a/.changeset/mighty-shoes-nail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure element dir properties persist with text changes diff --git a/.changeset/modern-apricots-promise.md b/.changeset/modern-apricots-promise.md deleted file mode 100644 index 5efd5e8e2a..0000000000 --- a/.changeset/modern-apricots-promise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: prevent buggy ownership warning when reassigning state diff --git a/.changeset/modern-fishes-double.md b/.changeset/modern-fishes-double.md deleted file mode 100644 index f512654f0a..0000000000 --- a/.changeset/modern-fishes-double.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: bump dts-buddy diff --git a/.changeset/modern-peaches-cheer.md b/.changeset/modern-peaches-cheer.md deleted file mode 100644 index b02545e091..0000000000 --- a/.changeset/modern-peaches-cheer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: remove implicit passive behavior from OnDirective events diff --git a/.changeset/moody-carrots-lay.md b/.changeset/moody-carrots-lay.md deleted file mode 100644 index e10729bc60..0000000000 --- a/.changeset/moody-carrots-lay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: don't execute scripts inside `@html` when instantiated on the client diff --git a/.changeset/moody-frogs-exist.md b/.changeset/moody-frogs-exist.md deleted file mode 100644 index c9eb0c6790..0000000000 --- a/.changeset/moody-frogs-exist.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve member expression mutation logic diff --git a/.changeset/moody-ghosts-buy.md b/.changeset/moody-ghosts-buy.md deleted file mode 100644 index 25aee46cd5..0000000000 --- a/.changeset/moody-ghosts-buy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: leave view transition pseudo selectors untouched diff --git a/.changeset/moody-houses-argue.md b/.changeset/moody-houses-argue.md deleted file mode 100644 index 85f303af54..0000000000 --- a/.changeset/moody-houses-argue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: prevent reactive statement reruns when they have indirect cyclic dependencies diff --git a/.changeset/moody-lions-watch.md b/.changeset/moody-lions-watch.md deleted file mode 100644 index 8efd727883..0000000000 --- a/.changeset/moody-lions-watch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: remove runtime validation of components/snippets, rely on types instead diff --git a/.changeset/moody-owls-cry.md b/.changeset/moody-owls-cry.md deleted file mode 100644 index 0d94131ee9..0000000000 --- a/.changeset/moody-owls-cry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: exclude internal props from spread attributes diff --git a/.changeset/moody-pugs-tan.md b/.changeset/moody-pugs-tan.md deleted file mode 100644 index 3881ddb5cf..0000000000 --- a/.changeset/moody-pugs-tan.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure legacy run utility does not cause cycles diff --git a/.changeset/moody-sheep-type.md b/.changeset/moody-sheep-type.md deleted file mode 100644 index b218d70bad..0000000000 --- a/.changeset/moody-sheep-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: make `bind_this` implementation more robust diff --git a/.changeset/moody-toys-relax.md b/.changeset/moody-toys-relax.md deleted file mode 100644 index 236fa089c4..0000000000 --- a/.changeset/moody-toys-relax.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: preserve current input values when removing defaults diff --git a/.changeset/nasty-carrots-develop.md b/.changeset/nasty-carrots-develop.md deleted file mode 100644 index 3f793686a6..0000000000 --- a/.changeset/nasty-carrots-develop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure async initial store value is noticed diff --git a/.changeset/nasty-eggs-walk.md b/.changeset/nasty-eggs-walk.md deleted file mode 100644 index 2e4b061dd5..0000000000 --- a/.changeset/nasty-eggs-walk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: separate `template_effect` for dynamic class/style directive with dynamic attributes diff --git a/.changeset/nasty-glasses-begin.md b/.changeset/nasty-glasses-begin.md deleted file mode 100644 index 7a7621b2ec..0000000000 --- a/.changeset/nasty-glasses-begin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: rewrite state_unsafe_mutation message diff --git a/.changeset/nasty-lions-double.md b/.changeset/nasty-lions-double.md deleted file mode 100644 index 404e08168d..0000000000 --- a/.changeset/nasty-lions-double.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve pseudo class parsing diff --git a/.changeset/nasty-mayflies-smoke.md b/.changeset/nasty-mayflies-smoke.md deleted file mode 100644 index 495054744e..0000000000 --- a/.changeset/nasty-mayflies-smoke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: warn if binding to a non-reactive property diff --git a/.changeset/nasty-penguins-pump.md b/.changeset/nasty-penguins-pump.md deleted file mode 100644 index c7bdf1ddc6..0000000000 --- a/.changeset/nasty-penguins-pump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add cleanup function signature to `createRawSnippet` diff --git a/.changeset/nasty-teachers-end.md b/.changeset/nasty-teachers-end.md deleted file mode 100644 index ee84cce019..0000000000 --- a/.changeset/nasty-teachers-end.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: tell users of `@migration-task` diff --git a/.changeset/nasty-yaks-peel.md b/.changeset/nasty-yaks-peel.md deleted file mode 100644 index 267e4458a5..0000000000 --- a/.changeset/nasty-yaks-peel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: support async/await in destructuring assignments diff --git a/.changeset/neat-boats-shake.md b/.changeset/neat-boats-shake.md deleted file mode 100644 index 0df653d14c..0000000000 --- a/.changeset/neat-boats-shake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: only escape characters in SSR template diff --git a/.changeset/neat-boxes-chew.md b/.changeset/neat-boxes-chew.md deleted file mode 100644 index 62e92ed0d6..0000000000 --- a/.changeset/neat-boxes-chew.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: bail-out of hydrating head if no anchor is found diff --git a/.changeset/neat-dingos-clap.md b/.changeset/neat-dingos-clap.md deleted file mode 100644 index 6954c6cd40..0000000000 --- a/.changeset/neat-dingos-clap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: tweak invalid dollar prefix rules around function args diff --git a/.changeset/neat-ducks-jam.md b/.changeset/neat-ducks-jam.md deleted file mode 100644 index 42d79a5544..0000000000 --- a/.changeset/neat-ducks-jam.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: skip over static subtrees diff --git a/.changeset/neat-files-rescue.md b/.changeset/neat-files-rescue.md deleted file mode 100644 index 667e70ddfc..0000000000 --- a/.changeset/neat-files-rescue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: re-export built-ins from `svelte/reactivity` on the server diff --git a/.changeset/neat-jokes-beam.md b/.changeset/neat-jokes-beam.md deleted file mode 100644 index 9e15dcef12..0000000000 --- a/.changeset/neat-jokes-beam.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: enusre dev validation in dynamic component works as intended diff --git a/.changeset/neat-rabbits-divide.md b/.changeset/neat-rabbits-divide.md deleted file mode 100644 index ffe57a6f18..0000000000 --- a/.changeset/neat-rabbits-divide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correct migration of uninitialised state diff --git a/.changeset/neat-ways-allow.md b/.changeset/neat-ways-allow.md deleted file mode 100644 index 9e821f6c7d..0000000000 --- a/.changeset/neat-ways-allow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: enable snippets to fill slots diff --git a/.changeset/nervous-adults-sell.md b/.changeset/nervous-adults-sell.md deleted file mode 100644 index a7bad9bda8..0000000000 --- a/.changeset/nervous-adults-sell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure `$store` reads are properly transformed diff --git a/.changeset/nervous-berries-boil.md b/.changeset/nervous-berries-boil.md deleted file mode 100644 index c14195f32d..0000000000 --- a/.changeset/nervous-berries-boil.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: only inject push/init/pop when necessary diff --git a/.changeset/nervous-chefs-exist.md b/.changeset/nervous-chefs-exist.md deleted file mode 100644 index c73b9818c3..0000000000 --- a/.changeset/nervous-chefs-exist.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: treat `` alt attribute as content for a11y labelling purposes diff --git a/.changeset/nervous-dolphins-allow.md b/.changeset/nervous-dolphins-allow.md deleted file mode 100644 index c59dc94c06..0000000000 --- a/.changeset/nervous-dolphins-allow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: add warning for invalid render function of createRawSnippet diff --git a/.changeset/nervous-ducks-repeat.md b/.changeset/nervous-ducks-repeat.md deleted file mode 100644 index 3d07becb09..0000000000 --- a/.changeset/nervous-ducks-repeat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: better binding interop between runes/non-runes components diff --git a/.changeset/nervous-spoons-relax.md b/.changeset/nervous-spoons-relax.md deleted file mode 100644 index 9480a8ac47..0000000000 --- a/.changeset/nervous-spoons-relax.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: add $derived.call rune diff --git a/.changeset/nervous-squids-drop.md b/.changeset/nervous-squids-drop.md deleted file mode 100644 index 3e2ad4485b..0000000000 --- a/.changeset/nervous-squids-drop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: scope `:not(...)` selectors diff --git a/.changeset/nervous-turkeys-end.md b/.changeset/nervous-turkeys-end.md deleted file mode 100644 index a6235a52bd..0000000000 --- a/.changeset/nervous-turkeys-end.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve spreading of attributes diff --git a/.changeset/new-baboons-fetch.md b/.changeset/new-baboons-fetch.md deleted file mode 100644 index f70b82ed37..0000000000 --- a/.changeset/new-baboons-fetch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: don't make wheel events passive by default diff --git a/.changeset/new-boats-wait.md b/.changeset/new-boats-wait.md deleted file mode 100644 index b7f09bd0a6..0000000000 --- a/.changeset/new-boats-wait.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: bump esrap diff --git a/.changeset/new-brooms-grin.md b/.changeset/new-brooms-grin.md deleted file mode 100644 index e69482dfa7..0000000000 --- a/.changeset/new-brooms-grin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure transition errors are not swallowed diff --git a/.changeset/new-cooks-roll.md b/.changeset/new-cooks-roll.md deleted file mode 100644 index d13c52a799..0000000000 --- a/.changeset/new-cooks-roll.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: add error for derived self referencing diff --git a/.changeset/new-rabbits-flow.md b/.changeset/new-rabbits-flow.md deleted file mode 100644 index 273496b2ae..0000000000 --- a/.changeset/new-rabbits-flow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: add reactive Date object to svelte/reactivity diff --git a/.changeset/nice-avocados-move.md b/.changeset/nice-avocados-move.md deleted file mode 100644 index 49f6ed2169..0000000000 --- a/.changeset/nice-avocados-move.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve ssr output of dynamic textarea elements diff --git a/.changeset/nice-bottles-greet.md b/.changeset/nice-bottles-greet.md deleted file mode 100644 index 88864809fe..0000000000 --- a/.changeset/nice-bottles-greet.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: skip `is_standalone` optimisation for dynamic components diff --git a/.changeset/nice-brooms-battle.md b/.changeset/nice-brooms-battle.md deleted file mode 100644 index 09501f5c3b..0000000000 --- a/.changeset/nice-brooms-battle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make ownership widening more robust to userland proxies diff --git a/.changeset/nice-jobs-breathe.md b/.changeset/nice-jobs-breathe.md deleted file mode 100644 index 0c77cce75c..0000000000 --- a/.changeset/nice-jobs-breathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: rename `svelte/reactivity` helpers to include `Svelte` prefix diff --git a/.changeset/nine-ants-invite.md b/.changeset/nine-ants-invite.md deleted file mode 100644 index fdf33c27a9..0000000000 --- a/.changeset/nine-ants-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: invalidate signals following ++/-- inside each block diff --git a/.changeset/nine-cooks-join.md b/.changeset/nine-cooks-join.md deleted file mode 100644 index c2cc16965a..0000000000 --- a/.changeset/nine-cooks-join.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: warn on self-closing non-void HTML tags diff --git a/.changeset/nine-kids-whisper.md b/.changeset/nine-kids-whisper.md deleted file mode 100644 index 5b11743c52..0000000000 --- a/.changeset/nine-kids-whisper.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly migrate `$$slots` with bracket member expressions & slots with static props diff --git a/.changeset/nine-vans-admire.md b/.changeset/nine-vans-admire.md deleted file mode 100644 index 5ede9fdbbf..0000000000 --- a/.changeset/nine-vans-admire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve derived ownership model diff --git a/.changeset/ninety-days-visit.md b/.changeset/ninety-days-visit.md deleted file mode 100644 index 51e6e5267e..0000000000 --- a/.changeset/ninety-days-visit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: support function invocation from imported `*.svelte` components diff --git a/.changeset/ninety-dingos-walk.md b/.changeset/ninety-dingos-walk.md deleted file mode 100644 index 9a86f55552..0000000000 --- a/.changeset/ninety-dingos-walk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: keep fallback value after spread update not setting that prop diff --git a/.changeset/ninety-dots-train.md b/.changeset/ninety-dots-train.md deleted file mode 100644 index 2afde212b1..0000000000 --- a/.changeset/ninety-dots-train.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: detect style shorthands as stateful variables in legacy mode diff --git a/.changeset/ninety-months-laugh.md b/.changeset/ninety-months-laugh.md deleted file mode 100644 index eff716c760..0000000000 --- a/.changeset/ninety-months-laugh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure effects destroy owned deriveds upon teardown diff --git a/.changeset/ninety-rockets-battle.md b/.changeset/ninety-rockets-battle.md deleted file mode 100644 index 9d70e42ad0..0000000000 --- a/.changeset/ninety-rockets-battle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow for more svelte-ignore to work diff --git a/.changeset/odd-buckets-lie.md b/.changeset/odd-buckets-lie.md deleted file mode 100644 index 240cf02d9a..0000000000 --- a/.changeset/odd-buckets-lie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve code generation diff --git a/.changeset/odd-needles-joke.md b/.changeset/odd-needles-joke.md deleted file mode 100644 index 94d2f1f585..0000000000 --- a/.changeset/odd-needles-joke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: address intro transition bugs diff --git a/.changeset/odd-schools-wait.md b/.changeset/odd-schools-wait.md deleted file mode 100644 index 11fe1bdbac..0000000000 --- a/.changeset/odd-schools-wait.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: untrack keyed validation logic diff --git a/.changeset/odd-shirts-hear.md b/.changeset/odd-shirts-hear.md deleted file mode 100644 index cc49c393d9..0000000000 --- a/.changeset/odd-shirts-hear.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: Add accessibility warnings for buttons and anchors without explicit labels and content diff --git a/.changeset/odd-shoes-cheat.md b/.changeset/odd-shoes-cheat.md deleted file mode 100644 index 05f652e2cc..0000000000 --- a/.changeset/odd-shoes-cheat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: tweak const tag parsing diff --git a/.changeset/odd-taxis-retire.md b/.changeset/odd-taxis-retire.md deleted file mode 100644 index b60a450c3a..0000000000 --- a/.changeset/odd-taxis-retire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: disallow exporting props, derived and reassigned state from within components diff --git a/.changeset/odd-toys-glow.md b/.changeset/odd-toys-glow.md deleted file mode 100644 index cc09a78ea2..0000000000 --- a/.changeset/odd-toys-glow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve performance of DOM traversal operations diff --git a/.changeset/old-flies-jog.md b/.changeset/old-flies-jog.md deleted file mode 100644 index aa207c47e1..0000000000 --- a/.changeset/old-flies-jog.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure generated code does not use keywords as variable names diff --git a/.changeset/old-houses-drum.md b/.changeset/old-houses-drum.md deleted file mode 100644 index 78f26ee549..0000000000 --- a/.changeset/old-houses-drum.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: provide `unstate` in server environment diff --git a/.changeset/old-jokes-deliver.md b/.changeset/old-jokes-deliver.md deleted file mode 100644 index 1aa08fe7be..0000000000 --- a/.changeset/old-jokes-deliver.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: prevent infinite loop when writing to store using shorthand diff --git a/.changeset/old-mails-sneeze.md b/.changeset/old-mails-sneeze.md deleted file mode 100644 index adbaa29fff..0000000000 --- a/.changeset/old-mails-sneeze.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure action function returns object diff --git a/.changeset/old-oranges-compete.md b/.changeset/old-oranges-compete.md deleted file mode 100644 index cf5b699546..0000000000 --- a/.changeset/old-oranges-compete.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve key block reactivity detection diff --git a/.changeset/old-planets-bow.md b/.changeset/old-planets-bow.md deleted file mode 100644 index c10fde017f..0000000000 --- a/.changeset/old-planets-bow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow mixing slots and snippets in custom elements mode diff --git a/.changeset/old-planets-kiss.md b/.changeset/old-planets-kiss.md deleted file mode 100644 index ad258f6b2f..0000000000 --- a/.changeset/old-planets-kiss.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: only warn on context="module" in runes mode diff --git a/.changeset/old-spoons-pull.md b/.changeset/old-spoons-pull.md deleted file mode 100644 index 15de7e6e6c..0000000000 --- a/.changeset/old-spoons-pull.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: deprecate `` in runes mode diff --git a/.changeset/olive-apples-lick.md b/.changeset/olive-apples-lick.md deleted file mode 100644 index 207a88f306..0000000000 --- a/.changeset/olive-apples-lick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: check if svelte component exists on custom element destroy diff --git a/.changeset/olive-cobras-wonder.md b/.changeset/olive-cobras-wonder.md deleted file mode 100644 index 331d61a404..0000000000 --- a/.changeset/olive-cobras-wonder.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: disallow accessing internal Svelte props diff --git a/.changeset/olive-forks-grin.md b/.changeset/olive-forks-grin.md deleted file mode 100644 index 6b66827c86..0000000000 --- a/.changeset/olive-forks-grin.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure unowned deriveds correctly update diff --git a/.changeset/olive-kangaroos-brake.md b/.changeset/olive-kangaroos-brake.md deleted file mode 100644 index 68f3d40704..0000000000 --- a/.changeset/olive-kangaroos-brake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve internal signal dependency checking logic diff --git a/.changeset/olive-llamas-warn.md b/.changeset/olive-llamas-warn.md deleted file mode 100644 index 4cfbf1a763..0000000000 --- a/.changeset/olive-llamas-warn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: properly transform destructured `$derived.by` declarations diff --git a/.changeset/olive-mice-fix.md b/.changeset/olive-mice-fix.md deleted file mode 100644 index b3548bd11f..0000000000 --- a/.changeset/olive-mice-fix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve handling of unowned derived signals diff --git a/.changeset/olive-moons-act.md b/.changeset/olive-moons-act.md deleted file mode 100644 index dcfe7c3e7c..0000000000 --- a/.changeset/olive-moons-act.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: hot module reloading support for Svelte 5 diff --git a/.changeset/olive-seals-sell.md b/.changeset/olive-seals-sell.md deleted file mode 100644 index 45b7b31073..0000000000 --- a/.changeset/olive-seals-sell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: bump zimmerframe to resolve AST-traversal-related bugs diff --git a/.changeset/olive-shirts-complain.md b/.changeset/olive-shirts-complain.md deleted file mode 100644 index 56387284db..0000000000 --- a/.changeset/olive-shirts-complain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: react to mutated slot props in legacy mode diff --git a/.changeset/olive-socks-kick.md b/.changeset/olive-socks-kick.md deleted file mode 100644 index a45b35292e..0000000000 --- a/.changeset/olive-socks-kick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: repair each block length mismatches during hydration diff --git a/.changeset/orange-comics-prove.md b/.changeset/orange-comics-prove.md deleted file mode 100644 index 2e04aebb17..0000000000 --- a/.changeset/orange-comics-prove.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: append start/end info to `AssignmentPattern` and `VariableDeclarator` diff --git a/.changeset/orange-crews-rescue.md b/.changeset/orange-crews-rescue.md deleted file mode 100644 index e45228711e..0000000000 --- a/.changeset/orange-crews-rescue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve handling of object property deletions diff --git a/.changeset/orange-dingos-poke.md b/.changeset/orange-dingos-poke.md deleted file mode 100644 index 3e9e6b8ade..0000000000 --- a/.changeset/orange-dingos-poke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: add types for popover attributes and events diff --git a/.changeset/orange-laws-drop.md b/.changeset/orange-laws-drop.md deleted file mode 100644 index 99a594c9e0..0000000000 --- a/.changeset/orange-laws-drop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: more efficient checking for missing SSR text node diff --git a/.changeset/orange-masks-exercise.md b/.changeset/orange-masks-exercise.md deleted file mode 100644 index 76fdc4aab8..0000000000 --- a/.changeset/orange-masks-exercise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: disallow sequence expressions in `@const` tags diff --git a/.changeset/orange-sheep-exist.md b/.changeset/orange-sheep-exist.md deleted file mode 100644 index fe10bb0132..0000000000 --- a/.changeset/orange-sheep-exist.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: insert comment before text in an each block, to prevent glued nodes diff --git a/.changeset/orange-yaks-protect.md b/.changeset/orange-yaks-protect.md deleted file mode 100644 index 9742c90936..0000000000 --- a/.changeset/orange-yaks-protect.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make `set.has(...)` granular for existing properties' diff --git a/.changeset/orange-zoos-heal.md b/.changeset/orange-zoos-heal.md deleted file mode 100644 index f134a4b8a2..0000000000 --- a/.changeset/orange-zoos-heal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: provide migration helper diff --git a/.changeset/perfect-actors-bake.md b/.changeset/perfect-actors-bake.md deleted file mode 100644 index 013f15d67f..0000000000 --- a/.changeset/perfect-actors-bake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: use structuredClone inside `$state.snapshot` diff --git a/.changeset/perfect-ants-allow.md b/.changeset/perfect-ants-allow.md deleted file mode 100644 index 0d4e5a05bf..0000000000 --- a/.changeset/perfect-ants-allow.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: set strings as attributes, non-strings as properties if property exists diff --git a/.changeset/perfect-avocados-greet.md b/.changeset/perfect-avocados-greet.md deleted file mode 100644 index 9e1d6785c8..0000000000 --- a/.changeset/perfect-avocados-greet.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: higher fidelity event migration diff --git a/.changeset/perfect-cooks-shop.md b/.changeset/perfect-cooks-shop.md deleted file mode 100644 index b698e6a648..0000000000 --- a/.changeset/perfect-cooks-shop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: error at compile time on unsupported TypeScript language features diff --git a/.changeset/perfect-hairs-matter.md b/.changeset/perfect-hairs-matter.md deleted file mode 100644 index 8ec02f7507..0000000000 --- a/.changeset/perfect-hairs-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: better code generation for destructuring assignments diff --git a/.changeset/perfect-hats-dance.md b/.changeset/perfect-hats-dance.md deleted file mode 100644 index 93cc4a14cf..0000000000 --- a/.changeset/perfect-hats-dance.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: prevent whitespaces merging across component boundaries diff --git a/.changeset/perfect-pugs-shake.md b/.changeset/perfect-pugs-shake.md deleted file mode 100644 index ea2c61d55f..0000000000 --- a/.changeset/perfect-pugs-shake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: exclude local declarations from non-reactive property warnings diff --git a/.changeset/pink-bikes-agree.md b/.changeset/pink-bikes-agree.md deleted file mode 100644 index 7e0881f6fb..0000000000 --- a/.changeset/pink-bikes-agree.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure performance.now() and requestAnimationFrame() are polyfilled in ssr diff --git a/.changeset/pink-countries-repair.md b/.changeset/pink-countries-repair.md deleted file mode 100644 index faef646ba1..0000000000 --- a/.changeset/pink-countries-repair.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: set `binding.kind` before analysis diff --git a/.changeset/pink-goats-promise.md b/.changeset/pink-goats-promise.md deleted file mode 100644 index fa04e56ef2..0000000000 --- a/.changeset/pink-goats-promise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: introduce types to express bindability diff --git a/.changeset/pink-mayflies-tie.md b/.changeset/pink-mayflies-tie.md deleted file mode 100644 index a98dc0e01a..0000000000 --- a/.changeset/pink-mayflies-tie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make CSS animation declaration transformation more robust diff --git a/.changeset/pink-shirts-film.md b/.changeset/pink-shirts-film.md deleted file mode 100644 index cf3d371d33..0000000000 --- a/.changeset/pink-shirts-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure proxied arrays correctly update their length upon deletions diff --git a/.changeset/plenty-clouds-reply.md b/.changeset/plenty-clouds-reply.md deleted file mode 100644 index 78dfeb887c..0000000000 --- a/.changeset/plenty-clouds-reply.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: better `` SSR output diff --git a/.changeset/plenty-elephants-fry.md b/.changeset/plenty-elephants-fry.md deleted file mode 100644 index 06e05496d6..0000000000 --- a/.changeset/plenty-elephants-fry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: check for invalid bindings on window and document diff --git a/.changeset/plenty-items-build.md b/.changeset/plenty-items-build.md deleted file mode 100644 index 93ec30324d..0000000000 --- a/.changeset/plenty-items-build.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: warn on quoted single-expression attributes in runes mode diff --git a/.changeset/plenty-rings-stare.md b/.changeset/plenty-rings-stare.md deleted file mode 100644 index 2e9dfa5f48..0000000000 --- a/.changeset/plenty-rings-stare.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: attach effects-inside-deriveds to the parent of the derived diff --git a/.changeset/plenty-starfishes-dress.md b/.changeset/plenty-starfishes-dress.md deleted file mode 100644 index 38b2201e9e..0000000000 --- a/.changeset/plenty-starfishes-dress.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: avoid hoisting error by using 'let' instead of 'var' diff --git a/.changeset/plenty-turkeys-raise.md b/.changeset/plenty-turkeys-raise.md deleted file mode 100644 index daaa149551..0000000000 --- a/.changeset/plenty-turkeys-raise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure directives run in sequential order diff --git a/.changeset/plenty-zoos-fix.md b/.changeset/plenty-zoos-fix.md deleted file mode 100644 index 538ef2d36e..0000000000 --- a/.changeset/plenty-zoos-fix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve handling of lazy image elements diff --git a/.changeset/polite-dolphins-care.md b/.changeset/polite-dolphins-care.md deleted file mode 100644 index 409b7e66d6..0000000000 --- a/.changeset/polite-dolphins-care.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve non state referenced warning diff --git a/.changeset/polite-peas-mate.md b/.changeset/polite-peas-mate.md deleted file mode 100644 index c6ba6e15e0..0000000000 --- a/.changeset/polite-peas-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: avoid duplicate signal dependencies diff --git a/.changeset/polite-pugs-attend.md b/.changeset/polite-pugs-attend.md deleted file mode 100644 index 4f27579a96..0000000000 --- a/.changeset/polite-pugs-attend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure $inspect effects are fine-grain diff --git a/.changeset/polite-pumpkins-guess.md b/.changeset/polite-pumpkins-guess.md deleted file mode 100644 index e364f9635d..0000000000 --- a/.changeset/polite-pumpkins-guess.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: take event attributes into account when checking a11y diff --git a/.changeset/polite-ravens-study.md b/.changeset/polite-ravens-study.md deleted file mode 100644 index 9f9c6f8717..0000000000 --- a/.changeset/polite-ravens-study.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: disallow fallback values with bindings in runes mode diff --git a/.changeset/polite-tomatoes-trade.md b/.changeset/polite-tomatoes-trade.md deleted file mode 100644 index 3164e9a231..0000000000 --- a/.changeset/polite-tomatoes-trade.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: simpler HMR logic diff --git a/.changeset/polite-ways-serve.md b/.changeset/polite-ways-serve.md deleted file mode 100644 index fe25761069..0000000000 --- a/.changeset/polite-ways-serve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: throw compilation error for malformed snippets diff --git a/.changeset/poor-eggs-enjoy.md b/.changeset/poor-eggs-enjoy.md deleted file mode 100644 index 2ca830a1de..0000000000 --- a/.changeset/poor-eggs-enjoy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: add missing files binding diff --git a/.changeset/poor-hats-design.md b/.changeset/poor-hats-design.md deleted file mode 100644 index 3bc33931ba..0000000000 --- a/.changeset/poor-hats-design.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: return ast from `compile` (like Svelte 4 does) diff --git a/.changeset/poor-mugs-pay.md b/.changeset/poor-mugs-pay.md deleted file mode 100644 index 01f54e4604..0000000000 --- a/.changeset/poor-mugs-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: propagate custom element component prop changes diff --git a/.changeset/poor-seahorses-flash.md b/.changeset/poor-seahorses-flash.md deleted file mode 100644 index 4f6f146fe6..0000000000 --- a/.changeset/poor-seahorses-flash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: avoid creating thunk for call expressions when appropriate diff --git a/.changeset/poor-shrimps-explain.md b/.changeset/poor-shrimps-explain.md deleted file mode 100644 index 5a2cc1c229..0000000000 --- a/.changeset/poor-shrimps-explain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: stronger enumerated types diff --git a/.changeset/popular-apes-bathe.md b/.changeset/popular-apes-bathe.md deleted file mode 100644 index 1277487122..0000000000 --- a/.changeset/popular-apes-bathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: skip deriveds for props with known safe calls diff --git a/.changeset/popular-cameras-tie.md b/.changeset/popular-cameras-tie.md deleted file mode 100644 index 4235a01801..0000000000 --- a/.changeset/popular-cameras-tie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: event handlers + bindings now yield effect updates diff --git a/.changeset/popular-cups-bathe.md b/.changeset/popular-cups-bathe.md deleted file mode 100644 index 861c48faeb..0000000000 --- a/.changeset/popular-cups-bathe.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: don't add imports to hoisted event parameters diff --git a/.changeset/popular-dolphins-shake.md b/.changeset/popular-dolphins-shake.md deleted file mode 100644 index 1866a05492..0000000000 --- a/.changeset/popular-dolphins-shake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: better migration for leading and trailing comments diff --git a/.changeset/popular-feet-rule.md b/.changeset/popular-feet-rule.md deleted file mode 100644 index fee598af45..0000000000 --- a/.changeset/popular-feet-rule.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make media bindings more robust diff --git a/.changeset/popular-games-hug.md b/.changeset/popular-games-hug.md deleted file mode 100644 index 2d8a36006b..0000000000 --- a/.changeset/popular-games-hug.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: avoid state_referenced_locally warning within type annotations diff --git a/.changeset/popular-ligers-perform.md b/.changeset/popular-ligers-perform.md deleted file mode 100644 index e041720fac..0000000000 --- a/.changeset/popular-ligers-perform.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: handle TypeScript's optional parameter syntax in snippets diff --git a/.changeset/popular-mangos-rest.md b/.changeset/popular-mangos-rest.md deleted file mode 100644 index 4293bf3ba0..0000000000 --- a/.changeset/popular-mangos-rest.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add $effect.active rune diff --git a/.changeset/popular-news-happen.md b/.changeset/popular-news-happen.md deleted file mode 100644 index c617baa805..0000000000 --- a/.changeset/popular-news-happen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure `{#await}` scope shadowing is computed in the correct order diff --git a/.changeset/popular-roses-teach.md b/.changeset/popular-roses-teach.md deleted file mode 100644 index cf07afb3b9..0000000000 --- a/.changeset/popular-roses-teach.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: robustify `bind:scrollX/Y` binding diff --git a/.changeset/popular-walls-hunt.md b/.changeset/popular-walls-hunt.md deleted file mode 100644 index 9dd06c2d4e..0000000000 --- a/.changeset/popular-walls-hunt.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve compiled output of multiple call expression in single text node diff --git a/.changeset/pre.json b/.changeset/pre.json deleted file mode 100644 index 17bd95ec22..0000000000 --- a/.changeset/pre.json +++ /dev/null @@ -1,1027 +0,0 @@ -{ - "mode": "pre", - "tag": "next", - "initialVersions": { - "svelte": "5.0.0-next.0", - "svelte-playgrounds-demo": "0.0.1", - "svelte-playgrounds-sandbox": "0.0.1", - "svelte-5-preview": "0.5.0", - "svelte.dev": "1.0.0" - }, - "changesets": [ - "afraid-dogs-matter", - "afraid-geckos-dance", - "afraid-kids-hide", - "afraid-moose-matter", - "afraid-trainers-occur", - "afraid-worms-drum", - "angry-birds-fly", - "angry-books-jam", - "angry-plums-punch", - "angry-wasps-help", - "angry-weeks-design", - "beige-clocks-notice", - "beige-cobras-smoke", - "beige-donkeys-exercise", - "beige-flies-wash", - "beige-gifts-appear", - "beige-lamps-ring", - "beige-mirrors-listen", - "beige-rabbits-shave", - "beige-seas-share", - "big-apes-smell", - "big-cars-serve", - "big-eggs-flash", - "big-eyes-carry", - "big-geese-act", - "big-moons-occur", - "blue-ants-raise", - "blue-lemons-wait", - "blue-rules-juggle", - "blue-timers-film", - "blue-waves-sneeze", - "brave-candles-serve", - "brave-carrots-draw", - "brave-doors-compete", - "brave-gorillas-end", - "brave-gorillas-fold", - "brave-pigs-obey", - "brave-points-sleep", - "brave-rivers-jam", - "brave-shrimps-kiss", - "brave-walls-destroy", - "brave-walls-flow", - "breezy-carrots-flash", - "breezy-rules-beg", - "breezy-waves-camp", - "bright-berries-smell", - "bright-colts-play", - "bright-falcons-float", - "bright-needles-pretend", - "bright-peas-juggle", - "bright-seas-brake", - "bright-snakes-sing", - "brown-geckos-fry", - "brown-houses-obey", - "brown-insects-float", - "brown-months-flow", - "brown-months-fry", - "brown-pens-repeat", - "brown-radios-itch", - "brown-spoons-boil", - "brown-turkeys-tap", - "calm-buses-clap", - "calm-cameras-hide", - "calm-clocks-raise", - "calm-pandas-vanish", - "calm-ravens-sneeze", - "chatty-beans-divide", - "chatty-cups-drop", - "chatty-ghosts-unite", - "chatty-sloths-allow", - "chatty-snails-train", - "chatty-taxis-juggle", - "chilled-ladybugs-invite", - "chilled-pumas-invite", - "chilled-seas-jog", - "chilly-carpets-switch", - "chilly-dolphins-lick", - "chilly-glasses-retire", - "chilly-laws-juggle", - "chilly-pans-raise", - "chilly-rocks-hug", - "chilly-snakes-scream", - "chilly-waves-count", - "clean-cats-wave", - "clean-eels-beg", - "clean-melons-wash", - "clean-shirts-yawn", - "clean-sloths-nail", - "clever-chefs-relate", - "clever-maps-travel", - "clever-rockets-burn", - "clever-sloths-push", - "clever-stingrays-shout", - "clever-toys-laugh", - "cold-beans-tease", - "cold-birds-own", - "cold-cheetahs-judge", - "cold-lamps-accept", - "cold-masks-learn", - "cold-shrimps-hug", - "cold-socks-learn", - "cold-teachers-turn", - "cool-actors-tan", - "cool-ants-leave", - "cool-apes-confess", - "cool-comics-marry", - "cool-jobs-scream", - "cool-peas-lick", - "cool-poems-watch", - "cool-rabbits-tickle", - "cool-roses-trade", - "cool-turtles-travel", - "cool-yaks-run", - "cuddly-pianos-drop", - "cuddly-points-tickle", - "curly-cooks-cheer", - "curly-lizards-dream", - "curvy-buses-laugh", - "curvy-cups-cough", - "curvy-flies-exercise", - "curvy-foxes-wink", - "curvy-papayas-pretend", - "curvy-ties-shout", - "cyan-colts-raise", - "cyan-ducks-teach", - "cyan-flowers-destroy", - "cyan-news-grow", - "cyan-spies-grin", - "cyan-squids-drive", - "cyan-toes-share", - "dirty-bats-punch", - "dirty-donuts-yell", - "dirty-eyes-itch", - "dirty-garlics-design", - "dirty-jars-tap", - "dirty-pens-look", - "dirty-pianos-eat", - "dirty-tips-add", - "dirty-worms-type", - "dry-clocks-grow", - "dry-eggs-play", - "dry-eggs-retire", - "dry-fans-march", - "dry-ghosts-prove", - "dry-hotels-matter", - "dry-parrots-bathe", - "dry-pillows-exist", - "dull-coins-vanish", - "dull-donkeys-smell", - "dull-mangos-wave", - "dull-pens-pay", - "dull-pots-add", - "dull-roses-relate", - "dull-worms-relax", - "early-ads-tie", - "early-months-whisper", - "early-needles-bake", - "early-rockets-join", - "early-taxis-allow", - "eight-carrots-hunt", - "eight-comics-tell", - "eight-cougars-watch", - "eight-hornets-punch", - "eight-jeans-compare", - "eight-pans-worry", - "eight-pianos-raise", - "eight-steaks-shout", - "eight-waves-mate", - "eighty-bikes-camp", - "eighty-bugs-fetch", - "eighty-days-cheat", - "eighty-days-wave", - "eighty-dragons-search", - "eighty-dryers-pretend", - "eighty-hornets-breathe", - "eighty-lizards-notice", - "eighty-mails-develop", - "eleven-avocados-walk", - "eleven-beers-yell", - "eleven-cows-judge", - "eleven-cycles-applaud", - "eleven-donuts-sit", - "eleven-hounds-pump", - "eleven-humans-kneel", - "eleven-icons-sniff", - "eleven-peaches-tap", - "eleven-teachers-drive", - "empty-bags-heal", - "empty-bulldogs-exercise", - "empty-coins-build", - "empty-crabs-think", - "empty-files-prove", - "empty-flowers-change", - "empty-geckos-pretend", - "empty-horses-tell", - "empty-tools-share", - "fair-bags-smoke", - "fair-beers-help", - "fair-crabs-check", - "fair-items-bathe", - "fair-pianos-talk", - "fair-spies-repeat", - "famous-chairs-notice", - "famous-falcons-melt", - "famous-kiwis-thank", - "famous-knives-sneeze", - "famous-mirrors-count", - "famous-pants-pay", - "fast-donkeys-pay", - "fast-penguins-matter", - "fast-toes-act", - "fast-weeks-clean", - "few-badgers-guess", - "few-cheetahs-taste", - "few-clouds-shop", - "few-mugs-fail", - "few-teachers-know", - "few-walls-check", - "few-zoos-own", - "fifty-actors-agree", - "fifty-masks-give", - "fifty-rice-wait", - "fifty-steaks-float", - "fifty-toys-invite", - "five-birds-check", - "five-maps-reflect", - "five-shirts-run", - "five-suns-roll", - "five-tigers-search", - "flat-feet-visit", - "flat-flies-know", - "flat-ghosts-fly", - "flat-melons-protect", - "flat-olives-live", - "fluffy-colts-grin", - "fluffy-dolls-share", - "fluffy-humans-worry", - "fluffy-kings-complain", - "fluffy-ravens-juggle", - "forty-bikes-buy", - "forty-chicken-heal", - "forty-comics-invent", - "forty-dogs-divide", - "forty-dolls-wave", - "forty-peaches-unite", - "forty-suns-smile", - "four-balloons-beam", - "four-flies-hammer", - "four-kids-flow", - "four-mice-hammer", - "four-papayas-turn", - "four-peas-tickle", - "four-pugs-listen", - "four-yaks-boil", - "fresh-beds-wash", - "fresh-dots-destroy", - "fresh-houses-check", - "fresh-impalas-bow", - "fresh-walls-bathe", - "fresh-weeks-trade", - "fresh-wombats-learn", - "fresh-zoos-burn", - "friendly-candles-relate", - "friendly-clouds-rhyme", - "friendly-dryers-jog", - "friendly-lies-camp", - "friendly-rice-confess", - "friendly-taxis-hammer", - "funny-bugs-kiss", - "funny-cooks-clean", - "funny-dragons-double", - "funny-houses-kick", - "funny-ties-jump", - "funny-trees-cry", - "funny-wombats-argue", - "fuzzy-bags-camp", - "fuzzy-donuts-provide", - "fuzzy-tigers-swim", - "gentle-dolls-juggle", - "gentle-eagles-walk", - "gentle-needles-train", - "gentle-sheep-hug", - "gentle-spies-happen", - "gentle-ties-fetch", - "gentle-toys-chew", - "gentle-trees-exercise", - "gentle-wasps-pull", - "giant-bananas-turn", - "giant-jars-applaud", - "giant-ladybugs-thank", - "giant-moons-own", - "giant-planets-shake", - "giant-plants-grin", - "giant-roses-press", - "gold-pens-sell", - "gold-students-jump", - "gold-tools-nail", - "good-buses-reply", - "good-cars-visit", - "good-kings-try", - "good-pianos-jump", - "good-plums-type", - "good-rice-tap", - "good-rivers-yawn", - "good-roses-argue", - "good-vans-bake", - "good-zebras-turn", - "gorgeous-boxes-design", - "gorgeous-coats-jog", - "gorgeous-hats-wonder", - "gorgeous-monkeys-carry", - "gorgeous-pans-sort", - "gorgeous-singers-rest", - "great-dots-wonder", - "great-fans-unite", - "great-icons-retire", - "great-plums-pretend", - "green-baboons-sip", - "green-cameras-bake", - "green-eggs-approve", - "green-fishes-lie", - "green-hounds-play", - "green-snails-tickle", - "green-tigers-judge", - "green-walls-clap", - "green-windows-tap", - "grumpy-avocados-fetch", - "grumpy-insects-sleep", - "grumpy-jars-sparkle", - "happy-beds-scream", - "happy-dogs-jump", - "happy-dolls-joke", - "happy-eggs-rest", - "happy-lobsters-lick", - "happy-moles-live", - "happy-planets-rest", - "happy-suits-film", - "healthy-ants-film", - "healthy-dancers-play", - "healthy-mangos-brush", - "healthy-planes-vanish", - "healthy-poets-float", - "healthy-zebras-accept", - "heavy-cars-ring", - "heavy-comics-move", - "heavy-doors-applaud", - "heavy-ducks-leave", - "heavy-ears-rule", - "heavy-feet-attend", - "heavy-houses-pay", - "hip-balloons-begin", - "hip-garlics-tap", - "hip-goats-smoke", - "hip-jeans-provide", - "hip-months-breathe", - "hip-pumpkins-boil", - "hip-stingrays-teach", - "honest-buses-add", - "honest-dragons-turn", - "honest-icons-change", - "honest-nails-share", - "honest-pans-kick", - "honest-phones-flash", - "hot-cooks-repair", - "hot-glasses-roll", - "hot-grapes-destroy", - "hot-jobs-tap", - "hot-kangaroos-invite", - "hot-peaches-clean", - "hot-rivers-punch", - "hot-sloths-clap", - "hot-tips-appear", - "hungry-boxes-relate", - "hungry-dots-fry", - "hungry-pants-push", - "hungry-singers-share", - "hungry-tips-unite", - "hungry-trees-travel", - "itchy-beans-melt", - "itchy-beds-kneel", - "itchy-bulldogs-tan", - "itchy-eels-marry", - "itchy-kings-deliver", - "itchy-lemons-punch", - "itchy-lions-wash", - "itchy-oranges-behave", - "itchy-panthers-shave", - "itchy-peaches-compare", - "itchy-pianos-marry", - "itchy-terms-guess", - "khaki-camels-punch", - "khaki-cheetahs-refuse", - "khaki-cooks-develop", - "khaki-donkeys-jump", - "khaki-ligers-sing", - "khaki-mails-draw", - "khaki-mails-scream", - "khaki-mirrors-warn", - "khaki-monkeys-cry", - "khaki-moose-arrive", - "khaki-tomatoes-rule", - "kind-baboons-approve", - "kind-deers-lay", - "kind-doors-grin", - "kind-dots-sort", - "kind-eagles-join", - "kind-rings-flash", - "kind-snakes-drive", - "kind-spoons-return", - "large-clouds-carry", - "large-emus-cough", - "large-rules-hang", - "large-turkeys-deny", - "large-waves-join", - "late-bees-vanish", - "late-crabs-lay", - "late-geckos-draw", - "late-grapes-judge", - "late-peaches-mate", - "late-zebras-argue", - "lazy-carrots-buy", - "lazy-knives-happen", - "lazy-masks-sit", - "lazy-months-knock", - "lazy-queens-agree", - "lazy-spiders-think", - "lemon-geese-call", - "lemon-geese-drum", - "lemon-meals-appear", - "lemon-trees-act", - "light-badgers-glow", - "light-crews-deny", - "light-days-clean", - "light-hounds-carry", - "light-humans-hang", - "light-penguins-invent", - "light-pens-watch", - "light-tigers-smoke", - "little-ligers-exist", - "little-pans-jog", - "little-seals-reflect", - "long-buckets-lay", - "long-carrots-sneeze", - "long-coats-fry", - "long-crews-return", - "long-humans-repair", - "long-lobsters-mate", - "loud-cheetahs-flow", - "loud-insects-arrive", - "loud-mugs-smile", - "loud-news-deliver", - "loud-numbers-flow", - "loud-penguins-unite", - "loud-ravens-drop", - "loud-socks-look", - "loud-walls-wave", - "lovely-bugs-sneeze", - "lovely-carpets-lick", - "lovely-houses-own", - "lovely-items-turn", - "lovely-ravens-crash", - "lovely-rules-eat", - "lovely-zebras-own", - "lucky-colts-remember", - "lucky-drinks-push", - "lucky-experts-float", - "lucky-geckos-swim", - "lucky-panthers-chew", - "lucky-schools-hang", - "lucky-teachers-exist", - "lucky-toes-begin", - "many-fishes-warn", - "many-rockets-give", - "many-trees-fix", - "mean-jokes-exist", - "mean-numbers-cry", - "mean-parents-film", - "metal-cameras-jump", - "metal-clouds-raise", - "metal-lobsters-burn", - "metal-pans-trade", - "mighty-cooks-scream", - "mighty-files-hammer", - "mighty-frogs-obey", - "mighty-paws-smash", - "mighty-poets-fix", - "mighty-shoes-nail", - "modern-apricots-promise", - "modern-fishes-double", - "modern-peaches-cheer", - "moody-carrots-lay", - "moody-frogs-exist", - "moody-ghosts-buy", - "moody-houses-argue", - "moody-lions-watch", - "moody-owls-cry", - "moody-pugs-tan", - "moody-sheep-type", - "moody-toys-relax", - "nasty-carrots-develop", - "nasty-eggs-walk", - "nasty-glasses-begin", - "nasty-lions-double", - "nasty-mayflies-smoke", - "nasty-penguins-pump", - "nasty-teachers-end", - "nasty-yaks-peel", - "neat-boats-shake", - "neat-boxes-chew", - "neat-dingos-clap", - "neat-ducks-jam", - "neat-files-rescue", - "neat-jokes-beam", - "neat-rabbits-divide", - "neat-ways-allow", - "nervous-adults-sell", - "nervous-berries-boil", - "nervous-chefs-exist", - "nervous-dolphins-allow", - "nervous-ducks-repeat", - "nervous-spoons-relax", - "nervous-squids-drop", - "nervous-turkeys-end", - "new-baboons-fetch", - "new-boats-wait", - "new-brooms-grin", - "new-cooks-roll", - "new-rabbits-flow", - "nice-avocados-move", - "nice-bottles-greet", - "nice-brooms-battle", - "nice-jobs-breathe", - "nine-ants-invite", - "nine-cooks-join", - "nine-kids-whisper", - "nine-vans-admire", - "ninety-days-visit", - "ninety-dingos-walk", - "ninety-dots-train", - "ninety-months-laugh", - "ninety-rockets-battle", - "odd-buckets-lie", - "odd-needles-joke", - "odd-schools-wait", - "odd-shirts-hear", - "odd-shoes-cheat", - "odd-taxis-retire", - "odd-toys-glow", - "old-flies-jog", - "old-houses-drum", - "old-jokes-deliver", - "old-mails-sneeze", - "old-oranges-compete", - "old-planets-bow", - "old-planets-kiss", - "old-spoons-pull", - "olive-apples-lick", - "olive-cobras-wonder", - "olive-forks-grin", - "olive-kangaroos-brake", - "olive-llamas-warn", - "olive-mice-fix", - "olive-moons-act", - "olive-seals-sell", - "olive-shirts-complain", - "olive-socks-kick", - "orange-comics-prove", - "orange-crews-rescue", - "orange-dingos-poke", - "orange-laws-drop", - "orange-masks-exercise", - "orange-sheep-exist", - "orange-yaks-protect", - "orange-zoos-heal", - "perfect-actors-bake", - "perfect-ants-allow", - "perfect-avocados-greet", - "perfect-cooks-shop", - "perfect-hairs-matter", - "perfect-hats-dance", - "perfect-pugs-shake", - "pink-bikes-agree", - "pink-countries-repair", - "pink-goats-promise", - "pink-mayflies-tie", - "pink-shirts-film", - "plenty-clouds-reply", - "plenty-elephants-fry", - "plenty-items-build", - "plenty-rings-stare", - "plenty-starfishes-dress", - "plenty-turkeys-raise", - "plenty-zoos-fix", - "polite-dolphins-care", - "polite-peas-mate", - "polite-pugs-attend", - "polite-pumpkins-guess", - "polite-ravens-study", - "polite-tomatoes-trade", - "polite-ways-serve", - "poor-eggs-enjoy", - "poor-hats-design", - "poor-mugs-pay", - "poor-seahorses-flash", - "poor-shrimps-explain", - "popular-apes-bathe", - "popular-cameras-tie", - "popular-cups-bathe", - "popular-dolphins-shake", - "popular-feet-rule", - "popular-games-hug", - "popular-ligers-perform", - "popular-mangos-rest", - "popular-news-happen", - "popular-roses-teach", - "popular-walls-hunt", - "pretty-ties-help", - "proud-lobsters-lie", - "proud-pets-hang", - "proud-queens-sniff", - "purple-dragons-peel", - "quick-eagles-sit", - "quick-paws-wash", - "quick-pumpkins-study", - "quiet-apricots-dream", - "quiet-berries-end", - "quiet-berries-explode", - "quiet-camels-mate", - "quiet-cobras-smile", - "quiet-crabs-nail", - "quiet-timers-speak", - "rare-ears-agree", - "rare-insects-tell", - "rare-mirrors-act", - "rare-pears-whisper", - "rare-worms-hunt", - "real-camels-pay", - "real-guests-do", - "real-items-suffer", - "real-pandas-brush", - "real-timers-complain", - "red-cycles-pretend", - "red-doors-own", - "red-feet-worry", - "red-kings-draw", - "red-ladybugs-turn", - "red-maps-nail", - "red-poets-study", - "red-pots-pretend", - "rich-cobras-exist", - "rich-elephants-relax", - "rich-garlics-laugh", - "rich-ladybugs-admire", - "rich-olives-yell", - "rich-plums-thank", - "rich-sheep-burn", - "rich-tables-sing", - "rich-taxis-hear", - "rich-waves-mix", - "rotten-actors-rush", - "rotten-bags-type", - "rotten-buckets-develop", - "rotten-experts-relax", - "rotten-poems-applaud", - "rotten-rules-invite", - "rude-ghosts-tickle", - "selfish-dragons-knock", - "selfish-panthers-add", - "selfish-socks-smile", - "selfish-spies-help", - "selfish-tools-hide", - "selfish-trainers-kiss", - "serious-bobcats-carry", - "serious-crabs-punch", - "serious-goats-tap", - "serious-gorillas-eat", - "serious-kids-deliver", - "serious-needles-joke", - "serious-owls-think", - "serious-poems-brake", - "serious-socks-cover", - "serious-zebras-scream", - "seven-bees-tell", - "seven-dancers-brush", - "seven-deers-jam", - "seven-garlics-serve", - "seven-hornets-smile", - "seven-jobs-sniff", - "seven-masks-end", - "seven-news-live", - "seven-ravens-check", - "seven-wombats-retire", - "shaggy-cameras-live", - "shaggy-comics-jog", - "sharp-fishes-serve", - "sharp-foxes-whisper", - "sharp-gorillas-impress", - "sharp-kids-happen", - "sharp-spies-live", - "sharp-tomatoes-learn", - "shiny-baboons-play", - "shiny-jobs-judge", - "shiny-kangaroos-move", - "shiny-mayflies-clean", - "shiny-melons-love", - "shiny-months-tease", - "shiny-pillows-relax", - "shiny-rats-heal", - "shiny-shrimps-march", - "shiny-starfishes-cross", - "shiny-wombats-argue", - "short-buses-camp", - "short-countries-rush", - "short-starfishes-beg", - "shy-fishes-drive", - "shy-scissors-smile", - "silent-apes-report", - "silent-elephants-film", - "silent-hats-stare", - "silent-rabbits-join", - "silent-rocks-yell", - "silly-ducks-mix", - "silly-fishes-deny", - "silly-houses-promise", - "silly-laws-happen", - "silly-lies-film", - "silly-masks-exist", - "silly-ways-wash", - "silver-beans-hear", - "silver-mice-double", - "silver-points-approve", - "silver-sheep-knock", - "six-apes-peel", - "six-beans-laugh", - "six-bears-trade", - "six-boats-shave", - "six-chicken-kneel", - "six-gorillas-obey", - "six-moons-invent", - "six-vans-add", - "sixty-items-crash", - "sixty-numbers-hope", - "sixty-pandas-rush", - "sixty-plants-cover", - "sleepy-cats-eat", - "sleepy-dogs-sit", - "slimy-clouds-talk", - "slimy-garlics-beg", - "slimy-hairs-impress", - "slimy-laws-explode", - "slimy-news-help", - "slimy-onions-approve", - "slimy-walls-draw", - "slow-badgers-invite", - "slow-beds-shave", - "slow-chefs-dream", - "slow-gorillas-yawn", - "slow-kids-sparkle", - "slow-ligers-enjoy", - "slow-plums-chew", - "slow-wombats-reply", - "small-apples-eat", - "small-chefs-sing", - "small-owls-remain", - "small-papayas-laugh", - "small-planets-destroy", - "small-sheep-type", - "small-spiders-fail", - "small-suns-lie", - "smart-cars-know", - "smart-cherries-leave", - "smart-fans-crash", - "smart-grapes-mate", - "smart-parents-swim", - "smart-poets-care", - "smart-spiders-fetch", - "smart-turkeys-tell", - "smart-zebras-pay", - "smart-zoos-vanish", - "smooth-apes-shave", - "smooth-kids-protect", - "smooth-pens-exist", - "smooth-pens-protect", - "smooth-rings-rush", - "smooth-windows-explain", - "soft-clocks-remember", - "soft-geese-learn", - "soft-months-grab", - "soft-stingrays-attend", - "soft-tigers-wink", - "sour-bags-fail", - "sour-forks-stare", - "sour-geese-listen", - "sour-jeans-collect", - "sour-poems-trade", - "sour-rules-march", - "sour-tomatoes-knock", - "sour-weeks-fix", - "spicy-jeans-deliver", - "spicy-peas-vanish", - "spicy-plums-admire", - "spotty-crabs-give", - "spotty-houses-search", - "spotty-kings-hug", - "spotty-pens-agree", - "spotty-rocks-destroy", - "spotty-shrimps-hug", - "spotty-spiders-compare", - "spotty-trees-provide", - "spotty-turkeys-sparkle", - "stale-books-perform", - "stale-comics-look", - "stale-fans-rest", - "stale-jeans-refuse", - "stale-nails-listen", - "stale-rats-check", - "strange-apricots-happen", - "strange-pears-perform", - "strange-pillows-greet", - "strange-roses-brake", - "strange-trains-destroy", - "strong-apricots-destroy", - "strong-gifts-smoke", - "strong-lemons-provide", - "strong-pans-doubt", - "stupid-bottles-lay", - "stupid-cars-behave", - "stupid-dodos-hide", - "stupid-parents-crash", - "stupid-rivers-stare", - "sweet-bottles-check", - "sweet-mangos-beg", - "sweet-pens-sniff", - "swift-donkeys-perform", - "swift-fans-stare", - "swift-feet-juggle", - "swift-knives-tie", - "swift-poets-carry", - "swift-queens-begin", - "swift-rats-sing", - "swift-ravens-hunt", - "swift-seahorses-deliver", - "tall-books-grin", - "tall-dragons-switch", - "tall-garlics-try", - "tall-mugs-buy", - "tall-shrimps-worry", - "tall-tigers-wait", - "tame-cycles-kneel", - "tame-dodos-float", - "tame-dots-battle", - "tame-frogs-shave", - "tame-goats-bow", - "tame-spies-drum", - "tasty-cheetahs-appear", - "tasty-mice-admire", - "tasty-numbers-perform", - "tasty-spies-sniff", - "tasty-steaks-smile", - "ten-eels-move", - "ten-foxes-repeat", - "ten-geese-share", - "ten-jokes-divide", - "ten-laws-grow", - "ten-peaches-sleep", - "ten-singers-cough", - "ten-singers-repair", - "ten-teachers-travel", - "ten-ties-repair", - "ten-trainers-juggle", - "ten-vans-divide", - "ten-worms-reflect", - "tender-bats-switch", - "tender-lemons-judge", - "tender-rocks-walk", - "tender-suns-love", - "thick-cycles-rule", - "thick-pans-tell", - "thick-shirts-deliver", - "thick-swans-type", - "thin-colts-yawn", - "thin-foxes-lick", - "thin-papayas-tap", - "thin-spoons-float", - "thin-years-rhyme", - "thirty-dogs-whisper", - "thirty-flies-push", - "thirty-flowers-sit", - "thirty-ghosts-fix", - "thirty-guests-flow", - "thirty-impalas-repair", - "thirty-pears-hug", - "thirty-wombats-relax", - "three-buses-sleep", - "three-camels-sell", - "three-donkeys-jump", - "three-foxes-relax", - "three-icons-trade", - "three-lions-visit", - "three-papayas-buy", - "three-rice-tie", - "three-suits-grin", - "tidy-buses-whisper", - "tidy-chefs-taste", - "tidy-deers-hope", - "tidy-fans-relax", - "tidy-lizards-happen", - "tidy-starfishes-allow", - "tiny-ads-press", - "tiny-kings-whisper", - "tiny-meals-deliver", - "tiny-moose-kiss", - "tiny-taxis-whisper", - "tough-buckets-thank", - "tough-pans-boil", - "tough-radios-punch", - "tough-snails-chew", - "tough-tomatoes-explain", - "tricky-avocados-play", - "tricky-balloons-care", - "tricky-coats-shop", - "tricky-ears-shout", - "tricky-laws-bathe", - "twelve-beans-drive", - "twelve-bears-worry", - "twelve-cows-learn", - "twelve-dragons-join", - "twelve-mayflies-decide", - "twelve-onions-juggle", - "twelve-scissors-kneel", - "twelve-shrimps-run", - "twelve-worms-jog", - "twenty-gifts-develop", - "twenty-toes-attack", - "two-brooms-fail", - "two-candles-move", - "two-cats-approve", - "two-chefs-lie", - "two-dogs-accept", - "two-dragons-yell", - "two-falcons-buy", - "two-keys-watch", - "unlucky-baboons-greet", - "unlucky-boxes-obey", - "unlucky-points-clap", - "unlucky-spies-flow", - "unlucky-steaks-warn", - "unlucky-trees-lick", - "violet-bats-brake", - "violet-buses-cross", - "violet-mails-trade", - "violet-mugs-behave", - "violet-otters-carry", - "violet-pigs-jam", - "warm-cherries-shake", - "warm-cycles-call", - "warm-planets-cry", - "warm-waves-reply", - "weak-drinks-speak", - "weak-frogs-bow", - "weak-terms-destroy", - "wet-bats-exercise", - "wet-donkeys-fry", - "wet-games-fly", - "wet-hats-peel", - "wet-pears-buy", - "wet-pears-remain", - "wet-wombats-repeat", - "wicked-bikes-matter", - "wicked-carrots-explain", - "wicked-clouds-exercise", - "wicked-doors-train", - "wicked-emus-drive", - "wicked-hairs-cheer", - "wicked-wasps-allow", - "wicked-ways-reply", - "wicked-years-drive", - "wild-chairs-build", - "wild-cows-chew", - "wild-foxes-wonder", - "wild-mice-look", - "wild-moose-compare", - "wild-moose-destroy", - "wild-poems-design", - "wild-pumas-count", - "wise-apples-care", - "wise-dancers-hang", - "wise-dodos-tell", - "wise-donkeys-marry", - "wise-jobs-admire", - "wise-kids-wash", - "wise-radios-exercise", - "wise-ties-clap", - "witty-bikes-shave", - "witty-camels-warn", - "witty-frogs-cheat", - "witty-hornets-think", - "witty-phones-retire", - "witty-readers-provide", - "witty-shirts-confess", - "witty-sloths-impress", - "witty-steaks-dream", - "witty-tomatoes-care", - "witty-years-crash", - "yellow-bananas-rhyme", - "yellow-pugs-raise", - "yellow-rockets-sit", - "yellow-taxis-double", - "yellow-trees-juggle", - "young-ads-roll", - "young-ducks-punch", - "young-feet-double", - "young-masks-refuse", - "young-peaches-agree" - ] -} diff --git a/.changeset/pretty-ties-help.md b/.changeset/pretty-ties-help.md deleted file mode 100644 index f2408416d4..0000000000 --- a/.changeset/pretty-ties-help.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: skip generating $.proxy() calls for unary and binary expressions diff --git a/.changeset/proud-lobsters-lie.md b/.changeset/proud-lobsters-lie.md deleted file mode 100644 index b797c935c5..0000000000 --- a/.changeset/proud-lobsters-lie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: Ensure imports are above other statements diff --git a/.changeset/proud-pets-hang.md b/.changeset/proud-pets-hang.md deleted file mode 100644 index dd67868e7c..0000000000 --- a/.changeset/proud-pets-hang.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: take outroing elements out of the flow when animating siblings diff --git a/.changeset/proud-queens-sniff.md b/.changeset/proud-queens-sniff.md deleted file mode 100644 index e2970fd4bc..0000000000 --- a/.changeset/proud-queens-sniff.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve hydration of svelte head blocks diff --git a/.changeset/purple-dragons-peel.md b/.changeset/purple-dragons-peel.md deleted file mode 100644 index a7e2574d20..0000000000 --- a/.changeset/purple-dragons-peel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve unstate type definition diff --git a/.changeset/quick-eagles-sit.md b/.changeset/quick-eagles-sit.md deleted file mode 100644 index 613ea2bd05..0000000000 --- a/.changeset/quick-eagles-sit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: deprecate `context="module"` in favor of `module` diff --git a/.changeset/quick-paws-wash.md b/.changeset/quick-paws-wash.md deleted file mode 100644 index e93b68a0ca..0000000000 --- a/.changeset/quick-paws-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: only traverse trailing static nodes during hydration diff --git a/.changeset/quick-pumpkins-study.md b/.changeset/quick-pumpkins-study.md deleted file mode 100644 index ba887164df..0000000000 --- a/.changeset/quick-pumpkins-study.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: tweak element_invalid_self_closing_tag to exclude namespace diff --git a/.changeset/quiet-apricots-dream.md b/.changeset/quiet-apricots-dream.md deleted file mode 100644 index 18ffb66534..0000000000 --- a/.changeset/quiet-apricots-dream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: remove `createRoot`, adjust `mount`/`hydrate` APIs, introduce `unmount` diff --git a/.changeset/quiet-berries-end.md b/.changeset/quiet-berries-end.md deleted file mode 100644 index 155b7915f8..0000000000 --- a/.changeset/quiet-berries-end.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: tweak initial `bind:clientWidth/clientHeight/offsetWidth/offsetHeight` update timing diff --git a/.changeset/quiet-berries-explode.md b/.changeset/quiet-berries-explode.md deleted file mode 100644 index 5bc9c4247e..0000000000 --- a/.changeset/quiet-berries-explode.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: more efficient spread attributes in SSR output diff --git a/.changeset/quiet-camels-mate.md b/.changeset/quiet-camels-mate.md deleted file mode 100644 index 6e723bd4ab..0000000000 --- a/.changeset/quiet-camels-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve keyblock treeshaking diff --git a/.changeset/quiet-cobras-smile.md b/.changeset/quiet-cobras-smile.md deleted file mode 100644 index 10b4879837..0000000000 --- a/.changeset/quiet-cobras-smile.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: inline pointer events now correctly work in Chrome diff --git a/.changeset/quiet-crabs-nail.md b/.changeset/quiet-crabs-nail.md deleted file mode 100644 index 78ea5ba14e..0000000000 --- a/.changeset/quiet-crabs-nail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: take into account member expressions when determining legacy reactive dependencies diff --git a/.changeset/quiet-timers-speak.md b/.changeset/quiet-timers-speak.md deleted file mode 100644 index 3de152a4f2..0000000000 --- a/.changeset/quiet-timers-speak.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly update tweened store initialized with nullish value diff --git a/.changeset/rare-ears-agree.md b/.changeset/rare-ears-agree.md deleted file mode 100644 index 392d32c786..0000000000 --- a/.changeset/rare-ears-agree.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: update client check for smaller bundle size diff --git a/.changeset/rare-insects-tell.md b/.changeset/rare-insects-tell.md deleted file mode 100644 index 503219d2fd..0000000000 --- a/.changeset/rare-insects-tell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: better types for `on` diff --git a/.changeset/rare-mirrors-act.md b/.changeset/rare-mirrors-act.md deleted file mode 100644 index 02a60012a1..0000000000 --- a/.changeset/rare-mirrors-act.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: better support for lazy img elements diff --git a/.changeset/rare-pears-whisper.md b/.changeset/rare-pears-whisper.md deleted file mode 100644 index 05dc333b31..0000000000 --- a/.changeset/rare-pears-whisper.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add $effect.root rune diff --git a/.changeset/rare-worms-hunt.md b/.changeset/rare-worms-hunt.md deleted file mode 100644 index e0963bd6af..0000000000 --- a/.changeset/rare-worms-hunt.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: only update lazy properties that have actually changed diff --git a/.changeset/real-camels-pay.md b/.changeset/real-camels-pay.md deleted file mode 100644 index 12dd086a9a..0000000000 --- a/.changeset/real-camels-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: support migration of self closing tags diff --git a/.changeset/real-guests-do.md b/.changeset/real-guests-do.md deleted file mode 100644 index 3f0c26a477..0000000000 --- a/.changeset/real-guests-do.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve event delegation handler hoisting diff --git a/.changeset/real-items-suffer.md b/.changeset/real-items-suffer.md deleted file mode 100644 index 58966db7c6..0000000000 --- a/.changeset/real-items-suffer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add proper typings for `$derived.call` diff --git a/.changeset/real-pandas-brush.md b/.changeset/real-pandas-brush.md deleted file mode 100644 index 4f92cf1af1..0000000000 --- a/.changeset/real-pandas-brush.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: call beforeUpdate/afterUpdate callbacks when props are mutated diff --git a/.changeset/real-timers-complain.md b/.changeset/real-timers-complain.md deleted file mode 100644 index cad0860b05..0000000000 --- a/.changeset/real-timers-complain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: various `svelte:component` migration bugs diff --git a/.changeset/red-cycles-pretend.md b/.changeset/red-cycles-pretend.md deleted file mode 100644 index 58307066bc..0000000000 --- a/.changeset/red-cycles-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: Add `elementtiming` HTMLAttribute, remove `crossorigin` from HTMLInputAttributes diff --git a/.changeset/red-doors-own.md b/.changeset/red-doors-own.md deleted file mode 100644 index 4cd8d80791..0000000000 --- a/.changeset/red-doors-own.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make `ComponentType` generic optional diff --git a/.changeset/red-feet-worry.md b/.changeset/red-feet-worry.md deleted file mode 100644 index 00caaf8158..0000000000 --- a/.changeset/red-feet-worry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: allow state/derived/props to be explicitly exported from components diff --git a/.changeset/red-kings-draw.md b/.changeset/red-kings-draw.md deleted file mode 100644 index 56ce4afff3..0000000000 --- a/.changeset/red-kings-draw.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: more efficient code generation when referencing globals diff --git a/.changeset/red-ladybugs-turn.md b/.changeset/red-ladybugs-turn.md deleted file mode 100644 index b647c442a5..0000000000 --- a/.changeset/red-ladybugs-turn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: treat pure call expressions as potentially reactive if they reference local bindings diff --git a/.changeset/red-maps-nail.md b/.changeset/red-maps-nail.md deleted file mode 100644 index 731a863440..0000000000 --- a/.changeset/red-maps-nail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: better generated each block code in SSR mode diff --git a/.changeset/red-poets-study.md b/.changeset/red-poets-study.md deleted file mode 100644 index 3a9338f32a..0000000000 --- a/.changeset/red-poets-study.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow runes for variable declarations in the template diff --git a/.changeset/red-pots-pretend.md b/.changeset/red-pots-pretend.md deleted file mode 100644 index 8567ee22ca..0000000000 --- a/.changeset/red-pots-pretend.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: mark variables in shorthand style directives as referenced diff --git a/.changeset/rich-cobras-exist.md b/.changeset/rich-cobras-exist.md deleted file mode 100644 index ca560d0e63..0000000000 --- a/.changeset/rich-cobras-exist.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: simplify event delegation logic, only delegate event attributes diff --git a/.changeset/rich-elephants-relax.md b/.changeset/rich-elephants-relax.md deleted file mode 100644 index dbf1c88282..0000000000 --- a/.changeset/rich-elephants-relax.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: better destructuring assignments diff --git a/.changeset/rich-garlics-laugh.md b/.changeset/rich-garlics-laugh.md deleted file mode 100644 index c9230dfb80..0000000000 --- a/.changeset/rich-garlics-laugh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve handled of unowned derived signals diff --git a/.changeset/rich-ladybugs-admire.md b/.changeset/rich-ladybugs-admire.md deleted file mode 100644 index f86504313d..0000000000 --- a/.changeset/rich-ladybugs-admire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: small legibility improvement in `Snippet` type hint diff --git a/.changeset/rich-olives-yell.md b/.changeset/rich-olives-yell.md deleted file mode 100644 index e771b37ef7..0000000000 --- a/.changeset/rich-olives-yell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: replace proxy-based readonly validation with stack-trace-based ownership tracking diff --git a/.changeset/rich-plums-thank.md b/.changeset/rich-plums-thank.md deleted file mode 100644 index 0c96191f92..0000000000 --- a/.changeset/rich-plums-thank.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: remove memory leak from retaining old DOM elements diff --git a/.changeset/rich-sheep-burn.md b/.changeset/rich-sheep-burn.md deleted file mode 100644 index 4a2128d6aa..0000000000 --- a/.changeset/rich-sheep-burn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: add top level snippets to instance scope diff --git a/.changeset/rich-tables-sing.md b/.changeset/rich-tables-sing.md deleted file mode 100644 index dec3c5a522..0000000000 --- a/.changeset/rich-tables-sing.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve signal consumer removal logic diff --git a/.changeset/rich-taxis-hear.md b/.changeset/rich-taxis-hear.md deleted file mode 100644 index af6aa1e41f..0000000000 --- a/.changeset/rich-taxis-hear.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: include CSS in `` when `css: 'injected'` diff --git a/.changeset/rich-waves-mix.md b/.changeset/rich-waves-mix.md deleted file mode 100644 index 5b640517b9..0000000000 --- a/.changeset/rich-waves-mix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: try-catch deep read during `$inspect` diff --git a/.changeset/rotten-actors-rush.md b/.changeset/rotten-actors-rush.md deleted file mode 100644 index 46f15bdf27..0000000000 --- a/.changeset/rotten-actors-rush.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure unowned derived signals correctly re-connect to graph diff --git a/.changeset/rotten-bags-type.md b/.changeset/rotten-bags-type.md deleted file mode 100644 index 0a69089e93..0000000000 --- a/.changeset/rotten-bags-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly reflect readonly proxy marker diff --git a/.changeset/rotten-buckets-develop.md b/.changeset/rotten-buckets-develop.md deleted file mode 100644 index 4664f34eaf..0000000000 --- a/.changeset/rotten-buckets-develop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: svelte 5 alpha diff --git a/.changeset/rotten-experts-relax.md b/.changeset/rotten-experts-relax.md deleted file mode 100644 index e5a7e3bbe4..0000000000 --- a/.changeset/rotten-experts-relax.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: permit whitespace within template scripts diff --git a/.changeset/rotten-poems-applaud.md b/.changeset/rotten-poems-applaud.md deleted file mode 100644 index 161a4af494..0000000000 --- a/.changeset/rotten-poems-applaud.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve ssr code generation for class property $derived diff --git a/.changeset/rotten-rules-invite.md b/.changeset/rotten-rules-invite.md deleted file mode 100644 index b175da8d6c..0000000000 --- a/.changeset/rotten-rules-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: use getters for derived class state fields, with memoisation diff --git a/.changeset/rude-ghosts-tickle.md b/.changeset/rude-ghosts-tickle.md deleted file mode 100644 index abd8b59020..0000000000 --- a/.changeset/rude-ghosts-tickle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correctly handle proxied signal writes before reads diff --git a/.changeset/selfish-dragons-knock.md b/.changeset/selfish-dragons-knock.md deleted file mode 100644 index b3c2f5b42b..0000000000 --- a/.changeset/selfish-dragons-knock.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow ts casts in bindings diff --git a/.changeset/selfish-panthers-add.md b/.changeset/selfish-panthers-add.md deleted file mode 100644 index 9e685cca27..0000000000 --- a/.changeset/selfish-panthers-add.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow global next to `&` for nesting diff --git a/.changeset/selfish-socks-smile.md b/.changeset/selfish-socks-smile.md deleted file mode 100644 index 75d71b1ea8..0000000000 --- a/.changeset/selfish-socks-smile.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: more accurate default value handling diff --git a/.changeset/selfish-spies-help.md b/.changeset/selfish-spies-help.md deleted file mode 100644 index 2a06251e1a..0000000000 --- a/.changeset/selfish-spies-help.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve element class attribute behaviour diff --git a/.changeset/selfish-tools-hide.md b/.changeset/selfish-tools-hide.md deleted file mode 100644 index 194a2439d6..0000000000 --- a/.changeset/selfish-tools-hide.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure computed props are cached with derived diff --git a/.changeset/selfish-trainers-kiss.md b/.changeset/selfish-trainers-kiss.md deleted file mode 100644 index 40e781e20f..0000000000 --- a/.changeset/selfish-trainers-kiss.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure inner script tags are properly removed diff --git a/.changeset/serious-bobcats-carry.md b/.changeset/serious-bobcats-carry.md deleted file mode 100644 index d67abe1f82..0000000000 --- a/.changeset/serious-bobcats-carry.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: only warn about non-reactive state in runes mode diff --git a/.changeset/serious-crabs-punch.md b/.changeset/serious-crabs-punch.md deleted file mode 100644 index 850f0d03a7..0000000000 --- a/.changeset/serious-crabs-punch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: include `script` and `svelte:options` attributes in ast diff --git a/.changeset/serious-goats-tap.md b/.changeset/serious-goats-tap.md deleted file mode 100644 index b746f1fa69..0000000000 --- a/.changeset/serious-goats-tap.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make `$effect.active()` true when updating deriveds diff --git a/.changeset/serious-gorillas-eat.md b/.changeset/serious-gorillas-eat.md deleted file mode 100644 index 407f2e6db8..0000000000 --- a/.changeset/serious-gorillas-eat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly hydrate controlled each-else block diff --git a/.changeset/serious-kids-deliver.md b/.changeset/serious-kids-deliver.md deleted file mode 100644 index 8c863eccff..0000000000 --- a/.changeset/serious-kids-deliver.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow `:global(..)` in compound selectors diff --git a/.changeset/serious-needles-joke.md b/.changeset/serious-needles-joke.md deleted file mode 100644 index 1091bcf329..0000000000 --- a/.changeset/serious-needles-joke.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: add types for svelte/reactivity diff --git a/.changeset/serious-owls-think.md b/.changeset/serious-owls-think.md deleted file mode 100644 index 7093f5af4c..0000000000 --- a/.changeset/serious-owls-think.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: function called as tagged template literal is reactively called diff --git a/.changeset/serious-poems-brake.md b/.changeset/serious-poems-brake.md deleted file mode 100644 index 824bc825b8..0000000000 --- a/.changeset/serious-poems-brake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: revert SSR shorthand comments diff --git a/.changeset/serious-socks-cover.md b/.changeset/serious-socks-cover.md deleted file mode 100644 index 709bb95beb..0000000000 --- a/.changeset/serious-socks-cover.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure event handlers containing arguments are not hoisted diff --git a/.changeset/serious-zebras-scream.md b/.changeset/serious-zebras-scream.md deleted file mode 100644 index 9efd62e5b5..0000000000 --- a/.changeset/serious-zebras-scream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure snippets have correct scope diff --git a/.changeset/seven-bees-tell.md b/.changeset/seven-bees-tell.md deleted file mode 100644 index 753a93add2..0000000000 --- a/.changeset/seven-bees-tell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow slot attribute inside snippets diff --git a/.changeset/seven-dancers-brush.md b/.changeset/seven-dancers-brush.md deleted file mode 100644 index 8f0bcd6940..0000000000 --- a/.changeset/seven-dancers-brush.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: avoid chromium issue with dispatching blur on element removal diff --git a/.changeset/seven-deers-jam.md b/.changeset/seven-deers-jam.md deleted file mode 100644 index cdb0c8d16b..0000000000 --- a/.changeset/seven-deers-jam.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: better attribute casing logic diff --git a/.changeset/seven-garlics-serve.md b/.changeset/seven-garlics-serve.md deleted file mode 100644 index 4c56f95b42..0000000000 --- a/.changeset/seven-garlics-serve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: make sure event attributes run after bindings diff --git a/.changeset/seven-hornets-smile.md b/.changeset/seven-hornets-smile.md deleted file mode 100644 index 7ae0106acb..0000000000 --- a/.changeset/seven-hornets-smile.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: correctly parse at-rules containing special characters in strings diff --git a/.changeset/seven-jobs-sniff.md b/.changeset/seven-jobs-sniff.md deleted file mode 100644 index 4faeced47b..0000000000 --- a/.changeset/seven-jobs-sniff.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: adjust `$inspect.with` type diff --git a/.changeset/seven-masks-end.md b/.changeset/seven-masks-end.md deleted file mode 100644 index 342091267d..0000000000 --- a/.changeset/seven-masks-end.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: adjust keyed each block equality handling diff --git a/.changeset/seven-news-live.md b/.changeset/seven-news-live.md deleted file mode 100644 index cfe6f3bc33..0000000000 --- a/.changeset/seven-news-live.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure event currentTarget is reset after propagation logic diff --git a/.changeset/seven-ravens-check.md b/.changeset/seven-ravens-check.md deleted file mode 100644 index 0bbfad1b22..0000000000 --- a/.changeset/seven-ravens-check.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: support type definition in {@const} diff --git a/.changeset/seven-wombats-retire.md b/.changeset/seven-wombats-retire.md deleted file mode 100644 index 60fb2bdf87..0000000000 --- a/.changeset/seven-wombats-retire.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: exclude type-only props from instance exports when migrating diff --git a/.changeset/shaggy-cameras-live.md b/.changeset/shaggy-cameras-live.md deleted file mode 100644 index 230154b652..0000000000 --- a/.changeset/shaggy-cameras-live.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: wire up `events` in `mount` correctly and fix its types diff --git a/.changeset/shaggy-comics-jog.md b/.changeset/shaggy-comics-jog.md deleted file mode 100644 index cb5d956eb8..0000000000 --- a/.changeset/shaggy-comics-jog.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure `$$slots` returns a record of booleans diff --git a/.changeset/sharp-fishes-serve.md b/.changeset/sharp-fishes-serve.md deleted file mode 100644 index 89c8063606..0000000000 --- a/.changeset/sharp-fishes-serve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: perf tweaks for actions/styles/classes diff --git a/.changeset/sharp-foxes-whisper.md b/.changeset/sharp-foxes-whisper.md deleted file mode 100644 index 553ae1bd6d..0000000000 --- a/.changeset/sharp-foxes-whisper.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: remove callback from `$state.link` diff --git a/.changeset/sharp-gorillas-impress.md b/.changeset/sharp-gorillas-impress.md deleted file mode 100644 index 37c74aafa6..0000000000 --- a/.changeset/sharp-gorillas-impress.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: only treat instance context exports as accessors diff --git a/.changeset/sharp-kids-happen.md b/.changeset/sharp-kids-happen.md deleted file mode 100644 index 88b5badb15..0000000000 --- a/.changeset/sharp-kids-happen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: always treat spread attributes as reactive and separate them if needed diff --git a/.changeset/sharp-spies-live.md b/.changeset/sharp-spies-live.md deleted file mode 100644 index 0ddbde97ed..0000000000 --- a/.changeset/sharp-spies-live.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: error on `bind:this` to each block parameter diff --git a/.changeset/sharp-tomatoes-learn.md b/.changeset/sharp-tomatoes-learn.md deleted file mode 100644 index 03f5930c23..0000000000 --- a/.changeset/sharp-tomatoes-learn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure computed props are wrapped in derived diff --git a/.changeset/shiny-baboons-play.md b/.changeset/shiny-baboons-play.md deleted file mode 100644 index dad945f3db..0000000000 --- a/.changeset/shiny-baboons-play.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add Snippet type diff --git a/.changeset/shiny-jobs-judge.md b/.changeset/shiny-jobs-judge.md deleted file mode 100644 index f808f47f2e..0000000000 --- a/.changeset/shiny-jobs-judge.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve runtime performance of derived signals diff --git a/.changeset/shiny-kangaroos-move.md b/.changeset/shiny-kangaroos-move.md deleted file mode 100644 index cde5eb29b5..0000000000 --- a/.changeset/shiny-kangaroos-move.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: set `volume` through DOM property rather than attribute diff --git a/.changeset/shiny-mayflies-clean.md b/.changeset/shiny-mayflies-clean.md deleted file mode 100644 index 3adaa3dec8..0000000000 --- a/.changeset/shiny-mayflies-clean.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: only destroy snippets when they have changed diff --git a/.changeset/shiny-melons-love.md b/.changeset/shiny-melons-love.md deleted file mode 100644 index 5633aff875..0000000000 --- a/.changeset/shiny-melons-love.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure derived is detected as dirty correctly diff --git a/.changeset/shiny-months-tease.md b/.changeset/shiny-months-tease.md deleted file mode 100644 index a4f3413cd4..0000000000 --- a/.changeset/shiny-months-tease.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: reevaluate namespace in slots diff --git a/.changeset/shiny-pillows-relax.md b/.changeset/shiny-pillows-relax.md deleted file mode 100644 index 15286e12c0..0000000000 --- a/.changeset/shiny-pillows-relax.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: assign message to error object in `handle_error` using `Object.defineProperty` diff --git a/.changeset/shiny-rats-heal.md b/.changeset/shiny-rats-heal.md deleted file mode 100644 index 8c87fb572f..0000000000 --- a/.changeset/shiny-rats-heal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: add warning when using `$bindable` rune without calling it diff --git a/.changeset/shiny-shrimps-march.md b/.changeset/shiny-shrimps-march.md deleted file mode 100644 index a6920fae3e..0000000000 --- a/.changeset/shiny-shrimps-march.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: do not propagate global intro transitions diff --git a/.changeset/shiny-starfishes-cross.md b/.changeset/shiny-starfishes-cross.md deleted file mode 100644 index 2eead25214..0000000000 --- a/.changeset/shiny-starfishes-cross.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure $state proxy invokes set accessor if present diff --git a/.changeset/shiny-wombats-argue.md b/.changeset/shiny-wombats-argue.md deleted file mode 100644 index b35f1cf304..0000000000 --- a/.changeset/shiny-wombats-argue.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly hydrate empty raw blocks diff --git a/.changeset/short-buses-camp.md b/.changeset/short-buses-camp.md deleted file mode 100644 index b7c0976bc8..0000000000 --- a/.changeset/short-buses-camp.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: silence false positive state warning diff --git a/.changeset/short-countries-rush.md b/.changeset/short-countries-rush.md deleted file mode 100644 index c080f91889..0000000000 --- a/.changeset/short-countries-rush.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: eagerly unsubscribe when store is changed diff --git a/.changeset/short-starfishes-beg.md b/.changeset/short-starfishes-beg.md deleted file mode 100644 index dedbfbfeef..0000000000 --- a/.changeset/short-starfishes-beg.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: remove $state.is rune diff --git a/.changeset/shy-fishes-drive.md b/.changeset/shy-fishes-drive.md deleted file mode 100644 index 3c33a5282b..0000000000 --- a/.changeset/shy-fishes-drive.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: fix string name of reactive map and set iterator diff --git a/.changeset/shy-scissors-smile.md b/.changeset/shy-scissors-smile.md deleted file mode 100644 index b50108241e..0000000000 --- a/.changeset/shy-scissors-smile.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: properly validate snippet/slot interop diff --git a/.changeset/silent-apes-report.md b/.changeset/silent-apes-report.md deleted file mode 100644 index f7f96440be..0000000000 --- a/.changeset/silent-apes-report.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: handle sole empty expression tags diff --git a/.changeset/silent-elephants-film.md b/.changeset/silent-elephants-film.md deleted file mode 100644 index 1182b687f5..0000000000 --- a/.changeset/silent-elephants-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: simplify and robustify appending styles diff --git a/.changeset/silent-hats-stare.md b/.changeset/silent-hats-stare.md deleted file mode 100644 index 3294f491ce..0000000000 --- a/.changeset/silent-hats-stare.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: add type arguments to Map and Set diff --git a/.changeset/silent-rabbits-join.md b/.changeset/silent-rabbits-join.md deleted file mode 100644 index 82f157d9df..0000000000 --- a/.changeset/silent-rabbits-join.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure we clear down each block opening anchors from document diff --git a/.changeset/silent-rocks-yell.md b/.changeset/silent-rocks-yell.md deleted file mode 100644 index 115e7724b1..0000000000 --- a/.changeset/silent-rocks-yell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: exclude `bind:this` from reactive state validation diff --git a/.changeset/silly-ducks-mix.md b/.changeset/silly-ducks-mix.md deleted file mode 100644 index 411f834518..0000000000 --- a/.changeset/silly-ducks-mix.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: don't warn on link without href if aria-disabled diff --git a/.changeset/silly-fishes-deny.md b/.changeset/silly-fishes-deny.md deleted file mode 100644 index a77098c597..0000000000 --- a/.changeset/silly-fishes-deny.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: allow custom element styles to be updated in HMR mode diff --git a/.changeset/silly-houses-promise.md b/.changeset/silly-houses-promise.md deleted file mode 100644 index a993df0ff3..0000000000 --- a/.changeset/silly-houses-promise.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: scope `:has(...)` selectors diff --git a/.changeset/silly-laws-happen.md b/.changeset/silly-laws-happen.md deleted file mode 100644 index 76428ef3bf..0000000000 --- a/.changeset/silly-laws-happen.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: add proper source map support diff --git a/.changeset/silly-lies-film.md b/.changeset/silly-lies-film.md deleted file mode 100644 index 4fa473f6f6..0000000000 --- a/.changeset/silly-lies-film.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: child effects are removed from parent branches diff --git a/.changeset/silly-masks-exist.md b/.changeset/silly-masks-exist.md deleted file mode 100644 index e1b161719b..0000000000 --- a/.changeset/silly-masks-exist.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: prevent numerous transition/animation memory leaks diff --git a/.changeset/silly-ways-wash.md b/.changeset/silly-ways-wash.md deleted file mode 100644 index 5157693e80..0000000000 --- a/.changeset/silly-ways-wash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: take form resets into account for two way bindings diff --git a/.changeset/silver-beans-hear.md b/.changeset/silver-beans-hear.md deleted file mode 100644 index 19ec07a6e3..0000000000 --- a/.changeset/silver-beans-hear.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: ensure migrate correctly handles named slots diff --git a/.changeset/silver-mice-double.md b/.changeset/silver-mice-double.md deleted file mode 100644 index 58e54286f2..0000000000 --- a/.changeset/silver-mice-double.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: properly update store values diff --git a/.changeset/silver-points-approve.md b/.changeset/silver-points-approve.md deleted file mode 100644 index 2946fc832c..0000000000 --- a/.changeset/silver-points-approve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve indexed each array reconcilation diff --git a/.changeset/silver-sheep-knock.md b/.changeset/silver-sheep-knock.md deleted file mode 100644 index 5c1ab0a910..0000000000 --- a/.changeset/silver-sheep-knock.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -chore: improve $state.frozen performance in prod diff --git a/.changeset/six-apes-peel.md b/.changeset/six-apes-peel.md deleted file mode 100644 index e642a1f507..0000000000 --- a/.changeset/six-apes-peel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: order of arguments for `push_element` in `svelte:element` diff --git a/.changeset/six-beans-laugh.md b/.changeset/six-beans-laugh.md deleted file mode 100644 index f069501d9f..0000000000 --- a/.changeset/six-beans-laugh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: prevent binding to imports diff --git a/.changeset/six-bears-trade.md b/.changeset/six-bears-trade.md deleted file mode 100644 index d7421eb71b..0000000000 --- a/.changeset/six-bears-trade.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: don't use console.trace inside dev warnings diff --git a/.changeset/six-boats-shave.md b/.changeset/six-boats-shave.md deleted file mode 100644 index 6dc8c9628f..0000000000 --- a/.changeset/six-boats-shave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: require whitespace after `@const` tag diff --git a/.changeset/six-chicken-kneel.md b/.changeset/six-chicken-kneel.md deleted file mode 100644 index f7fcbd14c6..0000000000 --- a/.changeset/six-chicken-kneel.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: resolve legacy component props equality for mutations diff --git a/.changeset/six-gorillas-obey.md b/.changeset/six-gorillas-obey.md deleted file mode 100644 index 258505a381..0000000000 --- a/.changeset/six-gorillas-obey.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: allow `let props = $props()` and optimize prop read access diff --git a/.changeset/six-moons-invent.md b/.changeset/six-moons-invent.md deleted file mode 100644 index 21bbdbad32..0000000000 --- a/.changeset/six-moons-invent.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: make internal sources ownerless diff --git a/.changeset/six-vans-add.md b/.changeset/six-vans-add.md deleted file mode 100644 index 3ced1ff9e1..0000000000 --- a/.changeset/six-vans-add.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: stricter `crossorigin` and `wrap` attributes types diff --git a/.changeset/sixty-items-crash.md b/.changeset/sixty-items-crash.md deleted file mode 100644 index 76d830ea66..0000000000 --- a/.changeset/sixty-items-crash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: bindings with typescript assertions diff --git a/.changeset/sixty-numbers-hope.md b/.changeset/sixty-numbers-hope.md deleted file mode 100644 index eb1c949750..0000000000 --- a/.changeset/sixty-numbers-hope.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: support `$state.snapshot` as part of variable declarations diff --git a/.changeset/sixty-pandas-rush.md b/.changeset/sixty-pandas-rush.md deleted file mode 100644 index 0bae18c06c..0000000000 --- a/.changeset/sixty-pandas-rush.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: optimize object property mutations in compilation diff --git a/.changeset/sixty-plants-cover.md b/.changeset/sixty-plants-cover.md deleted file mode 100644 index 608a0e344a..0000000000 --- a/.changeset/sixty-plants-cover.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: removed deferred event updates diff --git a/.changeset/sleepy-cats-eat.md b/.changeset/sleepy-cats-eat.md deleted file mode 100644 index 53efadd712..0000000000 --- a/.changeset/sleepy-cats-eat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: parse ongotpointercapture and onlostpointercapture events correctly diff --git a/.changeset/sleepy-dogs-sit.md b/.changeset/sleepy-dogs-sit.md deleted file mode 100644 index 244523c580..0000000000 --- a/.changeset/sleepy-dogs-sit.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: lazily create a derived for each read method on `SvelteDate.prototype` diff --git a/.changeset/slimy-clouds-talk.md b/.changeset/slimy-clouds-talk.md deleted file mode 100644 index 6ff1219045..0000000000 --- a/.changeset/slimy-clouds-talk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: ignore `src`, `srcset`, and `href` attributes when hydrating diff --git a/.changeset/slimy-garlics-beg.md b/.changeset/slimy-garlics-beg.md deleted file mode 100644 index 3add07c483..0000000000 --- a/.changeset/slimy-garlics-beg.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: add `migration-task` comment after errors diff --git a/.changeset/slimy-hairs-impress.md b/.changeset/slimy-hairs-impress.md deleted file mode 100644 index b25f2eaaae..0000000000 --- a/.changeset/slimy-hairs-impress.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: coherent infinite loop guard diff --git a/.changeset/slimy-laws-explode.md b/.changeset/slimy-laws-explode.md deleted file mode 100644 index b3548bd11f..0000000000 --- a/.changeset/slimy-laws-explode.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: improve handling of unowned derived signals diff --git a/.changeset/slimy-news-help.md b/.changeset/slimy-news-help.md deleted file mode 100644 index a5e3e66ee6..0000000000 --- a/.changeset/slimy-news-help.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: never abort bidirectional transitions diff --git a/.changeset/slimy-onions-approve.md b/.changeset/slimy-onions-approve.md deleted file mode 100644 index 5fb6d305dc..0000000000 --- a/.changeset/slimy-onions-approve.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: use import.meta.hot.acceptExports when available to support partial hmr in vite diff --git a/.changeset/slimy-walls-draw.md b/.changeset/slimy-walls-draw.md deleted file mode 100644 index fd0ec42dd0..0000000000 --- a/.changeset/slimy-walls-draw.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly call exported state diff --git a/.changeset/slow-badgers-invite.md b/.changeset/slow-badgers-invite.md deleted file mode 100644 index f46fc18f09..0000000000 --- a/.changeset/slow-badgers-invite.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: avoid assigning input.value if the value is the same to fix `minlength` diff --git a/.changeset/slow-beds-shave.md b/.changeset/slow-beds-shave.md deleted file mode 100644 index 793c66b6a0..0000000000 --- a/.changeset/slow-beds-shave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: further animation transition improvements diff --git a/.changeset/slow-chefs-dream.md b/.changeset/slow-chefs-dream.md deleted file mode 100644 index 9cd0de887b..0000000000 --- a/.changeset/slow-chefs-dream.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: improve each block fast-path heuristic diff --git a/.changeset/slow-gorillas-yawn.md b/.changeset/slow-gorillas-yawn.md deleted file mode 100644 index 376b4d041c..0000000000 --- a/.changeset/slow-gorillas-yawn.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: avoid flushing queued updates on mount/hydrate diff --git a/.changeset/slow-kids-sparkle.md b/.changeset/slow-kids-sparkle.md deleted file mode 100644 index 11f3ca69a8..0000000000 --- a/.changeset/slow-kids-sparkle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: warn when `$props` rune not called diff --git a/.changeset/slow-ligers-enjoy.md b/.changeset/slow-ligers-enjoy.md deleted file mode 100644 index 99bc046de2..0000000000 --- a/.changeset/slow-ligers-enjoy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: adjust module declaration to work around language tools bug diff --git a/.changeset/slow-plums-chew.md b/.changeset/slow-plums-chew.md deleted file mode 100644 index 94908bb9b9..0000000000 --- a/.changeset/slow-plums-chew.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: handle multiple snippet parameters with one or more being optional diff --git a/.changeset/slow-wombats-reply.md b/.changeset/slow-wombats-reply.md deleted file mode 100644 index 78b6b94861..0000000000 --- a/.changeset/slow-wombats-reply.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: improve how transitions are handled on mount diff --git a/.changeset/small-apples-eat.md b/.changeset/small-apples-eat.md deleted file mode 100644 index baa6396bb6..0000000000 --- a/.changeset/small-apples-eat.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: implement `:global {...}` CSS blocks diff --git a/.changeset/small-chefs-sing.md b/.changeset/small-chefs-sing.md deleted file mode 100644 index ea63f4686e..0000000000 --- a/.changeset/small-chefs-sing.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: destroy effects that error on creation diff --git a/.changeset/small-owls-remain.md b/.changeset/small-owls-remain.md deleted file mode 100644 index a63ff64935..0000000000 --- a/.changeset/small-owls-remain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -chore: align warning and error objects, add frame property diff --git a/.changeset/small-papayas-laugh.md b/.changeset/small-papayas-laugh.md deleted file mode 100644 index 43475946cb..0000000000 --- a/.changeset/small-papayas-laugh.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -breaking: remove Component type, keep using SvelteComponent instead diff --git a/.changeset/small-planets-destroy.md b/.changeset/small-planets-destroy.md deleted file mode 100644 index 03a0b1bcea..0000000000 --- a/.changeset/small-planets-destroy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: update original source in HMR update diff --git a/.changeset/small-sheep-type.md b/.changeset/small-sheep-type.md deleted file mode 100644 index 8985dbe826..0000000000 --- a/.changeset/small-sheep-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: error when exporting reassigned state from module context diff --git a/.changeset/small-spiders-fail.md b/.changeset/small-spiders-fail.md deleted file mode 100644 index fc7f3a5843..0000000000 --- a/.changeset/small-spiders-fail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -breaking: apply fallback value every time in runes mode diff --git a/.changeset/small-suns-lie.md b/.changeset/small-suns-lie.md deleted file mode 100644 index 4295555164..0000000000 --- a/.changeset/small-suns-lie.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -feat: migrate slot usages diff --git a/.changeset/smart-cars-know.md b/.changeset/smart-cars-know.md deleted file mode 100644 index 5b87239e41..0000000000 --- a/.changeset/smart-cars-know.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: avoid recreating handlers for component events diff --git a/.changeset/smart-cherries-leave.md b/.changeset/smart-cherries-leave.md deleted file mode 100644 index d844352c7f..0000000000 --- a/.changeset/smart-cherries-leave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: hydrate HTML with surrounding whitespace diff --git a/.changeset/smart-fans-crash.md b/.changeset/smart-fans-crash.md deleted file mode 100644 index ca38575acb..0000000000 --- a/.changeset/smart-fans-crash.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: correctly compile $effect.root in svelte modules diff --git a/.changeset/smart-grapes-mate.md b/.changeset/smart-grapes-mate.md deleted file mode 100644 index 055220099d..0000000000 --- a/.changeset/smart-grapes-mate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: generate correct types for reactive Map/Set/Date diff --git a/.changeset/smart-parents-swim.md b/.changeset/smart-parents-swim.md deleted file mode 100644 index c85000aaac..0000000000 --- a/.changeset/smart-parents-swim.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: reuse existing proxy when object has multiple references diff --git a/.changeset/smart-poets-care.md b/.changeset/smart-poets-care.md deleted file mode 100644 index bb0dc071e3..0000000000 --- a/.changeset/smart-poets-care.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: allow store as initial value for props in ssr diff --git a/.changeset/smart-spiders-fetch.md b/.changeset/smart-spiders-fetch.md deleted file mode 100644 index d931681cba..0000000000 --- a/.changeset/smart-spiders-fetch.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -feat: always create wrapper `
      ` for `` with CSS custom properties diff --git a/.changeset/smart-turkeys-tell.md b/.changeset/smart-turkeys-tell.md deleted file mode 100644 index e864cd19df..0000000000 --- a/.changeset/smart-turkeys-tell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"svelte": patch ---- - -fix: ensure select value is updated upon select option removal diff --git a/.changeset/smart-zebras-pay.md b/.changeset/smart-zebras-pay.md deleted file mode 100644 index 77f1c723b1..0000000000 --- a/.changeset/smart-zebras-pay.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'svelte': patch ---- - -fix: support hydrating around `