-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
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!
Type
Fields
Give feedbackNo fields configured for issues without a type.
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