Skip to content
This repository has been archived by the owner on Nov 22, 2023. It is now read-only.

then might not unfollow old value? double check #2

Closed
lord opened this issue Jul 22, 2020 · 1 comment · Fixed by #17
Closed

then might not unfollow old value? double check #2

lord opened this issue Jul 22, 2020 · 1 comment · Fixed by #17

Comments

@lord
Copy link
Owner

lord commented Jul 22, 2020

No description provided.

@lord
Copy link
Owner Author

lord commented Sep 16, 2020

in general i think it's such that there's no way for a node to unfollow if the edge wasnecessary

@lord lord closed this as completed in #17 Sep 17, 2020
lord added a commit that referenced this issue Sep 17, 2020
Fixes #2 
Fixes #5 
Fixes #12 

- Each AnchorHandle now has a token, a non reference-counted unique identifier. To actually request a node you still need the actual AnchorHandle, so that you can't request a node that has been garbage collected away.
- UpdateContext now has unrequest; this cancels notifications for a previously requested dependency that is no longer needed. Then uses this to unfollow old nodes.
- Dirty bits now stored alongside heap of recalculations, instead of the graph.
- Edges now only set to dirty if the value actually changes. Otherwise, kept as-is, but the nodes themselves are marked as dirty.
- Nodes calling `request` are now actually informed if the value has changed since their last request, and many will skip calculations if nothing has changed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant