Skip to content

Commit 8cfea9f

Browse files
authored
breaking: always run pre effects synchronously (#10928)
1 parent dbd1117 commit 8cfea9f

File tree

3 files changed

+11
-7
lines changed

3 files changed

+11
-7
lines changed

.changeset/few-clouds-shop.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'svelte': patch
3+
---
4+
5+
breaking: always run pre effects immediately

packages/svelte/src/internal/client/reactivity/effects.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,9 +142,8 @@ export function pre_effect(fn) {
142142
: '')
143143
);
144144
}
145-
const sync = current_effect !== null && (current_effect.f & RENDER_EFFECT) !== 0;
146145

147-
return create_effect(PRE_EFFECT, fn, sync);
146+
return create_effect(PRE_EFFECT, fn, true);
148147
}
149148

150149
/**
@@ -206,7 +205,7 @@ export function render_effect(fn, managed = false) {
206205
let flags = RENDER_EFFECT;
207206
if (managed) flags |= MANAGED;
208207

209-
return create_effect(flags, /** @type {any} */ (fn), true);
208+
return create_effect(flags, fn, true);
210209
}
211210

212211
/**

packages/svelte/tests/runtime-runes/samples/pre-effect-ordering/_config.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ export default test({
1919

2020
assert.deepEqual(log, [
2121
'Outer Effect Start (0)',
22-
'Outer Effect End (0)',
2322
'Inner Effect (0)',
23+
'Outer Effect End (0)',
2424
'Outer Effect Start (1)',
25-
'Outer Effect End (1)',
2625
'Inner Effect (1)',
26+
'Outer Effect End (1)',
2727
'Outer Effect Start (2)',
28-
'Outer Effect End (2)',
29-
'Inner Effect (2)'
28+
'Inner Effect (2)',
29+
'Outer Effect End (2)'
3030
]);
3131
}
3232
});

0 commit comments

Comments
 (0)