bevy/crates
Alexander Sepity d51130d4ab Many-to-many system labels (#1576)
* Systems can now have more than one label attached to them.
* System labels no longer have to be unique in the stage.

Code like this is now possible:
```rust
SystemStage::parallel()
    .with_system(system_0.system().label("group one").label("first"))
    .with_system(system_1.system().label("group one").after("first"))
    .with_system(system_2.system().after("group one"))
```

I've opted to use only the system name in ambiguity reporting, which previously was only a fallback; this, obviously, is because labels aren't one-to-one with systems anymore. We could allow users to name systems to improve this; we'll then have to think about whether or not we want to allow using the name as a label (this would, effectively, introduce implicit labelling, not all implications of which are clear to me yet wrt many-to-many labels).

Dependency cycle errors are reported using the system names and only the labels that form the cycle, with each system-system "edge" in the cycle represented as one or several labels.

Slightly unrelated: `.before()` and `.after()` with a label not attached to any system no longer crashes, and logs a warning instead. This is necessary to, for example, allow plugins to specify execution order with systems of potentially missing other plugins.
2021-03-09 23:08:34 +00:00
..
bevy_app Add EventWriter (#1575) 2021-03-07 20:42:04 +00:00
bevy_asset Add EventWriter (#1575) 2021-03-07 20:42:04 +00:00
bevy_audio Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00
bevy_core Update glam to 0.13.0. (#1550) 2021-03-06 19:39:16 +00:00
bevy_derive Modify Derive to allow unit structs for RenderResources. (#1089) 2020-12-23 17:21:10 -06:00
bevy_diagnostic ♻️ Timer refactor to duration. Add Stopwatch struct. (#1151) 2021-03-05 19:59:14 +00:00
bevy_dylib release 0.4.0 (#1093) 2020-12-19 13:28:00 -06:00
bevy_dynamic_plugin update libloading (#1543) 2021-03-03 03:11:12 +00:00
bevy_ecs Many-to-many system labels (#1576) 2021-03-09 23:08:34 +00:00
bevy_gilrs Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00
bevy_gltf Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00
bevy_input Add EventWriter (#1575) 2021-03-07 20:42:04 +00:00
bevy_internal Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00
bevy_log Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00
bevy_math Update glam to 0.13.0. (#1550) 2021-03-06 19:39:16 +00:00
bevy_pbr Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00
bevy_reflect Make TypeRegistration::get_short_name() pub (#1571) 2021-03-07 19:50:18 +00:00
bevy_render Add EventWriter (#1575) 2021-03-07 20:42:04 +00:00
bevy_scene Add EventWriter (#1575) 2021-03-07 20:42:04 +00:00
bevy_sprite fix flip of contributor bird (#1573) 2021-03-07 19:50:19 +00:00
bevy_tasks Xtask CI (#1387) 2021-02-22 08:42:19 +00:00
bevy_text Update glam to 0.13.0. (#1550) 2021-03-06 19:39:16 +00:00
bevy_transform Update glam to 0.13.0. (#1550) 2021-03-06 19:39:16 +00:00
bevy_ui Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00
bevy_utils Update ahash requirement from 0.6.1 to 0.7.0 (#1370) 2021-02-01 13:29:54 -08:00
bevy_wgpu Add EventWriter (#1575) 2021-03-07 20:42:04 +00:00
bevy_window Add EventWriter (#1575) 2021-03-07 20:42:04 +00:00
bevy_winit Bevy ECS V2 (#1525) 2021-03-05 07:54:35 +00:00