Closed V1ammer closed 5 months ago
After updating bevy_rapier3d to version 0.24.0 (and especially after this PR #579), a project written in bevy stopped building on one of my computers
Error log:
Compiling bevy v0.12.1 Compiling bevy_egui v0.24.0 Compiling rapier3d v0.18.0 Compiling bevy-inspector-egui v0.22.1 error[E0446]: crate-private type `SolverConstraintsSet<contact_constraints_set::ContactConstraintTypes>` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/contact_constraint/contact_constraints_set.rs:87:1 | 87 | pub type ContactConstraintsSet = SolverConstraintsSet<ContactConstraintTypes>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:39:1 | 39 | pub(crate) struct SolverConstraintsSet<Constraints: ConstraintTypes> { | -------------------------------------------------------------------- `SolverConstraintsSet<contact_constraints_set::ContactConstraintTypes>` declared as crate-private error[E0446]: crate-private type `contact_constraints_set::ContactConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/contact_constraint/contact_constraints_set.rs:87:1 | 65 | pub(crate) struct ContactConstraintTypes; | ---------------------------------------- `contact_constraints_set::ContactConstraintTypes` declared as crate-private ... 87 | pub type ContactConstraintsSet = SolverConstraintsSet<ContactConstraintTypes>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private type error[E0446]: crate-private type `SolverBody` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_constraint_builder.rs:51:5 | 51 | / pub fn update( 52 | | &self, 53 | | params: &IntegrationParameters, 54 | | bodies: &[SolverBody], 55 | | out: &mut [JointTwoBodyConstraint<Real, 1>], 56 | | ) { | |_____^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_body.rs:9:1 | 9 | pub(crate) struct SolverBody { | ---------------------------- `SolverBody` declared as crate-private error[E0446]: crate-private type `SolverBody` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_constraint_builder.rs:148:5 | 148 | / pub fn update( 149 | | &mut self, 150 | | params: &IntegrationParameters, 151 | | bodies: &[SolverBody], 152 | | out: &mut [JointTwoBodyConstraint<SimdReal, SIMD_WIDTH>], 153 | | ) { | |_____^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_body.rs:9:1 | 9 | pub(crate) struct SolverBody { | ---------------------------- `SolverBody` declared as crate-private error[E0446]: crate-private type `SolverBody` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_constraint_builder.rs:227:5 | 227 | / pub fn update( 228 | | &self, 229 | | params: &IntegrationParameters, 230 | | bodies: &[SolverBody], 231 | | out: &mut [JointOneBodyConstraint<Real, 1>], 232 | | ) { | |_____^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_body.rs:9:1 | 9 | pub(crate) struct SolverBody { | ---------------------------- `SolverBody` declared as crate-private error[E0446]: crate-private type `SolverBody` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_constraint_builder.rs:313:5 | 313 | / pub fn update( 314 | | &self, 315 | | params: &IntegrationParameters, 316 | | bodies: &[SolverBody], 317 | | out: &mut [JointOneBodyConstraint<SimdReal, SIMD_WIDTH>], 318 | | ) { | |_____^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_body.rs:9:1 | 9 | pub(crate) struct SolverBody { | ---------------------------- `SolverBody` declared as crate-private error[E0446]: crate-private type `SolverConstraintsSet<any_joint_constraint::JointConstraintTypes>` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_constraints_set.rs:28:1 | 28 | pub type JointConstraintsSet = SolverConstraintsSet<JointConstraintTypes>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:39:1 | 39 | pub(crate) struct SolverConstraintsSet<Constraints: ConstraintTypes> { | -------------------------------------------------------------------- `SolverConstraintsSet<any_joint_constraint::JointConstraintTypes>` declared as crate-private error[E0446]: crate-private type `SolverBody` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_generic_constraint_builder.rs:147:5 | 147 | / pub fn update( 148 | | &self, 149 | | params: &IntegrationParameters, 150 | | multibodies: &MultibodyJointSet, ... | 153 | | out: &mut [JointGenericTwoBodyConstraint], 154 | | ) { | |_____^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_body.rs:9:1 | 9 | pub(crate) struct SolverBody { | ---------------------------- `SolverBody` declared as crate-private error[E0446]: crate-private type `SolverBody` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_generic_constraint_builder.rs:240:5 | 240 | / pub fn update( 241 | | &self, 242 | | params: &IntegrationParameters, 243 | | multibodies: &MultibodyJointSet, ... | 246 | | out: &mut [JointGenericOneBodyConstraint], 247 | | ) { | |_____^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_body.rs:9:1 | 9 | pub(crate) struct SolverBody { | ---------------------------- `SolverBody` declared as crate-private error[E0446]: crate-private type `SolverBody` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/joint_constraint/joint_generic_constraint_builder.rs:407:5 | 407 | / pub fn update( 408 | | &self, 409 | | params: &IntegrationParameters, 410 | | multibodies: &MultibodyJointSet, ... | 413 | | out: &mut [JointGenericOneBodyConstraint], 414 | | ) { | |_____^ can't leak crate-private type | ::: /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_body.rs:9:1 | 9 | pub(crate) struct SolverBody { | ---------------------------- `SolverBody` declared as crate-private error[E0445]: crate-private trait `ConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:28:1 | 5 | pub(crate) trait ConstraintTypes { | -------------------------------- `ConstraintTypes` declared as crate-private ... 28 | pub enum AnyConstraintMut<'a, Constraints: ConstraintTypes> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private trait error[E0445]: crate-private trait `ConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:29:13 | 5 | pub(crate) trait ConstraintTypes { | -------------------------------- `ConstraintTypes` declared as crate-private ... 29 | OneBody(&'a mut Constraints::OneBody), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private trait error[E0445]: crate-private trait `ConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:30:15 | 5 | pub(crate) trait ConstraintTypes { | -------------------------------- `ConstraintTypes` declared as crate-private ... 30 | TwoBodies(&'a mut Constraints::TwoBodies), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private trait error[E0445]: crate-private trait `ConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:31:20 | 5 | pub(crate) trait ConstraintTypes { | -------------------------------- `ConstraintTypes` declared as crate-private ... 31 | GenericOneBody(&'a mut Constraints::GenericOneBody), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private trait error[E0445]: crate-private trait `ConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:32:22 | 5 | pub(crate) trait ConstraintTypes { | -------------------------------- `ConstraintTypes` declared as crate-private ... 32 | GenericTwoBodies(&'a mut Constraints::GenericTwoBodies), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private trait error[E0445]: crate-private trait `ConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:34:17 | 5 | pub(crate) trait ConstraintTypes { | -------------------------------- `ConstraintTypes` declared as crate-private ... 34 | SimdOneBody(&'a mut Constraints::SimdOneBody), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private trait error[E0445]: crate-private trait `ConstraintTypes` in public interface --> /home/killua/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rapier3d-0.18.0/src/dynamics/solver/solver_constraints_set.rs:36:19 | 5 | pub(crate) trait ConstraintTypes { | -------------------------------- `ConstraintTypes` declared as crate-private ... 36 | SimdTwoBodies(&'a mut Constraints::SimdTwoBodies), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't leak crate-private trait Some errors have detailed explanations: E0445, E0446. For more information about an error, try `rustc --explain E0445`. error: could not compile `rapier3d` (lib) due to 17 previous errors warning: build failed, waiting for other jobs to finish...
PC: OS: Kubuntu 23.10 x86_64 Kernel: 6.5.0-15-generic
Sorry, I just forgot to update the rust from 1.73 to 1.75
After updating bevy_rapier3d to version 0.24.0 (and especially after this PR #579), a project written in bevy stopped building on one of my computers
Error log:
PC: OS: Kubuntu 23.10 x86_64 Kernel: 6.5.0-15-generic