[INFO] fetching crate message_plugins 0.2.0... [INFO] testing message_plugins-0.2.0 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-1 [INFO] extracting crate message_plugins 0.2.0 into /workspace/builds/worker-0-tc1/source [INFO] started tweaking crates.io crate message_plugins 0.2.0 [INFO] finished tweaking crates.io crate message_plugins 0.2.0 [INFO] tweaked toml for crates.io crate message_plugins 0.2.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate message_plugins 0.2.0 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "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" "+562dee4820c458d823175268e41601d4c060588a" "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 30 packages to latest compatible versions [INFO] [stderr] Adding libloading v0.6.7 (available: v0.9.0) [INFO] [stderr] Adding tokio v0.2.25 (available: v1.51.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded libloading v0.6.7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a6840fc32c2a51ba98fa6498dcd52410d48f8e176b79882b70c6560497f54aa2 [INFO] running `Command { std: "docker" "start" "-a" "a6840fc32c2a51ba98fa6498dcd52410d48f8e176b79882b70c6560497f54aa2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a6840fc32c2a51ba98fa6498dcd52410d48f8e176b79882b70c6560497f54aa2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a6840fc32c2a51ba98fa6498dcd52410d48f8e176b79882b70c6560497f54aa2", kill_on_drop: false }` [INFO] [stdout] a6840fc32c2a51ba98fa6498dcd52410d48f8e176b79882b70c6560497f54aa2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cc85e390275139323b42a45b735c74759462399e93793f4de69633ccbfd2bbfc [INFO] running `Command { std: "docker" "start" "-a" "cc85e390275139323b42a45b735c74759462399e93793f4de69633ccbfd2bbfc", kill_on_drop: false }` [INFO] [stderr] Compiling cfg-if v1.0.4 [INFO] [stderr] Compiling libloading v0.6.7 [INFO] [stderr] Compiling message_plugins v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: references are not nullable, so checking them for null will always return false [INFO] [stdout] --> src/lib.rs:220:12 [INFO] [stdout] | [INFO] [stdout] 220 | if ((*instance.as_ptr()).as_ref() as *const dyn Plugin).is_null() { [INFO] [stdout] | ^-----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expression has type `&dyn Plugin` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(useless_ptr_null_checks)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `Option<&dyn Any>`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:256:29 [INFO] [stdout] | [INFO] [stdout] 256 | pub type FfiPluginInit = unsafe extern "C" fn(*mut Box>, Option<&dyn Any>); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum [INFO] [stdout] = note: enum has no representation hint [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.44s [INFO] running `Command { std: "docker" "inspect" "cc85e390275139323b42a45b735c74759462399e93793f4de69633ccbfd2bbfc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cc85e390275139323b42a45b735c74759462399e93793f4de69633ccbfd2bbfc", kill_on_drop: false }` [INFO] [stdout] cc85e390275139323b42a45b735c74759462399e93793f4de69633ccbfd2bbfc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ef1b08032ce378aac465798df603517c06e7aaf43482a02691964c7274d0a965 [INFO] running `Command { std: "docker" "start" "-a" "ef1b08032ce378aac465798df603517c06e7aaf43482a02691964c7274d0a965", kill_on_drop: false }` [INFO] [stdout] warning: references are not nullable, so checking them for null will always return false [INFO] [stdout] --> src/lib.rs:220:12 [INFO] [stdout] | [INFO] [stdout] 220 | if ((*instance.as_ptr()).as_ref() as *const dyn Plugin).is_null() { [INFO] [stdout] | ^-----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expression has type `&dyn Plugin` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(useless_ptr_null_checks)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `Option<&dyn Any>`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:256:29 [INFO] [stdout] | [INFO] [stdout] 256 | pub type FfiPluginInit = unsafe extern "C" fn(*mut Box>, Option<&dyn Any>); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum [INFO] [stdout] = note: enum has no representation hint [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling message_plugins v0.2.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: references are not nullable, so checking them for null will always return false [INFO] [stdout] --> src/lib.rs:220:12 [INFO] [stdout] | [INFO] [stdout] 220 | if ((*instance.as_ptr()).as_ref() as *const dyn Plugin).is_null() { [INFO] [stdout] | ^-----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expression has type `&dyn Plugin` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(useless_ptr_null_checks)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` fn uses type `Option<&dyn Any>`, which is not FFI-safe [INFO] [stdout] --> src/lib.rs:256:29 [INFO] [stdout] | [INFO] [stdout] 256 | pub type FfiPluginInit = unsafe extern "C" fn(*mut Box>, Option<&dyn Any>); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stdout] | [INFO] [stdout] = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum [INFO] [stdout] = note: enum has no representation hint [INFO] [stdout] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.12s [INFO] running `Command { std: "docker" "inspect" "ef1b08032ce378aac465798df603517c06e7aaf43482a02691964c7274d0a965", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef1b08032ce378aac465798df603517c06e7aaf43482a02691964c7274d0a965", kill_on_drop: false }` [INFO] [stdout] ef1b08032ce378aac465798df603517c06e7aaf43482a02691964c7274d0a965 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 3c2d1151e82b16effe4bc5a62358c4fa91106359625913473e4994fc5fcf4b57 [INFO] running `Command { std: "docker" "start" "-a" "3c2d1151e82b16effe4bc5a62358c4fa91106359625913473e4994fc5fcf4b57", kill_on_drop: false }` [INFO] [stderr] warning: references are not nullable, so checking them for null will always return false [INFO] [stderr] --> src/lib.rs:220:12 [INFO] [stderr] | [INFO] [stderr] 220 | if ((*instance.as_ptr()).as_ref() as *const dyn Plugin).is_null() { [INFO] [stderr] | ^-----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | expression has type `&dyn Plugin` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(useless_ptr_null_checks)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `extern` fn uses type `Option<&dyn Any>`, which is not FFI-safe [INFO] [stderr] --> src/lib.rs:256:29 [INFO] [stderr] | [INFO] [stderr] 256 | pub type FfiPluginInit = unsafe extern "C" fn(*mut Box>, Option<&dyn Any>); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum [INFO] [stderr] = note: enum has no representation hint [INFO] [stderr] = note: `#[warn(improper_ctypes_definitions)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `message_plugins` (lib) generated 2 warnings [INFO] [stderr] warning: `message_plugins` (lib test) generated 2 warnings (2 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/message_plugins-dd76e82c513df68d) [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] Doc-tests message_plugins [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/lib.rs - construct_plugin_with_constructor (line 204) ... FAILED [INFO] [stdout] test src/lib.rs - construct_plugin (line 230) ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - construct_plugin_with_constructor (line 204) stdout ---- [INFO] [stdout] error[E0405]: cannot find trait `Plugin` in this scope [INFO] [stdout] --> src/lib.rs:206:59 [INFO] [stdout] | [INFO] [stdout] 206 | unsafe extern "C" fn plugin_constructor(ptr: *mut Box>) { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this trait [INFO] [stdout] | [INFO] [stdout] 204 + use message_plugins::Plugin; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `YourMessageType` in this scope [INFO] [stdout] --> src/lib.rs:206:66 [INFO] [stdout] | [INFO] [stdout] 206 | unsafe extern "C" fn plugin_constructor(ptr: *mut Box>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 206 | unsafe extern "C" fn plugin_constructor(ptr: *mut Box>) { [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `YourPlugin` in this scope [INFO] [stdout] --> src/lib.rs:207:27 [INFO] [stdout] | [INFO] [stdout] 207 | let plugin = Box::new(YourPlugin::new()); [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `YourPlugin` [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `insert_instace` in this scope [INFO] [stdout] --> src/lib.rs:208:5 [INFO] [stdout] | [INFO] [stdout] 208 | insert_instace(ptr, plugin); [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0405, E0425, E0433. [INFO] [stdout] For more information about an error, try `rustc --explain E0405`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - construct_plugin (line 230) stdout ---- [INFO] [stdout] error[E0405]: cannot find trait `Plugin` in this scope [INFO] [stdout] --> src/lib.rs:232:59 [INFO] [stdout] | [INFO] [stdout] 232 | unsafe extern "C" fn plugin_constructor(ptr: *mut Box>) { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: consider importing this trait [INFO] [stdout] | [INFO] [stdout] 230 + use message_plugins::Plugin; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find type `YourMessageType` in this scope [INFO] [stdout] --> src/lib.rs:232:66 [INFO] [stdout] | [INFO] [stdout] 232 | unsafe extern "C" fn plugin_constructor(ptr: *mut Box>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 232 | unsafe extern "C" fn plugin_constructor(ptr: *mut Box>) { [INFO] [stdout] | +++++++++++++++++ [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find type `YourPlugin` in this scope [INFO] [stdout] --> src/lib.rs:233:27 [INFO] [stdout] | [INFO] [stdout] 233 | let plugin = Box::new(YourPlugin::new()); [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `YourPlugin` [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `insert_instace` in this scope [INFO] [stdout] --> src/lib.rs:234:5 [INFO] [stdout] | [INFO] [stdout] 234 | insert_instace(ptr, plugin); [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0405, E0425, E0433. [INFO] [stdout] For more information about an error, try `rustc --explain E0405`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/lib.rs - construct_plugin (line 230) [INFO] [stdout] src/lib.rs - construct_plugin_with_constructor (line 204) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "3c2d1151e82b16effe4bc5a62358c4fa91106359625913473e4994fc5fcf4b57", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3c2d1151e82b16effe4bc5a62358c4fa91106359625913473e4994fc5fcf4b57", kill_on_drop: false }` [INFO] [stdout] 3c2d1151e82b16effe4bc5a62358c4fa91106359625913473e4994fc5fcf4b57