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 handling of unowned derived signals #10565

Merged
merged 2 commits into from
Feb 20, 2024
Merged

Conversation

trueadm
Copy link
Contributor

@trueadm trueadm commented Feb 20, 2024

Fixes #10549.

This PR introduces write versions to the both types of signal. For source signals we increment this version number every time a new value is written to the signal. For computation signals we only use the write version for unowned signals (signals that aren't owned by an effect). We check the dependencies of an unowned derived to see if a version is higher than that of the unowned derived signal to determine if the derived is dirty or not.

Copy link

changeset-bot bot commented Feb 20, 2024

🦋 Changeset detected

Latest commit: ad55425

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

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: External $derived variable inside effect/inspect runes causes infinite re-renders
1 participant