Add more granular system sets for state transition schedule ordering#13763
Merged
alice-i-cecile merged 8 commits intobevyengine:mainfrom Jun 10, 2024
Merged
Add more granular system sets for state transition schedule ordering#13763alice-i-cecile merged 8 commits intobevyengine:mainfrom
alice-i-cecile merged 8 commits intobevyengine:mainfrom
Conversation
89e7472 to
b5cfb7c
Compare
Member
|
We should collaborate on either this or #13724: they seem very similar :) |
lee-orr
approved these changes
Jun 9, 2024
Contributor
lee-orr
left a comment
There was a problem hiding this comment.
Overall the PR is good - the main issue was in the test, so I'd recommend applying some changes there (I provided suggestions) - but once they're in I'll be happy with this.
Co-authored-by: Lee-Orr <lee-orr@users.noreply.github.com>
benfrankel
reviewed
Jun 9, 2024
Contributor
benfrankel
left a comment
There was a problem hiding this comment.
Some documentation nits & a question.
Contributor
This in the changelog seems not entirely accurate. |
8187a21 to
dd100cc
Compare
alice-i-cecile
approved these changes
Jun 9, 2024
Member
alice-i-cecile
left a comment
There was a problem hiding this comment.
Good tests, reasonable implementation. If you can get CI green I'll merge this tomorrow during the merge train.
dd100cc to
ad188aa
Compare
benfrankel
approved these changes
Jun 9, 2024
mockersf
pushed a commit
that referenced
this pull request
Jun 10, 2024
…13763) # Objective Fixes #13711 ## Solution Introduce smaller, generic system sets for each schedule variant, which are ordered against other generic variants: - `ExitSchedules<S>` - For `OnExit` schedules, runs from leaf states to root states. - `TransitionSchedules<S>` - For `OnTransition` schedules, runs in arbitrary order. - `EnterSchedules<S>` - For `OnEnter` schedules, runs from root states to leaf states. Also unified `ApplyStateTransition<S>` schedule which works in basically the same way, just for internals. ## Testing - One test that tests schedule execution order --------- Co-authored-by: Lee-Orr <lee-orr@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Objective
Fixes #13711
Solution
Introduce smaller, generic system sets for each schedule variant, which are ordered against other generic variants:
ExitSchedules<S>- ForOnExitschedules, runs from leaf states to root states.TransitionSchedules<S>- ForOnTransitionschedules, runs in arbitrary order.EnterSchedules<S>- ForOnEnterschedules, runs from root states to leaf states.Also unified
ApplyStateTransition<S>schedule which works in basically the same way, just for internals.Testing