New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update to Bevy 0.10
#168
Update to Bevy 0.10
#168
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your hard work updating this and bevy_ecs_tilemap
. It really made my already-busy week so much easier
I've addressed all of the requested changes. Unfortunately, I've encountered what I believe is some race condition between systems of |
Here are my investigation results about the race condition in the Without any explicit ordering between
The system that issues the command to insert the bundle is Even if the example does not crash, the player is sometimes spawned at the wrong position, see Ordering Therefore, I changed the Side noteAs a side note, I've run the In I believe that this is related to #140. |
I see, it makes sense that we'd have to be explicit in the ordering of our systems vs rapiers now. I'm guessing with this explicit scheduling that the issue is truly gone, but it's hard to be sure. It's a bit of a shame to require users to do that - but I'm also okay with it for now. I think we could keep |
Yeah, I believe this is something Another solution might be to add a |
Hmm, I think this could be cool if we had more integration with I think making users responsible for the scheduling constraint is fine for now but I definitely want to announce it in the release and have it documented somewhere like you've already done. I'm interested in reworking the scheduling a bit after this release anyway, so the requirement may disappear at that point |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few more small things
Co-authored-by: Trevor Lovell <trevorlovelldesign@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - I think I will merge this now just so people can depend on the main branch of the main repo rather than yours. We can fix the dependency once bevy_ecs_tilemap is updated.
🤖 I have created a release *beep* *boop* --- ## [0.6.0](v0.5.0...v0.6.0) (2023-03-31) ### ⚠ BREAKING CHANGES * In addition to updating to bevy 0.10, users may need define order between `LdtkSystemSet::ProcessApi` and other 3rd party system sets, like [rapier](https://github.com/Trouv/bevy_ecs_ldtk/blob/5b8f17cc51f91ff9aedbed8afca560e750b557c8/examples/platformer/main.rs#L17). * change LdtkEntity's #[with] attribute to borrow EntityInstance ([#158](#158)) * split `RegisterLdtkObjects` into two new traits with a different naming convention ([#155](#155)) * change #[from_entity_instance] to use references ([#149](#149)) ### Features * add `#[sprite_sheet_bundle(no_grid)]` attribute for generating a single-texture `TextureAtlas` instead of a grid ([#161](#161)) ([d6d3c9c](d6d3c9c)) * add `with` attribute for LdtkIntCell derive macro ([#157](#157)) ([d3fbd3c](d3fbd3c)) * add LevelSet::from_iid method ([#144](#144)) ([fb17ae1](fb17ae1)) * add render feature for headless mode (tilemaps only) ([#159](#159)) ([2f8000e](2f8000e)) * change #[from_entity_instance] to use references ([#149](#149)) ([246880f](246880f)) * change LdtkEntity's #[with] attribute to borrow EntityInstance ([#158](#158)) ([c052b31](c052b31)) * register TileMetadata and TileEnumTags types ([#153](#153)) ([26cae15](26cae15)) * register types `GridCoords` and `LayerMetadata` ([#146](#146)) ([ed4a0f9](ed4a0f9)) * upgrade to bevy 0.10 ([#168](#168)) ([5b8f17c](5b8f17c)) ### Bug Fixes * use normal sprite for background color instead of tile ([#171](#171)) ([b22b11d](b22b11d)) ### Example Changes * improve ground detection in platformer example ([#137](#137)) ([cafba57](cafba57)) * use rect_builder buffer instead of row-specific current_rects in spawn_wall_collisions ([#147](#147)) ([45303f3](45303f3)) ### Code Refactors * split `RegisterLdtkObjects` into two new traits with a different naming convention ([#155](#155)) ([156ae8c](156ae8c)) ### Documentation Changes * explain feature flags in crate-level documentation ([#164](#164)) ([a832da0](a832da0)) * explain that sprite_bundle should not be used with tilemap editor visuals ([#142](#142)) ([1a7a8a1](1a7a8a1)) * repair doc links to bevy in app module ([#154](#154)) ([0f928e8](0f928e8)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Trevor Lovell <trevorlovelldesign@gmail.com>
Currently blocked by
0.10
StarArawn/bevy_ecs_tilemap#390bevy_rapier
inplatformer
exampleBEGIN_COMMIT_OVERRIDE
feat!: upgrade to bevy 0.10 (#168)
BREAKING CHANGE: In addition to updating to bevy 0.10, users may need define order between
LdtkSystemSet::ProcessApi
and other 3rd party system sets, like rapier.END_COMMIT_OVERRIDE