diff --git a/.changeset/pre.json b/.changeset/pre.json index 5d4b668ce9..b7f5e30134 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -228,6 +228,7 @@ "seven-deers-jam", "seven-hornets-smile", "seven-jobs-sniff", + "seven-masks-end", "seven-ravens-check", "shaggy-cameras-live", "sharp-gorillas-impress", @@ -260,6 +261,7 @@ "sour-weeks-fix", "spicy-jeans-deliver", "spicy-plums-admire", + "spotty-houses-search", "spotty-pens-agree", "spotty-rocks-destroy", "spotty-spiders-compare", @@ -320,6 +322,7 @@ "violet-pigs-jam", "weak-terms-destroy", "wet-games-fly", + "wet-wombats-repeat", "wicked-clouds-exercise", "wicked-doors-train", "wicked-hairs-cheer", diff --git a/packages/svelte/CHANGELOG.md b/packages/svelte/CHANGELOG.md index 0fce88cce7..46f96db13a 100644 --- a/packages/svelte/CHANGELOG.md +++ b/packages/svelte/CHANGELOG.md @@ -1,5 +1,15 @@ # svelte +## 5.0.0-next.72 + +### Patch Changes + +- fix: adjust keyed each block equality handling ([#10699](https://github.com/sveltejs/svelte/pull/10699)) + +- fix: improve indexed each equality ([#10702](https://github.com/sveltejs/svelte/pull/10702)) + +- fix: prevent snippet children conflict ([#10700](https://github.com/sveltejs/svelte/pull/10700)) + ## 5.0.0-next.71 ### Patch Changes diff --git a/packages/svelte/package.json b/packages/svelte/package.json index e8d9e43c1c..8ab2452936 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.71", + "version": "5.0.0-next.72", "type": "module", "types": "./types/index.d.ts", "engines": { diff --git a/packages/svelte/src/internal/client/reactivity/deriveds.js b/packages/svelte/src/internal/client/reactivity/deriveds.js index f0bbb10a31..404e68ab6f 100644 --- a/packages/svelte/src/internal/client/reactivity/deriveds.js +++ b/packages/svelte/src/internal/client/reactivity/deriveds.js @@ -27,8 +27,7 @@ export function derived(fn) { }; if (DEV) { - // @ts-expect-error - signal.inspect = new Set(); + /** @type {import('#client').DerivedDebug} */ (signal).inspect = new Set(); } if (current_reaction !== null) { diff --git a/packages/svelte/src/internal/client/reactivity/sources.js b/packages/svelte/src/internal/client/reactivity/sources.js index b152054d52..6c32a95a69 100644 --- a/packages/svelte/src/internal/client/reactivity/sources.js +++ b/packages/svelte/src/internal/client/reactivity/sources.js @@ -24,7 +24,7 @@ import { CLEAN, DERIVED, DIRTY, MANAGED } from '../constants.js'; /** * @template V * @param {V} value - * @returns {import('./types.js').Source} + * @returns {import('#client').Source} */ /*#__NO_SIDE_EFFECTS__*/ export function source(value) { @@ -47,7 +47,7 @@ export function source(value) { /** * @template V * @param {V} initial_value - * @returns {import('./types.js').Source} + * @returns {import('#client').Source} */ /*#__NO_SIDE_EFFECTS__*/ export function mutable_source(initial_value) { @@ -127,9 +127,9 @@ export function set(signal, value) { // @ts-expect-error if (DEV && signal.inspect) { if (is_batching_effect) { - set_last_inspected_signal(/** @type {import('#client').SourceDebug} */ (signal)); + set_last_inspected_signal(/** @type {import('#client').ValueDebug} */ (signal)); } else { - for (const fn of /** @type {import('#client').SourceDebug} */ (signal).inspect) fn(); + for (const fn of /** @type {import('#client').ValueDebug} */ (signal).inspect) fn(); } } } diff --git a/packages/svelte/src/internal/client/reactivity/store.js b/packages/svelte/src/internal/client/reactivity/store.js index 44b25ce636..fe2ef12971 100644 --- a/packages/svelte/src/internal/client/reactivity/store.js +++ b/packages/svelte/src/internal/client/reactivity/store.js @@ -50,7 +50,7 @@ export function store_get(store, store_name, stores) { /** * @template V * @param {import('#client').Store | null | undefined} store - * @param {import('./types.js').Source} source + * @param {import('#client').Source} source */ function connect_store_to_signal(store, source) { if (store == null) { diff --git a/packages/svelte/src/version.js b/packages/svelte/src/version.js index 86694f4697..00875a7c69 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.71'; +export const VERSION = '5.0.0-next.72'; export const PUBLIC_VERSION = '5'; diff --git a/sites/svelte-5-preview/src/lib/Output/Viewer.svelte b/sites/svelte-5-preview/src/lib/Output/Viewer.svelte index 1bd921a523..322c68c5f0 100644 --- a/sites/svelte-5-preview/src/lib/Output/Viewer.svelte +++ b/sites/svelte-5-preview/src/lib/Output/Viewer.svelte @@ -131,7 +131,13 @@ const __repl_exports = ${$bundle.client?.code}; { - const { mount, unmount, App } = __repl_exports; + const { mount, unmount, App, untrack } = __repl_exports; + + const console_log = console.log + + console.log = function (...v) { + return untrack(() => console_log.apply(this, v)); + } const component = mount(App, { target: document.body }); window.__unmount_previous = () => unmount(component); } diff --git a/sites/svelte-5-preview/src/lib/workers/bundler/index.js b/sites/svelte-5-preview/src/lib/workers/bundler/index.js index 920f8328eb..bd0ee9d67e 100644 --- a/sites/svelte-5-preview/src/lib/workers/bundler/index.js +++ b/sites/svelte-5-preview/src/lib/workers/bundler/index.js @@ -485,7 +485,7 @@ async function bundle({ uid, files }) { lookup.set('./__entry.js', { name: '__entry', source: ` - export { mount, unmount } from 'svelte'; + export { mount, unmount, untrack } from 'svelte'; export {default as App} from './App.svelte'; `, type: 'js',