Skip to content

Rework DependencyClosure to utilize exact node conditions.#210

Merged
garretrieger merged 7 commits intow3c:mainfrom
garretrieger:extract_conditions_integration
Apr 15, 2026
Merged

Rework DependencyClosure to utilize exact node conditions.#210
garretrieger merged 7 commits intow3c:mainfrom
garretrieger:extract_conditions_integration

Conversation

@garretrieger
Copy link
Copy Markdown
Contributor

Replaces implementations of AnalyzeSegment() and SegmentsThatInteractWith() to utilize exact per node conditions extracted from the dependency graph. This significantly simplifies both implementations and allows a significant amount of code to be dropped from DependencyClosure.

DependencyClosure::AnalyzeSegment() now works in more cases, and is significantly sped up vs the prior implementation.

Cached values are invalidated and updated as needed.
…ee_set<Node>>.

This significantly reduces overhead associated with creating multiple nested btree_set's.
…ions.

This significantly simplifies the implementation and allows it to work in cases we'd previously reject. Also remove a code and reachability indices that are no longer needed.
Will be needed to re-implement SegmentsThatInteractWith(...)
Additionally drops a bunch of now uneeded code from DependencyClosure.
@garretrieger garretrieger merged commit 0b8646b into w3c:main Apr 15, 2026
3 checks passed
@garretrieger garretrieger deleted the extract_conditions_integration branch April 15, 2026 00:19
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.

1 participant