Bevy 0.19 work in progress: bump parry to 0.27 and sync with latest bevy main#987
Draft
stuartparmenter wants to merge 6 commits into
Draft
Bevy 0.19 work in progress: bump parry to 0.27 and sync with latest bevy main#987stuartparmenter wants to merge 6 commits into
stuartparmenter wants to merge 6 commits into
Conversation
Pins bevy to the current main HEAD (74d39c6) via Cargo.lock so all of the workspace's bevy_* git deps (bevy_heavy, bevy_transform_interpolation, glam_matrix_extras) resolve to the same source as the top-level bevy dep. Switches the 2d crate and examples_common crates over to the same git dependency form as 3d. Build fixes for changes landed on bevy main since jbuehler23's migration: - bevy#24164 (resources-as-components / Mutability): the PhysicsDiagnostics trait's generic ResMut<Self> system now requires the `Resource<Mutability = Mutable>` bound. - bevy#23619/#23630 (bevy_scene → bevy_world_serialization rename): the classic Scene API now lives in bevy_world_serialization. Point the `bevy_scene` cargo feature there and alias the renamed types (WorldAssetRoot / WorldInstance / WorldInstanceSpawner) so the existing collider-backend code keeps compiling unchanged. - `experimental_bevy_feathers` feature was renamed to `bevy_feathers`. - parry is still on glam 0.30 while bevy main bumped to glam 0.32, so the debug gizmos code now goes through `vec3_from_parry` / `vec3s_from_parry` / `quat_from_parry` at the parry → bevy boundary in the 3D shape paths. avian3d builds clean; avian2d is still broken (extensive parry-conv work needed for the 2D path).
Adds a workspace [patch.crates-io] entry pointing parry at a fork branch that bumps glamx from 0.1.2 to 0.2 (glam 0.32 — the same major as Bevy). With that, parry::math::Vec2/Vec3/Quat are the literal same types as bevy_math, so the wrapper module `math::parry_conv` and every vec*_from_parry / vec*_to_parry / quat_*_parry call site go away. As a side effect, avian2d also builds now: most of its remaining errors were 2D code calling vec3_* conversion helpers that only existed under #[cfg(feature = "3d")]. Once the calls are gone, the dimension confusion goes with them. The patch should be dropped once dimforge/parry releases a version on glamx >= 0.2.
parry 0.27.0 depends on glamx 0.2, so the fork patch that forced the upgrade is no longer needed.
7 tasks
Draft
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Work to get avian compiling on bevy 0.19 (bevy main).
Builds on top of #965 (the in-progress bevy 0.19 migration). The first three commits here are the same as #965. On top of those, this PR adds:
parry<->bevymath conversion helpers (vec*_from_parry,vec*_to_parry,quat_*_parry) and themath::parry_convmodule can all be removed.bevy_scenetobevy_world_serializationfeature rename.avian2d also builds again as a side effect, since most of its remaining errors were 2D code calling
vec3_*conversion helpers that only existed under#[cfg(feature = "3d")].Opening as draft since #965 hasn't landed yet and this should probably go on top of it.
Test plan
cargo check -p avian2d -p avian3d