From 94415f0d96dcd75e638938165b5d08ac59c15e91 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Wed, 2 Jul 2025 21:33:30 -0400 Subject: [PATCH] null out from_async_derived in more places --- packages/svelte/src/constants.js | 1 + packages/svelte/src/internal/client/dom/blocks/boundary.js | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/svelte/src/constants.js b/packages/svelte/src/constants.js index 784920f4b0..69cd213940 100644 --- a/packages/svelte/src/constants.js +++ b/packages/svelte/src/constants.js @@ -43,6 +43,7 @@ export const NAMESPACE_MATHML = 'http://www.w3.org/1998/Math/MathML'; // can be ignored and we want to keep the validation for svelte-ignore in place export const IGNORABLE_RUNTIME_WARNINGS = /** @type {const} */ ([ 'await_waterfall', + 'await_reactivity_loss', 'state_snapshot_uncloneable', 'binding_property_non_reactive', 'hydration_attribute_changed', diff --git a/packages/svelte/src/internal/client/dom/blocks/boundary.js b/packages/svelte/src/internal/client/dom/blocks/boundary.js index bb0d896b09..d174dbdc5d 100644 --- a/packages/svelte/src/internal/client/dom/blocks/boundary.js +++ b/packages/svelte/src/internal/client/dom/blocks/boundary.js @@ -376,8 +376,10 @@ export function capture(track = true) { set_active_effect(previous_effect); set_active_reaction(previous_reaction); set_component_context(previous_component_context); - } else if (DEV) { - set_from_async_derived(was_from_async_derived); + } + + if (DEV) { + set_from_async_derived(track ? null : was_from_async_derived); } // prevent the active effect from outstaying its welcome @@ -416,6 +418,7 @@ function exit() { set_active_effect(null); set_active_reaction(null); set_component_context(null); + if (DEV) set_from_async_derived(null); } export function pending() {