[INFO] fetching crate fibre_ioc 0.5.2... [INFO] testing fibre_ioc-0.5.2 against 1.90.0 for beta-1.91-3 [INFO] extracting crate fibre_ioc 0.5.2 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate fibre_ioc 0.5.2 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate fibre_ioc 0.5.2 [INFO] tweaked toml for crates.io crate fibre_ioc 0.5.2 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate fibre_ioc 0.5.2 on toolchain 1.90.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate fibre_ioc 0.5.2 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded libc v0.2.173 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 974605a197cf38004c79f0ff2bfdfb2f82555db7d9a93a8c7dfe0d2ce38ba8a1 [INFO] running `Command { std: "docker" "start" "-a" "974605a197cf38004c79f0ff2bfdfb2f82555db7d9a93a8c7dfe0d2ce38ba8a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "974605a197cf38004c79f0ff2bfdfb2f82555db7d9a93a8c7dfe0d2ce38ba8a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "974605a197cf38004c79f0ff2bfdfb2f82555db7d9a93a8c7dfe0d2ce38ba8a1", kill_on_drop: false }` [INFO] [stdout] 974605a197cf38004c79f0ff2bfdfb2f82555db7d9a93a8c7dfe0d2ce38ba8a1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9d7a04a381d86e2d3d5473303b8ea7246667d26f6a7f002826e74d20f8da39b0 [INFO] running `Command { std: "docker" "start" "-a" "9d7a04a381d86e2d3d5473303b8ea7246667d26f6a7f002826e74d20f8da39b0", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.173 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling fibre_ioc v0.5.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `TypeId` [INFO] [stdout] --> src/container.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use std::any::{Any, TypeId}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/core.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.44s [INFO] running `Command { std: "docker" "inspect" "9d7a04a381d86e2d3d5473303b8ea7246667d26f6a7f002826e74d20f8da39b0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9d7a04a381d86e2d3d5473303b8ea7246667d26f6a7f002826e74d20f8da39b0", kill_on_drop: false }` [INFO] [stdout] 9d7a04a381d86e2d3d5473303b8ea7246667d26f6a7f002826e74d20f8da39b0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 49a3eeff4ee2ec3a320406f3fa537cfd89f3cd63732b58b4c6b2463b3b33f9a7 [INFO] running `Command { std: "docker" "start" "-a" "49a3eeff4ee2ec3a320406f3fa537cfd89f3cd63732b58b4c6b2463b3b33f9a7", kill_on_drop: false }` [INFO] [stderr] Compiling fibre_ioc v0.5.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `TypeId` [INFO] [stdout] --> src/container.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use std::any::{Any, TypeId}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/core.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TypeId` [INFO] [stdout] --> src/container.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use std::any::{Any, TypeId}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/core.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ConfigArc` is never constructed [INFO] [stdout] --> tests/advanced.rs:274:10 [INFO] [stdout] | [INFO] [stdout] 274 | struct ConfigArc(Arc); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.38s [INFO] running `Command { std: "docker" "inspect" "49a3eeff4ee2ec3a320406f3fa537cfd89f3cd63732b58b4c6b2463b3b33f9a7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "49a3eeff4ee2ec3a320406f3fa537cfd89f3cd63732b58b4c6b2463b3b33f9a7", kill_on_drop: false }` [INFO] [stdout] 49a3eeff4ee2ec3a320406f3fa537cfd89f3cd63732b58b4c6b2463b3b33f9a7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+1.90.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] fae2d2239f69ff2797a70e5e197da0ffa74595097d476530c16e8a4b42911488 [INFO] running `Command { std: "docker" "start" "-a" "fae2d2239f69ff2797a70e5e197da0ffa74595097d476530c16e8a4b42911488", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `TypeId` [INFO] [stderr] --> src/container.rs:5:21 [INFO] [stderr] | [INFO] [stderr] 5 | use std::any::{Any, TypeId}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/core.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `fibre_ioc` (lib) generated 2 warnings (run `cargo fix --lib -p fibre_ioc` to apply 2 suggestions) [INFO] [stderr] warning: `fibre_ioc` (lib test) generated 2 warnings (2 duplicates) [INFO] [stderr] warning: struct `ConfigArc` is never constructed [INFO] [stderr] --> tests/advanced.rs:274:10 [INFO] [stderr] | [INFO] [stderr] 274 | struct ConfigArc(Arc); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `fibre_ioc` (test "advanced") generated 1 warning [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/fibre_ioc-ddab7ea015a63ec4) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/advanced.rs (/opt/rustwide/target/debug/deps/advanced-6a490aacfe340ec9) [INFO] [stdout] [INFO] [stdout] running 11 tests [INFO] [stdout] test test_overwriting_registration_is_successful ... ok [INFO] [stdout] test test_resolving_arc_directly ... ok [INFO] [stdout] test test_custom_container_is_isolated_from_global ... ok [INFO] [stdout] test test_drop_behavior_of_singletons ... ok [INFO] [stdout] test test_multi_level_dependency_chaining ... ok [INFO] [stdout] test test_service_with_static_lifetime ... ok [INFO] [stdout] test test_singleton_depending_on_transient ... ok [INFO] [stdout] test test_circular_dependency_panics - should panic ... ok [INFO] [stdout] test test_resolving_generic_struct_with_trait_bound ... ok [INFO] [stdout] test test_concurrent_registration_and_resolution ... ok [INFO] [stdout] test test_singleton_factory_is_called_only_once_under_concurrency ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Running tests/basic.rs (/opt/rustwide/target/debug/deps/basic-81b253f01f4e2519) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test test_named_trait_resolution ... ok [INFO] [stdout] test test_named_singleton_instance ... ok [INFO] [stdout] test test_unnamed_singleton_factory ... ok [INFO] [stdout] test test_unnamed_trait_resolution ... ok [INFO] [stdout] test test_unnamed_transient_factory ... ok [INFO] [stdout] test test_resolve_panics_on_missing_concrete_service - should panic ... ok [INFO] [stdout] test test_resolve_panics_on_missing_trait_service - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] Doc-tests fibre_ioc [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test src/lib.rs - (line 19) ... FAILED [INFO] [stdout] test src/macros.rs - macros::resolve (line 176) ... FAILED [INFO] [stdout] test src/global.rs - global::global (line 17) ... ok [INFO] [stdout] test src/macros.rs - macros::resolve_from (line 69) ... ok [INFO] [stdout] test src/macros.rs - macros::maybe_resolve (line 140) ... ok [INFO] [stdout] test src/macros.rs - macros::maybe_resolve_from (line 21) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - (line 19) stdout ---- [INFO] [stdout] error[E0277]: expected a `Fn()` closure, found `Option<&str>` [INFO] [stdout] --> src/lib.rs:41:28 [INFO] [stdout] | [INFO] [stdout] 24 | global().add_singleton(Some("greeting_message"), || String::from("Hello, World!")); [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^^^^^^^^ expected an `Fn()` closure, found `Option<&str>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Fn()` is not implemented for `Option<&str>` [INFO] [stdout] = note: wrap the `Option<&str>` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `Container::add_singleton` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:97:19 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn add_singleton( [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 96 | &self, [INFO] [stdout] 97 | factory: impl Fn() -> T + Send + Sync + 'static, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `Container::add_singleton` [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 1 argument but 2 arguments were supplied [INFO] [stdout] --> src/lib.rs:41:14 [INFO] [stdout] | [INFO] [stdout] 24 | global().add_singleton(Some("greeting_message"), || String::from("Hello, World!")); [INFO] [stdout] | ^^^^^^^^^^^^^ -------------------------------- unexpected argument #2 of type `{closure@src/lib.rs:24:54: 24:56}` [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:95:10 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn add_singleton( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 24 - global().add_singleton(Some("greeting_message"), || String::from("Hello, World!")); [INFO] [stdout] 24 + global().add_singleton(Some("greeting_message")); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0107]: method takes 1 generic argument but 2 generic arguments were supplied [INFO] [stdout] --> src/lib.rs:45:14 [INFO] [stdout] | [INFO] [stdout] 28 | global().add_singleton_trait::(None, || { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ --- help: remove the unnecessary generic argument [INFO] [stdout] | | [INFO] [stdout] | expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: method defined here, with 1 generic parameter: `I` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn add_singleton_trait( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ - [INFO] [stdout] = note: `impl Trait` cannot be explicitly specified as a generic argument [INFO] [stdout] [INFO] [stdout] error[E0277]: `dyn Greeter` cannot be sent between threads safely [INFO] [stdout] --> src/lib.rs:45:36 [INFO] [stdout] | [INFO] [stdout] 28 | global().add_singleton_trait::(None, || { [INFO] [stdout] | ------------------- ^^^^^^^^^^^ `dyn Greeter` cannot be sent between threads safely [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Send` is not implemented for `dyn Greeter` [INFO] [stdout] note: required by a bound in `Container::add_singleton_trait` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:125:48 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn add_singleton_trait( [INFO] [stdout] | ^^^^ required by this bound in `Container::add_singleton_trait` [INFO] [stdout] [INFO] [stdout] error[E0277]: `dyn Greeter` cannot be shared between threads safely [INFO] [stdout] --> src/lib.rs:45:36 [INFO] [stdout] | [INFO] [stdout] 28 | global().add_singleton_trait::(None, || { [INFO] [stdout] | ------------------- ^^^^^^^^^^^ `dyn Greeter` cannot be shared between threads safely [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sync` is not implemented for `dyn Greeter` [INFO] [stdout] note: required by a bound in `Container::add_singleton_trait` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:125:55 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn add_singleton_trait( [INFO] [stdout] | ^^^^ required by this bound in `Container::add_singleton_trait` [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `Fn()` closure, found `Option<_>` [INFO] [stdout] --> src/lib.rs:45:49 [INFO] [stdout] | [INFO] [stdout] 28 | global().add_singleton_trait::(None, || { [INFO] [stdout] | ------------------- ^ expected an `Fn()` closure, found `Option<_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Fn()` is not implemented for `Option<_>` [INFO] [stdout] = note: wrap the `Option<_>` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `Container::add_singleton_trait` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:127:19 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn add_singleton_trait( [INFO] [stdout] | ------------------- required by a bound in this associated function [INFO] [stdout] 126 | &self, [INFO] [stdout] 127 | factory: impl Fn() -> Arc + Send + Sync + 'static, [INFO] [stdout] | ^^^^^^^^^^^^^^ required by this bound in `Container::add_singleton_trait` [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce()` closure, found `Option<_>` [INFO] [stdout] --> src/lib.rs:45:52 [INFO] [stdout] | [INFO] [stdout] 28 | global().add_singleton_trait::(None, || { [INFO] [stdout] | ------------------- ^^^^ expected an `FnOnce()` closure, found `Option<_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `FnOnce()` is not implemented for `Option<_>` [INFO] [stdout] = note: wrap the `Option<_>` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `Container::add_singleton_trait` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:127:27 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn add_singleton_trait( [INFO] [stdout] | ------------------- required by a bound in this associated function [INFO] [stdout] 126 | &self, [INFO] [stdout] 127 | factory: impl Fn() -> Arc + Send + Sync + 'static, [INFO] [stdout] | ^^^^^^ required by this bound in `Container::add_singleton_trait` [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 1 argument but 2 arguments were supplied [INFO] [stdout] --> src/lib.rs:45:14 [INFO] [stdout] | [INFO] [stdout] 28 | global().add_singleton_trait::(None, || { [INFO] [stdout] | ______________^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^_______- [INFO] [stdout] 29 | | let message = resolve!(String, "greeting_message"); [INFO] [stdout] 30 | | EnglishGreeter { message: (*message).clone() } [INFO] [stdout] 31 | | }); [INFO] [stdout] | |_____- unexpected argument #2 of type `{closure@src/lib.rs:28:58: 28:60}` [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn add_singleton_trait( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 28 - global().add_singleton_trait::(None, || { [INFO] [stdout] 29 - let message = resolve!(String, "greeting_message"); [INFO] [stdout] 30 - EnglishGreeter { message: (*message).clone() } [INFO] [stdout] 31 - }); [INFO] [stdout] 28 + global().add_singleton_trait::(None); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0277]: `dyn Greeter` cannot be sent between threads safely [INFO] [stdout] --> src/lib.rs:51:27 [INFO] [stdout] | [INFO] [stdout] 34 | let greeter_service = resolve!(trait Greeter); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `dyn Greeter` cannot be sent between threads safely [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Send` is not implemented for `dyn Greeter` [INFO] [stdout] note: required by a bound in `Container::get` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:141:32 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn get(&self, name: Option<&str>) -> Option> { [INFO] [stdout] | ^^^^ required by this bound in `Container::get` [INFO] [stdout] = note: this error originates in the macro `$crate::maybe_resolve_from` which comes from the expansion of the macro `resolve` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] error[E0277]: `dyn Greeter` cannot be shared between threads safely [INFO] [stdout] --> src/lib.rs:51:27 [INFO] [stdout] | [INFO] [stdout] 34 | let greeter_service = resolve!(trait Greeter); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `dyn Greeter` cannot be shared between threads safely [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sync` is not implemented for `dyn Greeter` [INFO] [stdout] note: required by a bound in `Container::get` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:141:39 [INFO] [stdout] | [INFO] [stdout] 141 | pub fn get(&self, name: Option<&str>) -> Option> { [INFO] [stdout] | ^^^^ required by this bound in `Container::get` [INFO] [stdout] = note: this error originates in the macro `$crate::maybe_resolve_from` which comes from the expansion of the macro `resolve` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] error: aborting due to 10 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0107, E0277. [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/macros.rs - macros::resolve (line 176) stdout ---- [INFO] [stdout] error[E0277]: expected a `Fn()` closure, found `Option<_>` [INFO] [stdout] --> src/macros.rs:182:24 [INFO] [stdout] | [INFO] [stdout] 9 | global().add_singleton(None, || String::from("hello")); [INFO] [stdout] | ------------- ^^^^ expected an `Fn()` closure, found `Option<_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = help: the trait `Fn()` is not implemented for `Option<_>` [INFO] [stdout] = note: wrap the `Option<_>` in a closure with no arguments: `|| { /* code */ }` [INFO] [stdout] note: required by a bound in `Container::add_singleton` [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:97:19 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn add_singleton( [INFO] [stdout] | ------------- required by a bound in this associated function [INFO] [stdout] 96 | &self, [INFO] [stdout] 97 | factory: impl Fn() -> T + Send + Sync + 'static, [INFO] [stdout] | ^^^^^^^^^ required by this bound in `Container::add_singleton` [INFO] [stdout] [INFO] [stdout] error[E0061]: this method takes 1 argument but 2 arguments were supplied [INFO] [stdout] --> src/macros.rs:182:10 [INFO] [stdout] | [INFO] [stdout] 9 | global().add_singleton(None, || String::from("hello")); [INFO] [stdout] | ^^^^^^^^^^^^^ ------------------------ unexpected argument #2 of type `{closure@src/macros.rs:9:30: 9:32}` [INFO] [stdout] | [INFO] [stdout] note: method defined here [INFO] [stdout] --> /opt/rustwide/workdir/src/container.rs:95:10 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn add_singleton( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 9 - global().add_singleton(None, || String::from("hello")); [INFO] [stdout] 9 + global().add_singleton(None); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277. [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/lib.rs - (line 19) [INFO] [stdout] src/macros.rs - macros::resolve (line 176) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 4 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.53s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "fae2d2239f69ff2797a70e5e197da0ffa74595097d476530c16e8a4b42911488", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fae2d2239f69ff2797a70e5e197da0ffa74595097d476530c16e8a4b42911488", kill_on_drop: false }` [INFO] [stdout] fae2d2239f69ff2797a70e5e197da0ffa74595097d476530c16e8a4b42911488