0.4.0 doesn't seem to work?
Closed this issue · 1 comments
brandon-reinhart commented
With these deps:
bevy = "0.8.0"
iyes_loopless = "0.7.0"
iyes_progress = "0.4.0"
And a system like this:
.add_system_set(
ConditionSet::new()
.run_in_state(GameState::Loading)
.with_system(setup.track_progress())
.into(),
)
Where setup looks something like:
pub fn setup(mut commands: Commands) -> Progress {
commands
.spawn()
.insert(RenderCamera::default())
.insert(Controller::default());
true.into()
}
I consistently get an unhappy compiler:
error[E0277]: the trait bound `ParallelSystemDescriptor: IntoSystem<(), (), _>` is not satisfied
--> src\camera.rs:71:34
|
71 | .with_system(setup.track_progress())
| ----------- ^^^^^^^^^^^^^^^^^^^^^^ the trait `IntoSystem<(), (), _>` is not implemented for `ParallelSystemDescriptor`
| |
| required by a bound introduced by this call
|
= help: the trait `AddConditionalToSet<ConditionSystemSet, ()>` is implemented for `ConditionalSystemDescriptor`
= note: required because of the requirements on the impl of `iyes_loopless::condition::IntoConditionalSystem<_>` for `ParallelSystemDescriptor`
= note: required because of the requirements on the impl of `AddConditionalToSet<ConditionSystemSet, _>` for `ParallelSystemDescriptor`
note: required by a bound in `iyes_loopless::condition::ConditionSet::with_system`
--> c:\dev\tools\cargo\registry\src\github.com-1ecc6299db9ec823\iyes_loopless-0.7.0\src\condition.rs:652:12
|
652 | S: AddConditionalToSet<ConditionSystemSet, P>,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `iyes_loopless::condition::ConditionSet::with_system`
For more information about this error, try `rustc --explain E0277`.
It isn't clear to me why this wouldn't be satisfied, but I'm relatively new to Rust trait stuff.
brandon-reinhart commented
This was due to not specifying the iyes_loopless feature required for the two libs to interop.
iyes_progress = { version = "0.5", features = ["iyes_loopless", "assets"] }