[INFO] cloning repository https://github.com/shooAh/super-basic-rust-plugin-system
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/shooAh/super-basic-rust-plugin-system" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FshooAh%2Fsuper-basic-rust-plugin-system", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FshooAh%2Fsuper-basic-rust-plugin-system'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4c9d4177e7f9054853422fb44e3dad4ca5b8aee9
[INFO] checking shooAh/super-basic-rust-plugin-system against f10db292a3733b5c67c8da8c7661195ff4b05774 for pr-158914
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FshooAh%2Fsuper-basic-rust-plugin-system" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/shooAh/super-basic-rust-plugin-system
[INFO] finished tweaking git repo https://github.com/shooAh/super-basic-rust-plugin-system
[INFO] tweaked toml for git repo https://github.com/shooAh/super-basic-rust-plugin-system written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/shooAh/super-basic-rust-plugin-system on toolchain f10db292a3733b5c67c8da8c7661195ff4b05774
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/shooAh/super-basic-rust-plugin-system 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" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded async-ffi v0.5.0
[INFO] [stderr]   Downloaded abi_stable_shared v0.11.0
[INFO] [stderr]   Downloaded tstr v0.2.4
[INFO] [stderr]   Downloaded pyo3-macros v0.27.2
[INFO] [stderr]   Downloaded tstr_proc_macros v0.2.2
[INFO] [stderr]   Downloaded as_derive_utils v0.11.0
[INFO] [stderr]   Downloaded repr_offset v0.2.2
[INFO] [stderr]   Downloaded generational-arena v0.2.9
[INFO] [stderr]   Downloaded pythonize v0.27.0
[INFO] [stderr]   Downloaded pyo3-build-config v0.27.2
[INFO] [stderr]   Downloaded core_extensions_proc_macros v1.5.4
[INFO] [stderr]   Downloaded core_extensions v1.5.4
[INFO] [stderr]   Downloaded abi_stable_derive v0.11.3
[INFO] [stderr]   Downloaded pyo3-ffi v0.27.2
[INFO] [stderr]   Downloaded pyo3-macros-backend v0.27.2
[INFO] [stderr]   Downloaded abi_stable v0.11.3
[INFO] [stderr]   Downloaded syn v2.0.116
[INFO] [stderr]   Downloaded pyo3 v0.27.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:1fa6594d87c8fa7b311925a7a77a16f539833322d9dfba4ce891f211db2f90b1" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916
[INFO] running `Command { std: "docker" "start" "a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916" "/opt/rustwide/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916" "/opt/rustwide/cargo-home/bin/cargo" "+f10db292a3733b5c67c8da8c7661195ff4b05774" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]    Compiling core_extensions v1.5.4
[INFO] [stderr]    Compiling core_extensions_proc_macros v1.5.4
[INFO] [stderr]    Compiling tstr_proc_macros v0.2.2
[INFO] [stderr]     Checking crossbeam-utils v0.8.21
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking typewit v1.14.2
[INFO] [stderr]    Compiling typed-arena v2.0.2
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking generational-arena v0.2.9
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling toml_parser v1.0.9+spec-1.1.0
[INFO] [stderr]    Compiling borsh v1.6.0
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]     Checking libloading v0.9.0
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]     Checking unindent v0.2.4
[INFO] [stderr]    Compiling syn v2.0.116
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking const_panic v0.2.15
[INFO] [stderr]    Compiling abi_stable_shared v0.11.0
[INFO] [stderr]     Checking tstr v0.2.4
[INFO] [stderr]     Checking repr_offset v0.2.2
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]    Compiling pyo3-build-config v0.27.2
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling pyo3-macros-backend v0.27.2
[INFO] [stderr]    Compiling pyo3-ffi v0.27.2
[INFO] [stderr]    Compiling pyo3 v0.27.2
[INFO] [stderr]    Compiling as_derive_utils v0.11.0
[INFO] [stderr]    Compiling abi_stable_derive v0.11.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling dlopen2_derive v0.4.3
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling borsh-derive v1.6.0
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking dlopen2 v0.8.2
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]    Compiling pyo3-macros v0.27.2
[INFO] [stderr]     Checking abi_stable v0.11.3
[INFO] [stderr]     Checking pythonize v0.27.0
[INFO] [stderr]     Checking async-ffi v0.5.0
[INFO] [stderr]     Checking plugin_interface v0.1.0 (/opt/rustwide/workdir/crates/core_functionality/plugin_interface)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> crates/core_functionality/plugin_interface/src/channel.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[sabi_trait]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `AsyncSender_Interface` is not local
[INFO] [stdout]    | `InterfaceType` is not local
[INFO] [stdout]    | move the `impl` block outside of this constant `__inside_generated_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the attribute macro `sabi_trait` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the attribute macro `sabi_trait` may come from an old version of the `abi_stable_derive` crate, try updating your dependency with `cargo update -p abi_stable_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the attribute macro `sabi_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> crates/core_functionality/plugin_interface/src/channel.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[sabi_trait]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `AsyncSender_Interface` is not local
[INFO] [stdout]    | `InterfaceType` is not local
[INFO] [stdout]    | move the `impl` block outside of this constant `__inside_generated_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the attribute macro `sabi_trait` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the attribute macro `sabi_trait` may come from an old version of the `abi_stable_derive` crate, try updating your dependency with `cargo update -p abi_stable_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the attribute macro `sabi_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> crates/core_functionality/plugin_interface/src/channel.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[sabi_trait]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `AsyncReceiver_Interface` is not local
[INFO] [stdout]    | `InterfaceType` is not local
[INFO] [stdout]    | move the `impl` block outside of this constant `__inside_generated_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the attribute macro `sabi_trait` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the attribute macro `sabi_trait` may come from an old version of the `abi_stable_derive` crate, try updating your dependency with `cargo update -p abi_stable_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the attribute macro `sabi_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]  --> crates/core_functionality/plugin_interface/src/loader.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]   |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]  --> crates/core_functionality/plugin_interface/src/loader.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]   |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> crates/core_functionality/plugin_interface/src/channel.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | #[sabi_trait]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `AsyncReceiver_Interface` is not local
[INFO] [stdout]    | `InterfaceType` is not local
[INFO] [stdout]    | move the `impl` block outside of this constant `__inside_generated_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the attribute macro `sabi_trait` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the attribute macro `sabi_trait` may come from an old version of the `abi_stable_derive` crate, try updating your dependency with `cargo update -p abi_stable_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the attribute macro `sabi_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> crates/core_functionality/plugin_interface/src/lib.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[sabi_trait]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `Plugin_Interface` is not local
[INFO] [stdout]    | `InterfaceType` is not local
[INFO] [stdout]    | move the `impl` block outside of this constant `__inside_generated_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the attribute macro `sabi_trait` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the attribute macro `sabi_trait` may come from an old version of the `abi_stable_derive` crate, try updating your dependency with `cargo update -p abi_stable_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the attribute macro `sabi_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]  --> crates/core_functionality/plugin_interface/src/loader.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]   |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]  --> crates/core_functionality/plugin_interface/src/loader.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]   |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> crates/core_functionality/plugin_interface/src/lib.rs:32:1
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[sabi_trait]
[INFO] [stdout]    | -^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `Plugin_Interface` is not local
[INFO] [stdout]    | `InterfaceType` is not local
[INFO] [stdout]    | move the `impl` block outside of this constant `__inside_generated_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the attribute macro `sabi_trait` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the attribute macro `sabi_trait` may come from an old version of the `abi_stable_derive` crate, try updating your dependency with `cargo update -p abi_stable_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the attribute macro `sabi_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking example_plugin v0.1.0 (/opt/rustwide/workdir/crates/example/example_plugin)
[INFO] [stderr]     Checking corespa v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking foo v0.1.0 (/opt/rustwide/workdir/crates/plugins/foo)
[INFO] [stdout] warning: unused import: `RErr`
[INFO] [stdout]  --> crates/plugins/foo/src/lib.rs:2:61
[INFO] [stdout]   |
[INFO] [stdout] 2 | use abi_stable::std_types::{RBox, RHashMap, RResult::{self, RErr, ROk}, RString, RVec};
[INFO] [stdout]   |                                                             ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RBox`, `RErr`, `RHashMap`, `RNone`, `ROk`, `RSome`, `RVec`, `sabi_trait`, `self`, and `self`
[INFO] [stdout]  --> crates/example/example_plugin/src/lib.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use abi_stable::{sabi_trait, std_types::{RBox, RHashMap, ROption::{self, RNone, RSome}, RResult::{self, RErr, ROk}, RVec}};
[INFO] [stdout]   |                  ^^^^^^^^^^              ^^^^  ^^^^^^^^            ^^^^  ^^^^^  ^^^^^             ^^^^  ^^^^  ^^^   ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FfiFuture` and `FutureExt`
[INFO] [stdout]  --> crates/example/example_plugin/src/lib.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_ffi::{FfiFuture, FutureExt};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error as PluginError`, `ID`, `PluginMod`, `Plugin`, and `Version`
[INFO] [stdout]  --> crates/example/example_plugin/src/lib.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use plugin_interface::{Error as PluginError, ID, Plugin, PluginMod, Version};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^  ^^  ^^^^^^  ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `export_root_module`, `prefix_type::PrefixTypeTrait`, `sabi_extern_fn`, and `sabi_trait::TD_Opaque`
[INFO] [stdout]   --> crates/example/example_plugin/src/lib.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout]  8 |     export_root_module,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     prefix_type::PrefixTypeTrait,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     sabi_extern_fn,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     sabi_trait::TD_Opaque,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReceiver_TO`, `AsyncSender_TO`, and `Plugin_TO`
[INFO] [stdout]   --> crates/example/example_plugin/src/lib.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     channel::{AsyncReceiver_TO, AsyncSender_TO},
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     Plugin_TO,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RBox`, `RErr`, `RHashMap`, `RNone`, `ROk`, `RSome`, `RVec`, `sabi_trait`, `self`, and `self`
[INFO] [stdout]  --> crates/example/example_plugin/src/lib.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use abi_stable::{sabi_trait, std_types::{RBox, RHashMap, ROption::{self, RNone, RSome}, RResult::{self, RErr, ROk}, RVec}};
[INFO] [stdout]   |                  ^^^^^^^^^^              ^^^^  ^^^^^^^^            ^^^^  ^^^^^  ^^^^^             ^^^^  ^^^^  ^^^   ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FfiFuture` and `FutureExt`
[INFO] [stdout]  --> crates/example/example_plugin/src/lib.rs:2:17
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_ffi::{FfiFuture, FutureExt};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error as PluginError`, `ID`, `PluginMod`, `Plugin`, and `Version`
[INFO] [stdout]  --> crates/example/example_plugin/src/lib.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | use plugin_interface::{Error as PluginError, ID, Plugin, PluginMod, Version};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^^^^  ^^  ^^^^^^  ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `export_root_module`, `prefix_type::PrefixTypeTrait`, `sabi_extern_fn`, and `sabi_trait::TD_Opaque`
[INFO] [stdout]   --> crates/example/example_plugin/src/lib.rs:8:5
[INFO] [stdout]    |
[INFO] [stdout]  8 |     export_root_module,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     prefix_type::PrefixTypeTrait,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     sabi_extern_fn,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |     sabi_trait::TD_Opaque,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReceiver_TO`, `AsyncSender_TO`, and `Plugin_TO`
[INFO] [stdout]   --> crates/example/example_plugin/src/lib.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     channel::{AsyncReceiver_TO, AsyncSender_TO},
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     Plugin_TO,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RErr`
[INFO] [stdout]  --> crates/plugins/foo/src/lib.rs:2:61
[INFO] [stdout]   |
[INFO] [stdout] 2 | use abi_stable::std_types::{RBox, RHashMap, RResult::{self, RErr, ROk}, RString, RVec};
[INFO] [stdout]   |                                                             ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking python-serializer v0.1.0 (/opt/rustwide/workdir/crates/python-serializer)
[INFO] [stdout] warning: unused import: `async_ffi::FutureExt`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use async_ffi::FutureExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Error, Plugin_TO, PluginMod, PLUGIN_ABI_VERSION,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `dlopen2::wrapper::Container::<T>::load` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/main.rs:49:44
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let lib: Container<RawPluginLib> = Container::load(path)?;
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/main.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     unsafe fn load(path: &Path) -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/main.rs:71:19
[INFO] [stdout]    |
[INFO] [stdout] 71 |           let lib = std::mem::transmute::<
[INFO] [stdout]    |  ___________________^
[INFO] [stdout] 72 | |             Container<RawPluginLib<'_>>,
[INFO] [stdout] 73 | |             Container<RawPluginLib<'static>>,
[INFO] [stdout] 74 | |         >(lib);
[INFO] [stdout]    | |______________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:132:26
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let (to_plugin_tx,   mut to_plugin_rx)   = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |                          ----^^^^^^^^^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let (from_plugin_tx, mut from_plugin_rx) = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |                          ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_plugin_tx`
[INFO] [stdout]    --> src/main.rs:132:10
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let (to_plugin_tx,   mut to_plugin_rx)   = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_plugin_tx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_plugin_rx`
[INFO] [stdout]    --> src/main.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let (from_plugin_tx, mut from_plugin_rx) = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_plugin_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]   --> src/main.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]   --> src/main.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_ffi::FutureExt`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use async_ffi::FutureExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Error, Plugin_TO, PluginMod, PLUGIN_ABI_VERSION,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `dlopen2::wrapper::Container::<T>::load` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/main.rs:49:44
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let lib: Container<RawPluginLib> = Container::load(path)?;
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/main.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     unsafe fn load(path: &Path) -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/main.rs:71:19
[INFO] [stdout]    |
[INFO] [stdout] 71 |           let lib = std::mem::transmute::<
[INFO] [stdout]    |  ___________________^
[INFO] [stdout] 72 | |             Container<RawPluginLib<'_>>,
[INFO] [stdout] 73 | |             Container<RawPluginLib<'static>>,
[INFO] [stdout] 74 | |         >(lib);
[INFO] [stdout]    | |______________^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:132:26
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let (to_plugin_tx,   mut to_plugin_rx)   = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |                          ----^^^^^^^^^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let (from_plugin_tx, mut from_plugin_rx) = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |                          ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to_plugin_tx`
[INFO] [stdout]    --> src/main.rs:132:10
[INFO] [stdout]     |
[INFO] [stdout] 132 |     let (to_plugin_tx,   mut to_plugin_rx)   = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_to_plugin_tx`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_plugin_rx`
[INFO] [stdout]    --> src/main.rs:133:26
[INFO] [stdout]     |
[INFO] [stdout] 133 |     let (from_plugin_tx, mut from_plugin_rx) = mpsc::channel::<abi_stable::std_types::RVec<u8>>(32);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_plugin_rx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]   --> src/main.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `PLUGIN_MOD` should have a snake case name
[INFO] [stdout]   --> src/main.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     PLUGIN_MOD: &'a PluginMod,
[INFO] [stdout]    |     ^^^^^^^^^^ help: convert the identifier to snake case: `plugin_mod`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.97s
[INFO] running `Command { std: "docker" "inspect" "a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916", kill_on_drop: false }`
[INFO] [stdout] a39dc05dc525daa9092061aaa264d05424381fc3144a693f4dee7459088b6916
