[INFO] cloning repository https://github.com/Aderinom/Wrapp
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Aderinom/Wrapp" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAderinom%2FWrapp", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAderinom%2FWrapp'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ace78d9844c0fb60d3548c9cd148de09ba41155b
[INFO] checking Aderinom/Wrapp against try#438eb4c1a1c3841523d7f672601e8adbe04cff28 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAderinom%2FWrapp" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Aderinom/Wrapp
[INFO] finished tweaking git repo https://github.com/Aderinom/Wrapp
[INFO] tweaked toml for git repo https://github.com/Aderinom/Wrapp written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Aderinom/Wrapp on toolchain 438eb4c1a1c3841523d7f672601e8adbe04cff28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 176 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 53f2efb5965feb2d391f8c32ce6be096a2a0f38155e3c9961210bbddd1dc49f0
[INFO] running `Command { std: "docker" "start" "-a" "53f2efb5965feb2d391f8c32ce6be096a2a0f38155e3c9961210bbddd1dc49f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "53f2efb5965feb2d391f8c32ce6be096a2a0f38155e3c9961210bbddd1dc49f0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53f2efb5965feb2d391f8c32ce6be096a2a0f38155e3c9961210bbddd1dc49f0", kill_on_drop: false }`
[INFO] [stdout] 53f2efb5965feb2d391f8c32ce6be096a2a0f38155e3c9961210bbddd1dc49f0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 15191fab5c78ae0c2662bcad089222e87da209898a2139a9c6bed0105a0ae3b2
[INFO] running `Command { std: "docker" "start" "-a" "15191fab5c78ae0c2662bcad089222e87da209898a2139a9c6bed0105a0ae3b2", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]    Compiling find-msvc-tools v0.1.4
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]     Checking writeable v0.6.1
[INFO] [stderr]     Checking litemap v0.8.0
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking local-waker v0.1.4
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking adler2 v2.0.1
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling time-core v0.1.6
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling time-macros v0.2.24
[INFO] [stderr]     Checking deranged v0.5.4
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking bytestring v1.5.0
[INFO] [stderr]     Checking brotli-decompressor v5.0.0
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]     Checking actix-service v2.0.3
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]     Checking utf8_iter v1.0.4
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]     Checking bitflags v2.9.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling regex-lite v0.1.8
[INFO] [stderr]     Checking flate2 v1.1.4
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking impl-more v0.1.9
[INFO] [stderr]     Checking wrapp v0.1.0 (/opt/rustwide/workdir/wrapp)
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking brotli v8.0.2
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking wrapp-strategies v0.1.0 (/opt/rustwide/workdir/features/wrapp-strategies)
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking wrapp-config v0.1.0 (/opt/rustwide/workdir/features/wrapp-config)
[INFO] [stderr]     Checking wrapp-router v0.1.0 (/opt/rustwide/workdir/features/wrapp-router)
[INFO] [stderr]     Checking wrapp-actix v0.1.0 (/opt/rustwide/workdir/strategies/wrapp-actix)
[INFO] [stderr]     Checking time v0.3.44
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]    Compiling cc v1.2.41
[INFO] [stderr]     Checking serde_json v1.0.145
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling actix-router v0.5.3
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling actix-web-codegen v4.3.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking zerovec v0.11.4
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking potential_utf v0.1.3
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking wrapp-di v0.1.0 (/opt/rustwide/workdir/features/wrapp-di)
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking actix-rt v2.11.0
[INFO] [stderr]     Checking actix-server v2.6.0
[INFO] [stdout] warning: type `LazyFuture<'_, T>` is more private than the item `lazy::Lazy::<T>::wait_result`
[INFO] [stdout]    --> features/wrapp-di/src/resolver/lazy.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn wait_result(&self) -> LazyFuture<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `lazy::Lazy::<T>::wait_result` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `LazyFuture<'_, T>` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> features/wrapp-di/src/resolver/lazy.rs:153:1
[INFO] [stdout]     |
[INFO] [stdout] 153 | / pin_project! {
[INFO] [stdout] 154 | |     struct LazyFuture<'a, T:Injectable> {
[INFO] [stdout] 155 | |         #[pin]
[INFO] [stdout] 156 | |         lazy: &'a LazyInner<T>,
[INFO] [stdout] 157 | |     }
[INFO] [stdout] 158 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `$crate::__pin_project_reconstruct` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> features/wrapp-di/src/resolver/lazy.rs:134:24
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn wait_result(&self) -> LazyFuture<T> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn wait_result(&self) -> LazyFuture<'_, T> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LazyFuture<'_, T>` is more private than the item `lazy::Lazy::<T>::wait_result`
[INFO] [stdout]    --> features/wrapp-di/src/resolver/lazy.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn wait_result(&self) -> LazyFuture<T> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `lazy::Lazy::<T>::wait_result` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `LazyFuture<'_, T>` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> features/wrapp-di/src/resolver/lazy.rs:153:1
[INFO] [stdout]     |
[INFO] [stdout] 153 | / pin_project! {
[INFO] [stdout] 154 | |     struct LazyFuture<'a, T:Injectable> {
[INFO] [stdout] 155 | |         #[pin]
[INFO] [stdout] 156 | |         lazy: &'a LazyInner<T>,
[INFO] [stdout] 157 | |     }
[INFO] [stdout] 158 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `$crate::__pin_project_reconstruct` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> features/wrapp-di/src/resolver/lazy.rs:134:24
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn wait_result(&self) -> LazyFuture<T> {
[INFO] [stdout]     |                        ^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn wait_result(&self) -> LazyFuture<'_, T> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stdout] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stdout]   --> features/wrapp-di/src/main.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | /     async fn construct(
[INFO] [stdout] 55 | |         &mut self,
[INFO] [stdout] 56 | |         mut di: DiHandle,
[INFO] [stdout] 57 | |     ) -> Result<Self::Provides, Box<dyn Error + Send + Sync>> {
[INFO] [stdout]    | |_____________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stdout]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stdout]    = note: `#[warn(refining_impl_trait_internal)]` (part of `#[warn(refining_impl_trait)]`) on by default
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wrapp_di-1b8b265f74d186f7.long-type-11447355617091465156.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: replace the return type so that it matches the trait
[INFO] [stdout]    |
[INFO] [stdout] 54 -     async fn construct(
[INFO] [stdout] 55 -         &mut self,
[INFO] [stdout] 56 -         mut di: DiHandle,
[INFO] [stdout] 57 -     ) -> Result<Self::Provides, Box<dyn Error + Send + Sync>> {
[INFO] [stdout] 54 +     impl futures::Future<Output = Result<<Self as InstanceFactory>::Provides, impl Into<Box<(dyn std::error::Error + std::marker::Send + Sync + 'static)>>>> + std::marker::Send + '_ {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> features/wrapp-di/src/main.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let b: &dyn Debug = &a;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `a`, `b`, and `c` are never read
[INFO] [stdout]   --> features/wrapp-di/src/main.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | struct Test {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 39 |     a: Arc<String>,
[INFO] [stdout]    |     ^
[INFO] [stdout] 40 |     b: Lazy<String>,
[INFO] [stdout]    |     ^
[INFO] [stdout] 41 |     c: LazyOption<i128>,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Test` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stdout] warning: impl trait in impl method signature does not match trait method signature
[INFO] [stdout]   --> features/wrapp-di/src/main.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | /     async fn construct(
[INFO] [stdout] 55 | |         &mut self,
[INFO] [stdout] 56 | |         mut di: DiHandle,
[INFO] [stdout] 57 | |     ) -> Result<Self::Provides, Box<dyn Error + Send + Sync>> {
[INFO] [stdout]    | |_____________________________________________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: add `#[allow(refining_impl_trait)]` if it is intended for this to be part of the public API of this crate
[INFO] [stdout]    = note: we are soliciting feedback, see issue #121718 <https://github.com/rust-lang/rust/issues/121718> for more information
[INFO] [stdout]    = note: `#[warn(refining_impl_trait_internal)]` (part of `#[warn(refining_impl_trait)]`) on by default
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/wrapp_di-28e5f393e2da9e45.long-type-8878873732358710341.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: replace the return type so that it matches the trait
[INFO] [stdout]    |
[INFO] [stdout] 54 -     async fn construct(
[INFO] [stdout] 55 -         &mut self,
[INFO] [stdout] 56 -         mut di: DiHandle,
[INFO] [stdout] 57 -     ) -> Result<Self::Provides, Box<dyn Error + Send + Sync>> {
[INFO] [stdout] 54 +     impl futures::Future<Output = Result<<Self as InstanceFactory>::Provides, impl Into<Box<(dyn std::error::Error + std::marker::Send + Sync + 'static)>>>> + std::marker::Send + '_ {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]   --> features/wrapp-di/src/main.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let b: &dyn Debug = &a;
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `a`, `b`, and `c` are never read
[INFO] [stdout]   --> features/wrapp-di/src/main.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | struct Test {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 39 |     a: Arc<String>,
[INFO] [stdout]    |     ^
[INFO] [stdout] 40 |     b: Lazy<String>,
[INFO] [stdout]    |     ^
[INFO] [stdout] 41 |     c: LazyOption<i128>,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Test` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking url v2.5.7
[INFO] [stderr]     Checking actix-http v3.11.2
[INFO] [stderr]     Checking actix-web v4.11.0
[INFO] [stderr]     Checking prototype v0.1.0 (/opt/rustwide/workdir/examples/prototype)
[INFO] [stdout] error: expected `;`, found `app`
[INFO] [stdout]   --> examples/prototype/main.rs:29:10
[INFO] [stdout]    |
[INFO] [stdout] 29 |         )      
[INFO] [stdout]    |          ^ help: add `;` here
[INFO] [stdout] 30 |
[INFO] [stdout] 31 |         app.register_strategy(
[INFO] [stdout]    |         --- unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: closure bodies that contain statements must be surrounded by braces
[INFO] [stdout]   --> examples/prototype/main.rs:15:44
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |                                            ^
[INFO] [stdout] ...
[INFO] [stdout] 55 |         )
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout] note: statement found outside of a block
[INFO] [stdout]   --> examples/prototype/main.rs:54:25
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |                                              ------------------------------- this expression is a statement because of the trailing semicolon
[INFO] [stdout] ...
[INFO] [stdout] 54 |                 .build();
[INFO] [stdout]    |                         ^ this `;` turns the preceding closure into a statement
[INFO] [stdout] note: the closure body may be incorrectly delimited
[INFO] [stdout]   --> examples/prototype/main.rs:15:38
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the parsed closure...
[INFO] [stdout] ...
[INFO] [stdout] 55 |         )
[INFO] [stdout]    |         - ...but likely you meant the closure to end here
[INFO] [stdout] help: try adding braces
[INFO] [stdout]    |
[INFO] [stdout] 15 ~             StrategyFiltered::filter(|strat| { strat.label.contains("private"))
[INFO] [stdout] 16 |                 .register_module(HealthModule::module())
[INFO] [stdout] ...
[INFO] [stdout] 54 |                 .build();
[INFO] [stdout] 55 ~         })
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `->`, `where`, or `{`, found `}`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn openapi() 
[INFO] [stdout]    |        -------  - expected one of `->`, `where`, or `{`
[INFO] [stdout]    |        |
[INFO] [stdout]    |        while parsing this `fn`
[INFO] [stdout] 47 | }
[INFO] [stdout]    | ^ unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: associated function in `impl` without body
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn openapi() 
[INFO] [stdout]    |     ^^^^^^^^^^^^- help: provide a definition for the function: `{ <body> }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:13:3
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[wrapp::module(
[INFO] [stdout]    |   ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 |     #[wrapp::module(factory)]
[INFO] [stdout]    |       ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:22:7
[INFO] [stdout]    |
[INFO] [stdout] 22 |     #[wrapp::module(condition)]
[INFO] [stdout]    |       ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected `;`, found `app`
[INFO] [stdout]   --> examples/prototype/main.rs:29:10
[INFO] [stdout]    |
[INFO] [stdout] 29 |         )      
[INFO] [stdout]    |          ^ help: add `;` here
[INFO] [stdout] 30 |
[INFO] [stdout] 31 |         app.register_strategy(
[INFO] [stdout]    |         --- unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: closure bodies that contain statements must be surrounded by braces
[INFO] [stdout]   --> examples/prototype/main.rs:15:44
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |                                            ^
[INFO] [stdout] ...
[INFO] [stdout] 55 |         )
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout] note: statement found outside of a block
[INFO] [stdout]   --> examples/prototype/main.rs:54:25
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |                                              ------------------------------- this expression is a statement because of the trailing semicolon
[INFO] [stdout] ...
[INFO] [stdout] 54 |                 .build();
[INFO] [stdout]    |                         ^ this `;` turns the preceding closure into a statement
[INFO] [stdout] note: the closure body may be incorrectly delimited
[INFO] [stdout]   --> examples/prototype/main.rs:15:38
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this is the parsed closure...
[INFO] [stdout] ...
[INFO] [stdout] 55 |         )
[INFO] [stdout]    |         - ...but likely you meant the closure to end here
[INFO] [stdout] help: try adding braces
[INFO] [stdout]    |
[INFO] [stdout] 15 ~             StrategyFiltered::filter(|strat| { strat.label.contains("private"))
[INFO] [stdout] 16 |                 .register_module(HealthModule::module())
[INFO] [stdout] ...
[INFO] [stdout] 54 |                 .build();
[INFO] [stdout] 55 ~         })
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `->`, `where`, or `{`, found `}`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:47:1
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn openapi() 
[INFO] [stdout]    |        -------  - expected one of `->`, `where`, or `{`
[INFO] [stdout]    |        |
[INFO] [stdout]    |        while parsing this `fn`
[INFO] [stdout] 47 | }
[INFO] [stdout]    | ^ unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `openapi` is not a member of trait `ActixModule`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn openapi() 
[INFO] [stdout]    |     ^^^^^^^^^^^^ not a member of trait `ActixModule`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]  --> examples/prototype/main.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let mut app = wrapp::Application::builder();
[INFO] [stdout]   |                   ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `wrapp`, use `cargo add wrapp` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: associated function in `impl` without body
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn openapi() 
[INFO] [stdout]    |     ^^^^^^^^^^^^- help: provide a definition for the function: `{ <body> }`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:13:3
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[wrapp::module(
[INFO] [stdout]    |   ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappStrategies`
[INFO] [stdout]   --> examples/prototype/main.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             WrappStrategies::ActixStrategy::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ use of undeclared type `WrappStrategies`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 |     #[wrapp::module(factory)]
[INFO] [stdout]    |       ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:22:7
[INFO] [stdout]    |
[INFO] [stdout] 22 |     #[wrapp::module(condition)]
[INFO] [stdout]    |       ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappStrategies`
[INFO] [stdout]   --> examples/prototype/main.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             WrappStrategies::KafkaStrategy::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ use of undeclared type `WrappStrategies`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `HealthModuleConfig` in this scope
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HealthModule {
[INFO] [stdout]    | ----------------------- similarly named struct `HealthModule` defined here
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^ help: a struct with a similar name exists: `HealthModule`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |            ------ this function doesn't have a `self` parameter
[INFO] [stdout] 24 |         self.service.health_check()
[INFO] [stdout]    |         ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(&self, config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |                   ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Config` in crate `actix_web`
[INFO] [stdout]  --> examples/prototype/modules/health/health_actix_endpoints.rs:6:38
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn register(app: &mut actix_web::Config) {
[INFO] [stdout]   |                                      ^^^^^^ not found in `actix_web`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `web`
[INFO] [stdout]   --> examples/prototype/modules/health/health_actix_endpoints.rs:14:29
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn get_health_state(health: web::Data<HealthService>) -> HealthState {
[INFO] [stdout]    |                             ^^^ use of unresolved module or unlinked crate `web`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `web`, use `cargo add web` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  6 + use actix_web::web;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `HealthService` in this scope
[INFO] [stdout]   --> examples/prototype/modules/health/health_actix_endpoints.rs:14:39
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn get_health_state(health: web::Data<HealthService>) -> HealthState {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  6 + use crate::modules::health::health_service::HealthService;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `HealthState` in this scope
[INFO] [stdout]   --> examples/prototype/modules/health/health_actix_endpoints.rs:14:58
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn get_health_state(health: web::Data<HealthService>) -> HealthState {
[INFO] [stdout]    |                                                          ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected value, found struct `HealthModule`
[INFO] [stdout]   --> examples/prototype/main.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 |           .register_module(HealthModule) // registers modules which will then be instanciated by the app;
[INFO] [stdout]    |                            ^^^^^^^^^^^^ help: use struct literal syntax instead: `HealthModule { service: val }`
[INFO] [stdout]    |
[INFO] [stdout]   ::: examples/prototype/modules/health/health_module.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / pub struct HealthModule {
[INFO] [stdout] 10 | |     pub service: HealthService // Modules export by  making use of normal visibility rules
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_- `HealthModule` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0407]: method `openapi` is not a member of trait `ActixModule`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn openapi() 
[INFO] [stdout]    |     ^^^^^^^^^^^^ not a member of trait `ActixModule`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0746]: return type cannot be a trait object without pointer indirection
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:23:50
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout] help: consider returning an `impl Trait` instead of a `dyn Trait`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> impl HealthCheck {
[INFO] [stdout]    |                                                  ++++
[INFO] [stdout] help: alternatively, box the return type, and wrap all of the returned values in `Box::new`
[INFO] [stdout]    |
[INFO] [stdout] 23 ~     pub fn enable(config: HealthModuleConfig) -> Box<dyn HealthCheck> {
[INFO] [stdout] 24 ~         Box::new(self.service.health_check())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]  --> examples/prototype/main.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     let mut app = wrapp::Application::builder();
[INFO] [stdout]   |                   ^^^^^ use of unresolved module or unlinked crate `wrapp`
[INFO] [stdout]   |
[INFO] [stdout]   = help: if you wanted to use a crate named `wrapp`, use `cargo add wrapp` to add it to your `Cargo.toml`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `module` found for struct `HealthModule` in the current scope
[INFO] [stdout]   --> examples/prototype/main.rs:13:40
[INFO] [stdout]    |
[INFO] [stdout] 13 | ...   .register_module(HealthModule::module().with_strategy_filter(|strat| strat.label.contains("private"))) // This module will only hoo...
[INFO] [stdout]    |                                      ^^^^^^ function or associated item not found in `HealthModule`
[INFO] [stdout]    |
[INFO] [stdout]   ::: examples/prototype/modules/health/health_module.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HealthModule {
[INFO] [stdout]    | ----------------------- function or associated item `module` not found for this struct
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `HealthModule`, consider using `HealthModule::new` which returns `HealthModule`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(service: HealthService) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StrategyFiltered`
[INFO] [stdout]   --> examples/prototype/main.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ use of undeclared type `StrategyFiltered`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `module` found for struct `HealthModule` in the current scope
[INFO] [stdout]   --> examples/prototype/main.rs:16:48
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 .register_module(HealthModule::module())
[INFO] [stdout]    |                                                ^^^^^^ function or associated item not found in `HealthModule`
[INFO] [stdout]    |
[INFO] [stdout]   ::: examples/prototype/modules/health/health_module.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HealthModule {
[INFO] [stdout]    | ----------------------- function or associated item `module` not found for this struct
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `HealthModule`, consider using `HealthModule::new` which returns `HealthModule`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(service: HealthService) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `enable_web_server` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     if config.enable_web_server {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappStrategies`
[INFO] [stdout]   --> examples/prototype/main.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             WrappStrategies::ActixStrategy::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ use of undeclared type `WrappStrategies`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappStrategies`
[INFO] [stdout]   --> examples/prototype/main.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             WrappStrategies::KafkaStrategy::builder()
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ use of undeclared type `WrappStrategies`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `HealthModuleConfig` in this scope
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HealthModule {
[INFO] [stdout]    | ----------------------- similarly named struct `HealthModule` defined here
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^ help: a struct with a similar name exists: `HealthModule`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `web` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:36:25
[INFO] [stdout]    |
[INFO] [stdout] 36 |             .tls(config.web.tls)
[INFO] [stdout]    |                         ^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `enable_kafka_consumer` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |     if config.enable_kafka_consumer {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:47:44
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 .bootstrap_servers(&config.kafka.bootstrap_servers)
[INFO] [stdout]    |                                            ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:48:43
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 .security_protocol(config.kafka.security_protocol)
[INFO] [stdout]    |                                           ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:49:40
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 .sasl_mechanism(config.kafka.sasl_mechanism)
[INFO] [stdout]    |                                        ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:50:35
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 .username(&config.kafka.username)
[INFO] [stdout]    |                                   ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 .password(&config.kafka.password)
[INFO] [stdout]    |                                   ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:52:36
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 .ssl_config(config.kafka.ssl_config)
[INFO] [stdout]    |                                    ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0752]: `main` function is not allowed to be `async`
[INFO] [stdout]  --> examples/prototype/main.rs:7:1
[INFO] [stdout]   |
[INFO] [stdout] 7 | async fn main() {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^ `main` function is not allowed to be `async`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |            ------ this function doesn't have a `self` parameter
[INFO] [stdout] 24 |         self.service.health_check()
[INFO] [stdout]    |         ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout]    |
[INFO] [stdout] help: add a `self` receiver parameter to make the associated `fn` a method
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(&self, config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |                   ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Config` in crate `actix_web`
[INFO] [stdout]  --> examples/prototype/modules/health/health_actix_endpoints.rs:6:38
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn register(app: &mut actix_web::Config) {
[INFO] [stdout]   |                                      ^^^^^^ not found in `actix_web`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `web`
[INFO] [stdout]   --> examples/prototype/modules/health/health_actix_endpoints.rs:14:29
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn get_health_state(health: web::Data<HealthService>) -> HealthState {
[INFO] [stdout]    |                             ^^^ use of unresolved module or unlinked crate `web`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `web`, use `cargo add web` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  6 + use actix_web::web;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `HealthService` in this scope
[INFO] [stdout]   --> examples/prototype/modules/health/health_actix_endpoints.rs:14:39
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn get_health_state(health: web::Data<HealthService>) -> HealthState {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  6 + use crate::modules::health::health_service::HealthService;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `HealthState` in this scope
[INFO] [stdout]   --> examples/prototype/modules/health/health_actix_endpoints.rs:14:58
[INFO] [stdout]    |
[INFO] [stdout] 14 | fn get_health_state(health: web::Data<HealthService>) -> HealthState {
[INFO] [stdout]    |                                                          ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0423]: expected value, found struct `HealthModule`
[INFO] [stdout]   --> examples/prototype/main.rs:12:26
[INFO] [stdout]    |
[INFO] [stdout] 12 |           .register_module(HealthModule) // registers modules which will then be instanciated by the app;
[INFO] [stdout]    |                            ^^^^^^^^^^^^ help: use struct literal syntax instead: `HealthModule { service: val }`
[INFO] [stdout]    |
[INFO] [stdout]   ::: examples/prototype/modules/health/health_module.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / pub struct HealthModule {
[INFO] [stdout] 10 | |     pub service: HealthService // Modules export by  making use of normal visibility rules
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_- `HealthModule` defined here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0746]: return type cannot be a trait object without pointer indirection
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:23:50
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> HealthCheck {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^ doesn't have a size known at compile-time
[INFO] [stdout]    |
[INFO] [stdout] help: consider returning an `impl Trait` instead of a `dyn Trait`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn enable(config: HealthModuleConfig) -> impl HealthCheck {
[INFO] [stdout]    |                                                  ++++
[INFO] [stdout] help: alternatively, box the return type, and wrap all of the returned values in `Box::new`
[INFO] [stdout]    |
[INFO] [stdout] 23 ~     pub fn enable(config: HealthModuleConfig) -> Box<dyn HealthCheck> {
[INFO] [stdout] 24 ~         Box::new(self.service.health_check())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappActix`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:37:88
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn register(&mut self, app: &mut actix_web::web::ServiceConfig, strategy_context: &WrappActix::StrategyContext) {
[INFO] [stdout]    |                                                                                        ^^^^^^^^^^ use of undeclared type `WrappActix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappActix`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:55:88
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn register(&mut self, app: &mut actix_web::web::ServiceConfig, strategy_context: &WrappActix::StrategyContext);
[INFO] [stdout]    |                                                                                        ^^^^^^^^^^ use of undeclared type `WrappActix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0407, E0412, E0423, E0424, E0433, E0599, E0609, E0746, E0752.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0407`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `prototype` (bin "prototype") due to 34 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no function or associated item named `module` found for struct `HealthModule` in the current scope
[INFO] [stdout]   --> examples/prototype/main.rs:13:40
[INFO] [stdout]    |
[INFO] [stdout] 13 | ...   .register_module(HealthModule::module().with_strategy_filter(|strat| strat.label.contains("private"))) // This module will only hoo...
[INFO] [stdout]    |                                      ^^^^^^ function or associated item not found in `HealthModule`
[INFO] [stdout]    |
[INFO] [stdout]   ::: examples/prototype/modules/health/health_module.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HealthModule {
[INFO] [stdout]    | ----------------------- function or associated item `module` not found for this struct
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `HealthModule`, consider using `HealthModule::new` which returns `HealthModule`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(service: HealthService) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `StrategyFiltered`
[INFO] [stdout]   --> examples/prototype/main.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |             StrategyFiltered::filter(|strat| strat.label.contains("private"))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^ use of undeclared type `StrategyFiltered`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `module` found for struct `HealthModule` in the current scope
[INFO] [stdout]   --> examples/prototype/main.rs:16:48
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 .register_module(HealthModule::module())
[INFO] [stdout]    |                                                ^^^^^^ function or associated item not found in `HealthModule`
[INFO] [stdout]    |
[INFO] [stdout]   ::: examples/prototype/modules/health/health_module.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct HealthModule {
[INFO] [stdout]    | ----------------------- function or associated item `module` not found for this struct
[INFO] [stdout]    |
[INFO] [stdout] note: if you're trying to build a new `HealthModule`, consider using `HealthModule::new` which returns `HealthModule`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn new(service: HealthService) -> Self {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `enable_web_server` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     if config.enable_web_server {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `web` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:36:25
[INFO] [stdout]    |
[INFO] [stdout] 36 |             .tls(config.web.tls)
[INFO] [stdout]    |                         ^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `enable_kafka_consumer` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:44:15
[INFO] [stdout]    |
[INFO] [stdout] 44 |     if config.enable_kafka_consumer {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:47:44
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 .bootstrap_servers(&config.kafka.bootstrap_servers)
[INFO] [stdout]    |                                            ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:48:43
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 .security_protocol(config.kafka.security_protocol)
[INFO] [stdout]    |                                           ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:49:40
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 .sasl_mechanism(config.kafka.sasl_mechanism)
[INFO] [stdout]    |                                        ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:50:35
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 .username(&config.kafka.username)
[INFO] [stdout]    |                                   ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:51:35
[INFO] [stdout]    |
[INFO] [stdout] 51 |                 .password(&config.kafka.password)
[INFO] [stdout]    |                                   ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `kafka` on type `ConfigProvider`
[INFO] [stdout]   --> examples/prototype/main.rs:52:36
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 .ssl_config(config.kafka.ssl_config)
[INFO] [stdout]    |                                    ^^^^^ unknown field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappActix`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:37:88
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn register(&mut self, app: &mut actix_web::web::ServiceConfig, strategy_context: &WrappActix::StrategyContext) {
[INFO] [stdout]    |                                                                                        ^^^^^^^^^^ use of undeclared type `WrappActix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WrappActix`
[INFO] [stdout]   --> examples/prototype/modules/health/health_module.rs:55:88
[INFO] [stdout]    |
[INFO] [stdout] 55 |     fn register(&mut self, app: &mut actix_web::web::ServiceConfig, strategy_context: &WrappActix::StrategyContext);
[INFO] [stdout]    |                                                                                        ^^^^^^^^^^ use of undeclared type `WrappActix`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0407, E0412, E0423, E0424, E0433, E0599, E0609, E0746.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0407`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `prototype` (bin "prototype" test) due to 33 previous errors
[INFO] running `Command { std: "docker" "inspect" "15191fab5c78ae0c2662bcad089222e87da209898a2139a9c6bed0105a0ae3b2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "15191fab5c78ae0c2662bcad089222e87da209898a2139a9c6bed0105a0ae3b2", kill_on_drop: false }`
[INFO] [stdout] 15191fab5c78ae0c2662bcad089222e87da209898a2139a9c6bed0105a0ae3b2
