-
-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Detecting system order ambiguities requires a specific world #4364
Copy link
Copy link
Open
Labels
A-ECSEntities, components, systems, and eventsEntities, components, systems, and eventsC-Code-QualityA section of code that is hard to understand or changeA section of code that is hard to understand or changeD-ComplexQuite challenging from either a design or technical perspective. Ask for help!Quite challenging from either a design or technical perspective. Ask for help!
Metadata
Metadata
Assignees
Labels
A-ECSEntities, components, systems, and eventsEntities, components, systems, and eventsC-Code-QualityA section of code that is hard to understand or changeA section of code that is hard to understand or changeD-ComplexQuite challenging from either a design or technical perspective. Ask for help!Quite challenging from either a design or technical perspective. Ask for help!
Problem
Detecting system order ambiguities should be entirely agnostic to the world that we're running on.
However, schedules (well,
SystemStagefor now) must be initialized on a specificWorld(taking&mut World) before we can check for ambiguities, or the whole thing panics.Proposed solution
Additional context
Discovered in #4299, as this makes exposing useful APIs and writing tests substantially harder than it should.
#1481 needs to take this design into account: we'll need to pass in the archetype invariants to the methods that compute hypothetical invariants