bevy/crates
MinerSebas b3462428c9 Move the CoreStage::Startup to a seperate StartupSchedule label (#2434)
# Objective

- `CoreStage::Startup` is unique in the `CoreStage` enum, in that it represents a `Schedule` and not a `SystemStage`.
- This can lead to confusion about how `CoreStage::Startup` and the `StartupStage` enum are related.
- Beginners sometimes try `.add_system_to_stage(CoreStage::Startup, setup.system())` instead of `.add_startup_system(setup.system())`, which causes a Panic:
```
thread 'main' panicked at 'Stage 'Startup' does not exist or is not a SystemStage', crates\bevy_ecs\src\schedule\mod.rs:153:13
stack backtrace:
   0: std::panicking::begin_panic_handler
             at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b\/library\std\src\panicking.rs:493
   1: std::panicking::begin_panic_fmt
             at /rustc/53cb7b09b00cbea8754ffb78e7e3cb521cb8af4b\/library\std\src\panicking.rs:435
   2: bevy_ecs::schedule::{{impl}}::add_system_to_stage::stage_not_found
             at .\crates\bevy_ecs\src\schedule\mod.rs:153
   3: bevy_ecs::schedule::{{impl}}::add_system_to_stage::{{closure}}<tuple<bevy_ecs::system::function_system::IsFunctionSystem, tuple<bevy_ecs::system::commands::Commands, bevy_ecs::change_detection::ResMut<bevy_asset::assets::Assets<bevy_render::mesh::mesh::Me
             at .\crates\bevy_ecs\src\schedule\mod.rs:161
   4: core::option::Option<mut bevy_ecs::schedule::stage::SystemStage*>::unwrap_or_else<mut bevy_ecs::schedule::stage::SystemStage*,closure-0>
             at C:\Users\scher\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\option.rs:427
   5: bevy_ecs::schedule::Schedule::add_system_to_stage<tuple<bevy_ecs::system::function_system::IsFunctionSystem, tuple<bevy_ecs::system::commands::Commands, bevy_ecs::change_detection::ResMut<bevy_asset::assets::Assets<bevy_render::mesh::mesh::Mesh>>, bevy_ec
             at .\crates\bevy_ecs\src\schedule\mod.rs:159
   6: bevy_app::app_builder::AppBuilder::add_system_to_stage<tuple<bevy_ecs::system::function_system::IsFunctionSystem, tuple<bevy_ecs::system::commands::Commands, bevy_ecs::change_detection::ResMut<bevy_asset::assets::Assets<bevy_render::mesh::mesh::Mesh>>, be
             at .\crates\bevy_app\src\app_builder.rs:196
   7: 3d_scene::main
             at .\examples\3d\3d_scene.rs:4
   8: core::ops::function::FnOnce::call_once<fn(),tuple<>>
             at C:\Users\scher\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\src\rust\library\core\src\ops\function.rs:227
```

## Solution

- Replace the `CoreStage::Startup` Label with the new `StartupSchedule` unit type.


Resolves #2229
2022-02-08 00:03:50 +00:00
..
bevy_app Move the CoreStage::Startup to a seperate StartupSchedule label (#2434) 2022-02-08 00:03:50 +00:00
bevy_asset check if resource for asset already exists before adding it (#3560) 2022-02-06 01:07:56 +00:00
bevy_audio Update rodio 0.15 (#3846) 2022-02-03 04:25:44 +00:00
bevy_core impl more traits for bevy_core::Name (#3611) 2022-02-04 03:07:20 +00:00
bevy_core_pipeline Update ClearColor Resource docs (#3842) 2022-02-02 21:29:48 +00:00
bevy_crevice Don't panic in macro shape validation (#3647) 2022-01-15 22:14:43 +00:00
bevy_derive Don't panic in macro shape validation (#3647) 2022-01-15 22:14:43 +00:00
bevy_diagnostic reverse how diagnostic values are saved (#3056) 2022-02-07 21:50:52 +00:00
bevy_dylib Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_dynamic_plugin Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_ecs allow Entity to be deserialized with serde_json (#3873) 2022-02-06 04:16:16 +00:00
bevy_ecs_compile_fail_tests Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_gilrs Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_gltf Add TransformBundle (#3054) 2022-02-06 01:07:55 +00:00
bevy_input derive clone for Input (#3569) 2022-02-04 02:42:59 +00:00
bevy_internal Enable the doc_markdown clippy lint (#3457) 2022-01-09 23:20:13 +00:00
bevy_log Add crate level docs to bevy_log and enable #![warn(missing_docs)] (#3520) 2022-01-23 18:00:43 +00:00
bevy_macro_utils Don't panic in macro shape validation (#3647) 2022-01-15 22:14:43 +00:00
bevy_math Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_pbr fix: remove unneeded filter in check_light_mesh_visibility (#3861) 2022-02-04 03:07:22 +00:00
bevy_reflect document more of bevy_reflect (#3655) 2022-01-14 19:09:44 +00:00
bevy_render doc: remove mention of void return type in entry_point docs (#3881) 2022-02-07 22:07:43 +00:00
bevy_scene Increment last event count on next instead of iter (#2382) 2022-02-02 02:29:33 +00:00
bevy_sprite Add the Inside version to the Collision enum (#2489) 2022-02-01 22:40:25 +00:00
bevy_tasks Document bevy_tasks and enable #![warn(missing_docs)] (#3509) 2022-01-16 04:53:22 +00:00
bevy_text Update docstrings for text_system and text2d_system (#3732) 2022-01-20 19:32:16 +00:00
bevy_transform Add TransformBundle (#3054) 2022-02-06 01:07:55 +00:00
bevy_ui Fix node update (#3785) 2022-02-04 03:37:42 +00:00
bevy_utils Release 0.6.0 (#3587) 2022-01-08 10:18:22 +00:00
bevy_window Replace VSync with PresentMode (#3812) 2022-02-04 03:37:44 +00:00
bevy_winit Replace VSync with PresentMode (#3812) 2022-02-04 03:37:44 +00:00