-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
One Shot Systems #8963
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
Merged
Merged
One Shot Systems #8963
Changes from all commits
Commits
Show all changes
114 commits
Select commit
Hold shift + click to select a range
844524b
Basic functionality
alice-i-cecile c8ddefd
commands.run_system
alice-i-cecile 945c81f
Add SystemRegistry resource as part of CorePlugin
alice-i-cecile 655bf2e
Run system by TypeId
alice-i-cecile 7f7bc4a
Fix doc links
alice-i-cecile ac35f19
run_system_by_type_id for World and Commands
alice-i-cecile 549d2eb
Always flush commands from systems
alice-i-cecile d6c2fd2
Always initialize SystemRegistry on the `World`
alice-i-cecile d39092d
Add test suite
alice-i-cecile 63a0707
Doc improvements
alice-i-cecile 89b045c
Store registered systems by their system labels
alice-i-cecile 67c27fc
Ensure that run_system always runs the system exactly once
alice-i-cecile 3e205aa
Advertise SystemRegistry in SystemState docs
alice-i-cecile c16fab6
Doc tests for SystemRegistry
alice-i-cecile 6cabe3e
Improve ergonomics of the register_system API
alice-i-cecile 157d48a
Improve run_by_label API ergonomics
alice-i-cecile b96c695
Improve ergonomics of registering systems
alice-i-cecile 8df48ee
Note limitations
alice-i-cecile f3d15b0
Remove the need to manually update archetypes
alice-i-cecile 6c59d39
Move SystemRegistry to a field on `World`
alice-i-cecile 1ecf7d4
Revert "Move SystemRegistry to a field on `World`"
alice-i-cecile 6efb44a
Clippy fixes
alice-i-cecile 29021bb
Clippy fix
alice-i-cecile a7d0260
System recursion should fail
alice-i-cecile 07e7caa
Documentation improvements
alice-i-cecile 23b0768
Nicer error handling
alice-i-cecile 273113b
Return index from register system methods
alice-i-cecile bbe6dc6
Fix off by one error
alice-i-cecile 0c4bfb5
Reduce noisy returns
alice-i-cecile 6e45a31
Fix broken tests
alice-i-cecile 085a21d
Add example
alice-i-cecile 2316077
Improve ergonomics of register_system method
alice-i-cecile ccbe49f
Formatting
alice-i-cecile f9d0348
Expose run_systems_by_boxed_label method
alice-i-cecile 184cd6b
Create matching methods on App
alice-i-cecile 45bba7d
Polish example
alice-i-cecile f63b221
Update examples README per CI
alice-i-cecile 4e21f4b
Simplify system_registry doc tests
alice-i-cecile 46e7092
Fix broken link
alice-i-cecile 5d275ff
Add Callback type to bevy_ecs itself
alice-i-cecile 24508d1
Implement PartialEq and Eq for Callback
alice-i-cecile 0855a0f
Implement Hash for Callback
alice-i-cecile 8effb5b
Change run_system_by_boxed_label to run_callback
alice-i-cecile 9191f12
Fix doc example
alice-i-cecile 973be53
Manually implement Hash
alice-i-cecile aedd75b
Fix doc example (for real?)
alice-i-cecile 69e8039
Avoid box allocation
alice-i-cecile f2b398a
Mostly fix doc example
alice-i-cecile 98ed955
Remove frustrating doc example
alice-i-cecile 7476695
Typo fix
alice-i-cecile 4756690
Clarify drawbacks of SystemState
alice-i-cecile 56d09f5
Punctuation
alice-i-cecile bf42626
Typo
alice-i-cecile d553b1e
Fix mistake from merge conflict
alice-i-cecile 3ec4643
Remove vague warning about callbacks
alice-i-cecile 6a49a83
Add Send and Sync bounds to label traits
alice-i-cecile d60b6cf
Clean up docs and naming around system registration
alice-i-cecile e1b5ccd
Make App and World APIs consistent
alice-i-cecile 2f3e570
Make doc links on higher level methods more useful
alice-i-cecile aa43356
fix doc tests
Pascualex 7a2b873
remove run_systems_by_set
Pascualex ffdbd9b
remove run_systems_by_label from Commands
Pascualex eea7e16
rename params to marker
Pascualex 95efbb0
key systems by SystemId
Pascualex b035e3b
shorten system registry function names
Pascualex 383cbeb
Fixed most mistakes made during rebasing
Trashtalk217 cd0e7c5
Fix command_processing test, renamed apply_buffers
Trashtalk217 dea567f
Removed unnecessary imports, updated docs
Trashtalk217 f47629b
Remove all of SystemTypeIdLabel and SystemLabel
Trashtalk217 c396859
cargo fmt
Trashtalk217 7c8e15b
Added a failing test with unregistered systems
Trashtalk217 5061e55
Simplified SystemRegistry, removed SystemId
Trashtalk217 72b994f
Fix test, cleanup
Trashtalk217 64ad487
Better error for nested/recursive one-shot systems
Trashtalk217 1098cd5
Removed the option to call systems by Id
Trashtalk217 d9c89d9
Fixed a CI error in bevy_app
Trashtalk217 5e50d02
Fixed a previous rebasing error
Trashtalk217 c954f0d
Added a wrapper type for TypeId: SystemId
Trashtalk217 aa15370
Re-instated the possibillity to run a system by id
Trashtalk217 47c75fc
Fixed some build errors, fixed example
Trashtalk217 1963e63
Remove outdated comments
Trashtalk217 069db4b
Fix CI for Rust 1.72 (#9562)
rparrett afe255e
Add example
alice-i-cecile f565203
remove run_systems_by_set
Pascualex 948147f
Renamed RunSystem to RunSystemCommand to avoid name collision
Trashtalk217 9195849
Fixed a mistake from rebasing
Trashtalk217 29837c6
Revert "Add example"
Trashtalk217 ebf4b99
Revert "Fix CI for Rust 1.72 (#9562)"
Trashtalk217 9d15661
Fixed tests
Trashtalk217 47c67b3
Moved run_system command / test over to system
Trashtalk217 478e5fd
cargo fmt
Trashtalk217 1b4e95c
Merge branch 'main' into system-registry
Trashtalk217 9f6a426
Rounded out remove systems from SystemRegistry
Trashtalk217 0a41754
Changed and added to documentation
Trashtalk217 12c067f
appease the CI
Trashtalk217 e646e9c
fixed doc test
Trashtalk217 17ad075
fixed doc example 2
Trashtalk217 d1e7e4c
fixed doc test 3
Trashtalk217 61986c3
Changes from code review
Trashtalk217 c6de53d
Changed outdated documentation
Trashtalk217 ea30824
Store system initialization explicitly
Trashtalk217 ff61574
spelling mistake
Trashtalk217 66b688c
Changed public API for nested one-shot systems
Trashtalk217 7bacdf2
Update crates/bevy_ecs/src/system/system.rs
Trashtalk217 83b898b
Removed SystemRegistry, systems as almost entities
Trashtalk217 d01a23e
Fixed documentation, added RegisteredSystemError's
Trashtalk217 c4c94e6
trimmed API
Trashtalk217 d2e9ac7
fixed documentation and an error
Trashtalk217 bcb7687
small fixes, removed failing test
Trashtalk217 0b8f8dc
renamed run_system and run_system_by_id
Trashtalk217 cdaecfc
cargo fmt
Trashtalk217 e5fbad0
fixed doc tests
Trashtalk217 99166fe
Updated documentation
Trashtalk217 aa81e3f
Remove unnecessary comment about being flexible.
james7132 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.