Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: improve effect sequencing and execution order #10949

Merged
merged 49 commits into from
Mar 28, 2024

Conversation

trueadm
Copy link
Contributor

@trueadm trueadm commented Mar 26, 2024

The aim of this PR is to ensure that effects are scheduled in true topological order bases on the component tree, ensuring even the order siblings are created in means that is the guaranteed order for updates. This will fix a collection of issues with Svelte 4 compatibility due to the nature of Svelte 4's rendering enforcing a similar behavior.

We should probably benchmark the overhead involved in this change, but I think we can likely fine-tune this implementation quite a bit once we have all tests passing.

Fixes #10787.

Copy link

changeset-bot bot commented Mar 26, 2024

🦋 Changeset detected

Latest commit: ffd6ee8

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
svelte Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@trueadm
Copy link
Contributor Author

trueadm commented Mar 28, 2024

I pushed some changes to make reactive statements work like they did before this PR. ondestroy-deep is the only test failing on this PR now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Svelte 5: effects run out of order
3 participants