bevy/crates
Daniel McNab 5ba2b9adcf Unique WorldId (#2827)
# Objective

Fixes these issues:
- `WorldId`s currently aren't necessarily unique
    - I want to guarantee that they're unique to safeguard my librarified version of https://github.com/bevyengine/bevy/discussions/2805
    - There probably hasn't been a collision yet, but they could technically collide
- `SystemId` isn't used for anything
  - It's no longer used now that `Locals` are stored within the `System`.
- `bevy_ecs` depends on rand

## Solution

- Instead of randomly generating `WorldId`s, just use an incrementing atomic counter, panicing on overflow.
- Remove `SystemId` 
    - We do need to allow Locals for exclusive systems at some point, but exclusive systems couldn't access their own `SystemId` anyway.
- Now that these don't depend on rand, move it to a dev-dependency

## Todo

Determine if `WorldId` should be `u32` based instead
2021-09-30 20:54:47 +00:00
..
bevy_app Improve bevy_ecs and bevy_app API docs where referenced by the new Bevy Book (#2365) 2021-09-17 18:00:29 +00:00
bevy_asset Doc warnings (#2577) 2021-09-14 22:46:18 +00:00
bevy_audio Not me ... us (#2654) 2021-08-15 20:08:52 +00:00
bevy_core Unique WorldId (#2827) 2021-09-30 20:54:47 +00:00
bevy_derive Not me ... us (#2654) 2021-08-15 20:08:52 +00:00
bevy_diagnostic add get_history function to Diagnostic (#2772) 2021-09-06 19:16:08 +00:00
bevy_dylib Not me ... us (#2654) 2021-08-15 20:08:52 +00:00
bevy_dynamic_plugin Not me ... us (#2654) 2021-08-15 20:08:52 +00:00
bevy_ecs Unique WorldId (#2827) 2021-09-30 20:54:47 +00:00
bevy_gilrs Not me ... us (#2654) 2021-08-15 20:08:52 +00:00
bevy_gltf Not me ... us (#2654) 2021-08-15 20:08:52 +00:00
bevy_input Add convenience methods for checking a set of inputs (#2760) 2021-09-01 21:21:41 +00:00
bevy_internal Add trace_tracy feature for Tracy profiling (#2832) 2021-09-16 23:39:22 +00:00
bevy_log Add trace_tracy feature for Tracy profiling (#2832) 2021-09-16 23:39:22 +00:00
bevy_macro_utils update cargo-manifest (#2859) 2021-09-22 22:11:54 +00:00
bevy_math Update glam requirement from 0.17.3 to 0.18.0 (#2748) 2021-09-06 18:49:40 +00:00
bevy_pbr Doc warnings (#2577) 2021-09-14 22:46:18 +00:00
bevy_reflect Nightly clippy fixes (#2702) 2021-09-09 16:41:21 +00:00
bevy_render Update hexasphere requirement from 4.0.0 to 5.0.0 (#2880) 2021-09-27 23:58:44 +00:00
bevy_scene System Param Lifetime Split (#2605) 2021-08-15 20:51:53 +00:00
bevy_sprite add_texture returns index to texture (#2864) 2021-09-28 20:54:16 +00:00
bevy_tasks Not me ... us (#2654) 2021-08-15 20:08:52 +00:00
bevy_text Replace .insert_resource(T::default()) calls with init_resource::<T>() (#2807) 2021-09-13 14:02:28 +00:00
bevy_transform Add despawn_recursive to EntityMut (#2855) 2021-09-28 20:35:11 +00:00
bevy_ui unused deps? (#2809) 2021-09-16 09:37:12 +00:00
bevy_utils derive Debug, Clone for FixedState (StableAHash) (#2694) 2021-08-24 01:31:39 +00:00
bevy_wgpu Nightly clippy fixes (#2702) 2021-09-09 16:41:21 +00:00
bevy_window unused deps? (#2809) 2021-09-16 09:37:12 +00:00
bevy_winit Fix scale_factor_override in the winit backend (#2784) 2021-09-10 18:46:16 +00:00