error[E0277]: the trait bound `TestModule: HasComponent<(dyn DependencyTrait + 'static)>` is not satisfied --> tests/ui/component_missing_dependency.rs:22:1 | 22 | / module! { 23 | | TestModule { 24 | | components = [ComponentImpl], 25 | | providers = [] 26 | | } 27 | | } | |_^ the trait `HasComponent<(dyn DependencyTrait + 'static)>` is not implemented for `TestModule`, which is required by `ComponentImpl: shaku::Component` | = help: the trait `HasComponent<>::Interface>` is implemented for `TestModule` note: required for `ComponentImpl` to implement `shaku::Component` --> tests/ui/component_missing_dependency.rs:14:10 | 14 | #[derive(Component)] | ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro 15 | #[shaku(interface = ComponentTrait)] 16 | struct ComponentImpl { | ^^^^^^^^^^^^^ = note: this error originates in the macro `module` which comes from the expansion of the derive macro `Component` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: `TestModule` cannot be shared between threads safely --> tests/ui/component_missing_dependency.rs:23:5 | 23 | TestModule { | ^^^^^^^^^^ `TestModule` cannot be shared between threads safely | = help: the trait `HasComponent<(dyn DependencyTrait + 'static)>` is not implemented for `TestModule`, which is required by `TestModule: ModuleInterface` = help: the trait `HasComponent<>::Interface>` is implemented for `TestModule` note: required for `ComponentImpl` to implement `shaku::Component` --> tests/ui/component_missing_dependency.rs:14:10 | 14 | #[derive(Component)] | ^^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro 15 | #[shaku(interface = ComponentTrait)] 16 | struct ComponentImpl { | ^^^^^^^^^^^^^ note: required because it appears within the type `TestModule` --> tests/ui/component_missing_dependency.rs:23:5 | 23 | TestModule { | ^^^^^^^^^^ = note: required for `TestModule` to implement `ModuleInterface` note: required by a bound in `Module` --> src/module/module_traits.rs | | pub trait Module: ModuleInterface { | ^^^^^^^^^^^^^^^ required by this bound in `Module` = note: this error originates in the derive macro `Component` (in Nightly builds, run with -Z macro-backtrace for more info)