[INFO] fetching crate silkrust 0.0.3...
[INFO] testing silkrust-0.0.3 against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] extracting crate silkrust 0.0.3 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate silkrust 0.0.3
[INFO] finished tweaking crates.io crate silkrust 0.0.3
[INFO] tweaked toml for crates.io crate silkrust 0.0.3 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate silkrust 0.0.3 on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 60 packages to latest compatible versions
[INFO] [stderr]       Adding bitfield-struct v0.5.6 (available: v0.11.0)
[INFO] [stderr]       Adding blowfish v0.8.0 (available: v0.9.1)
[INFO] [stderr]       Adding rand v0.8.5 (available: v0.9.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d7c431af0dd23c4f890d2b0895c6bd99fa65961d88db3d4570c1152f4e088600
[INFO] running `Command { std: "docker" "start" "-a" "d7c431af0dd23c4f890d2b0895c6bd99fa65961d88db3d4570c1152f4e088600", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d7c431af0dd23c4f890d2b0895c6bd99fa65961d88db3d4570c1152f4e088600", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d7c431af0dd23c4f890d2b0895c6bd99fa65961d88db3d4570c1152f4e088600", kill_on_drop: false }`
[INFO] [stdout] d7c431af0dd23c4f890d2b0895c6bd99fa65961d88db3d4570c1152f4e088600
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Copt-level=3" "-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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b95d1886a72bd927611d9fea8a7b0a089e662ebc70d7067d58b217b5b69d7ea8
[INFO] running `Command { std: "docker" "start" "-a" "b95d1886a72bd927611d9fea8a7b0a089e662ebc70d7067d58b217b5b69d7ea8", kill_on_drop: false }`
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling queues v1.1.0
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling bitfield-struct v0.5.6
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling cipher v0.3.0
[INFO] [stderr]    Compiling blowfish v0.8.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling silkrust v0.0.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `tests`
[INFO] [stdout]   --> src/net/message_buffer.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[cfg(tests)]
[INFO] [stdout]    |       ^^^^^ help: there is a config with a similar name: `test`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tests)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tests)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::net::message::MessageDirection::Req`
[INFO] [stdout]  --> src/net/net_client.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::net::message::MessageDirection::Req;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::net::message::MessageKind::Framework`
[INFO] [stdout]  --> src/net/net_client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::net::message::MessageKind::Framework;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/net/net_client.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use log::{error, trace};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[cfg(feature = "bswap")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         #[cfg(feature = "bswap")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:52:19
[INFO] [stdout]    |
[INFO] [stdout] 52 |         #[cfg(not(feature = "bswap"))]
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     generic_array::GenericArray,
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:60:18
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub type Block = GenericArray<u8, U8>;
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn new(key: &GenericArray<u8, U56>) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/security.rs:82:43
[INFO] [stdout]    |
[INFO] [stdout] 82 |             blowfish.encrypt_block(Block::from_mut_slice(data));
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/security.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 blowfish.decrypt_block(Block::from_mut_slice(data));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security/exchange.rs:106:39
[INFO] [stdout]     |
[INFO] [stdout] 106 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security/exchange.rs:118:39
[INFO] [stdout]     |
[INFO] [stdout] 118 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]  --> src/net/net_client.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use bytes::{Buf};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `massive_buffer` is never read
[INFO] [stdout]   --> src/net/net_client.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct NetClient {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     massive_buffer: MassiveBuffer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MassiveProcessor` is never constructed
[INFO] [stdout]  --> src/net/massive.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct MassiveProcessor {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `header`, `count`, and `data` are never read
[INFO] [stdout]   --> src/net/massive.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) struct MassiveBuffer {
[INFO] [stdout]    |                   ------------- fields in this struct
[INFO] [stdout] 29 |     header: Option<MassiveHeader>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 30 |     count: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 31 |     data: BytesMut,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MassiveError` is never used
[INFO] [stdout]   --> src/net/massive.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) enum MassiveError {
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MassiveMessage` is never used
[INFO] [stdout]   --> src/net/massive.rs:47:6
[INFO] [stdout]    |
[INFO] [stdout] 47 | enum MassiveMessage {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `total_count` and `id` are never read
[INFO] [stdout]   --> src/net/massive.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct MassiveHeader {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 54 |     total_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 55 |     id: MessageId,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MassiveHeader` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MassiveBody` is never constructed
[INFO] [stdout]   --> src/net/massive.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | struct MassiveBody {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add`, `collect`, `reset`, `add_header`, and `add_body` are never used
[INFO] [stdout]    --> src/net/massive.rs:75:12
[INFO] [stdout]     |
[INFO] [stdout] 74  | impl MassiveBuffer {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] 75  |     pub fn add(&mut self, message: Message) -> Result<(), MassiveError> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 85  |     pub fn collect(&mut self) -> Option<Message> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     fn reset(&mut self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn add_header(&mut self, header: MassiveHeader) -> Result<(), MassiveError> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn add_body(&mut self, body: MassiveBody) -> Result<(), MassiveError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inbound` is never read
[INFO] [stdout]   --> src/security/security.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct EncodingRequirements {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 10 |     outbound: bool,
[INFO] [stdout] 11 |     inbound: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/net/net_connection.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stdout]    |                 ^^^^^^^^^ this lifetime flows to the output       ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/net/net_connection.rs:82:16
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stdout]    |                ^^^^^^^^^ this lifetime flows to the output            ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stdout]    |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 28.86s
[INFO] running `Command { std: "docker" "inspect" "b95d1886a72bd927611d9fea8a7b0a089e662ebc70d7067d58b217b5b69d7ea8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b95d1886a72bd927611d9fea8a7b0a089e662ebc70d7067d58b217b5b69d7ea8", kill_on_drop: false }`
[INFO] [stdout] b95d1886a72bd927611d9fea8a7b0a089e662ebc70d7067d58b217b5b69d7ea8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Copt-level=3" "-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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 84f2f2ae4903f5dec5fd549878b7d524431e92bf0cc1fe05eae3425b0c71a93b
[INFO] running `Command { std: "docker" "start" "-a" "84f2f2ae4903f5dec5fd549878b7d524431e92bf0cc1fe05eae3425b0c71a93b", kill_on_drop: false }`
[INFO] [stdout] warning: unexpected `cfg` condition name: `tests`
[INFO] [stdout]   --> src/net/message_buffer.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[cfg(tests)]
[INFO] [stdout]    |       ^^^^^ help: there is a config with a similar name: `test`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tests)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tests)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::net::message::MessageDirection::Req`
[INFO] [stdout]  --> src/net/net_client.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::net::message::MessageDirection::Req;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::net::message::MessageKind::Framework`
[INFO] [stdout]  --> src/net/net_client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::net::message::MessageKind::Framework;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/net/net_client.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use log::{error, trace};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[cfg(feature = "bswap")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         #[cfg(feature = "bswap")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:52:19
[INFO] [stdout]    |
[INFO] [stdout] 52 |         #[cfg(not(feature = "bswap"))]
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     generic_array::GenericArray,
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:60:18
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub type Block = GenericArray<u8, U8>;
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn new(key: &GenericArray<u8, U56>) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/security.rs:82:43
[INFO] [stdout]    |
[INFO] [stdout] 82 |             blowfish.encrypt_block(Block::from_mut_slice(data));
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/security.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 blowfish.decrypt_block(Block::from_mut_slice(data));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security/exchange.rs:106:39
[INFO] [stdout]     |
[INFO] [stdout] 106 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security/exchange.rs:118:39
[INFO] [stdout]     |
[INFO] [stdout] 118 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]  --> src/net/net_client.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use bytes::{Buf};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `massive_buffer` is never read
[INFO] [stdout]   --> src/net/net_client.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct NetClient {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     massive_buffer: MassiveBuffer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MassiveProcessor` is never constructed
[INFO] [stdout]  --> src/net/massive.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct MassiveProcessor {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `header`, `count`, and `data` are never read
[INFO] [stdout]   --> src/net/massive.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) struct MassiveBuffer {
[INFO] [stdout]    |                   ------------- fields in this struct
[INFO] [stdout] 29 |     header: Option<MassiveHeader>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 30 |     count: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 31 |     data: BytesMut,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MassiveError` is never used
[INFO] [stdout]   --> src/net/massive.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) enum MassiveError {
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MassiveMessage` is never used
[INFO] [stdout]   --> src/net/massive.rs:47:6
[INFO] [stdout]    |
[INFO] [stdout] 47 | enum MassiveMessage {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `total_count` and `id` are never read
[INFO] [stdout]   --> src/net/massive.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct MassiveHeader {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 54 |     total_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 55 |     id: MessageId,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MassiveHeader` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MassiveBody` is never constructed
[INFO] [stdout]   --> src/net/massive.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | struct MassiveBody {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add`, `collect`, `reset`, `add_header`, and `add_body` are never used
[INFO] [stdout]    --> src/net/massive.rs:75:12
[INFO] [stdout]     |
[INFO] [stdout] 74  | impl MassiveBuffer {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] 75  |     pub fn add(&mut self, message: Message) -> Result<(), MassiveError> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 85  |     pub fn collect(&mut self) -> Option<Message> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     fn reset(&mut self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn add_header(&mut self, header: MassiveHeader) -> Result<(), MassiveError> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn add_body(&mut self, body: MassiveBody) -> Result<(), MassiveError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inbound` is never read
[INFO] [stdout]   --> src/security/security.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct EncodingRequirements {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 10 |     outbound: bool,
[INFO] [stdout] 11 |     inbound: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/net/net_connection.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stdout]    |                 ^^^^^^^^^ this lifetime flows to the output       ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/net/net_connection.rs:82:16
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stdout]    |                ^^^^^^^^^ this lifetime flows to the output            ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stdout]    |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling silkrust v0.0.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `tests`
[INFO] [stdout]   --> src/net/message_buffer.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 | #[cfg(tests)]
[INFO] [stdout]    |       ^^^^^ help: there is a config with a similar name: `test`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tests)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tests)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::net::message::MessageDirection::Req`
[INFO] [stdout]  --> src/net/net_client.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::net::message::MessageDirection::Req;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::net::message::MessageKind::Framework`
[INFO] [stdout]  --> src/net/net_client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::net::message::MessageKind::Framework;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]  --> src/net/net_client.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use log::{error, trace};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:23:7
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[cfg(feature = "bswap")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:45:15
[INFO] [stdout]    |
[INFO] [stdout] 45 |         #[cfg(feature = "bswap")]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stdout]   --> src/security/blowfish_compat.rs:52:19
[INFO] [stdout]    |
[INFO] [stdout] 52 |         #[cfg(not(feature = "bswap"))]
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     generic_array::GenericArray,
[INFO] [stdout]    |                    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:60:18
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub type Block = GenericArray<u8, U8>;
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/blowfish_compat.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn new(key: &GenericArray<u8, U56>) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/security.rs:82:43
[INFO] [stdout]    |
[INFO] [stdout] 82 |             blowfish.encrypt_block(Block::from_mut_slice(data));
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/security/security.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 blowfish.decrypt_block(Block::from_mut_slice(data));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security/exchange.rs:106:39
[INFO] [stdout]     |
[INFO] [stdout] 106 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/security/exchange.rs:118:39
[INFO] [stdout]     |
[INFO] [stdout] 118 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Buf`
[INFO] [stdout]  --> src/net/net_client.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use bytes::{Buf};
[INFO] [stdout]   |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `responder_private`
[INFO] [stdout]    --> src/security/exchange.rs:207:13
[INFO] [stdout]     |
[INFO] [stdout] 207 |         let responder_private: u32 = rand::random();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_responder_private`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `massive_buffer` is never read
[INFO] [stdout]   --> src/net/net_client.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct NetClient {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     massive_buffer: MassiveBuffer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MassiveProcessor` is never constructed
[INFO] [stdout]  --> src/net/massive.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct MassiveProcessor {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `header`, `count`, and `data` are never read
[INFO] [stdout]   --> src/net/massive.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) struct MassiveBuffer {
[INFO] [stdout]    |                   ------------- fields in this struct
[INFO] [stdout] 29 |     header: Option<MassiveHeader>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 30 |     count: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 31 |     data: BytesMut,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MassiveError` is never used
[INFO] [stdout]   --> src/net/massive.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) enum MassiveError {
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MassiveMessage` is never used
[INFO] [stdout]   --> src/net/massive.rs:47:6
[INFO] [stdout]    |
[INFO] [stdout] 47 | enum MassiveMessage {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `total_count` and `id` are never read
[INFO] [stdout]   --> src/net/massive.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct MassiveHeader {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 54 |     total_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 55 |     id: MessageId,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MassiveHeader` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MassiveBody` is never constructed
[INFO] [stdout]   --> src/net/massive.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | struct MassiveBody {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add`, `collect`, `reset`, `add_header`, and `add_body` are never used
[INFO] [stdout]    --> src/net/massive.rs:75:12
[INFO] [stdout]     |
[INFO] [stdout] 74  | impl MassiveBuffer {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] 75  |     pub fn add(&mut self, message: Message) -> Result<(), MassiveError> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 85  |     pub fn collect(&mut self) -> Option<Message> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     fn reset(&mut self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn add_header(&mut self, header: MassiveHeader) -> Result<(), MassiveError> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn add_body(&mut self, body: MassiveBody) -> Result<(), MassiveError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `inbound` is never read
[INFO] [stdout]   --> src/security/security.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub struct EncodingRequirements {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 10 |     outbound: bool,
[INFO] [stdout] 11 |     inbound: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/net/net_connection.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stdout]    |                 ^^^^^^^^^ this lifetime flows to the output       ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/net/net_connection.rs:82:16
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stdout]    |                ^^^^^^^^^ this lifetime flows to the output            ------------------------ the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stdout]    |                                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.38s
[INFO] running `Command { std: "docker" "inspect" "84f2f2ae4903f5dec5fd549878b7d524431e92bf0cc1fe05eae3425b0c71a93b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "84f2f2ae4903f5dec5fd549878b7d524431e92bf0cc1fe05eae3425b0c71a93b", kill_on_drop: false }`
[INFO] [stdout] 84f2f2ae4903f5dec5fd549878b7d524431e92bf0cc1fe05eae3425b0c71a93b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Copt-level=3" "-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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ab87ee5340c184efebf2aafc7ce6488c585bca7756398ea44b9cc72bf806a1b8
[INFO] running `Command { std: "docker" "start" "-a" "ab87ee5340c184efebf2aafc7ce6488c585bca7756398ea44b9cc72bf806a1b8", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition name: `tests`
[INFO] [stderr]   --> src/net/message_buffer.rs:87:7
[INFO] [stderr]    |
[INFO] [stderr] 87 | #[cfg(tests)]
[INFO] [stderr]    |       ^^^^^ help: there is a config with a similar name: `test`
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider using a Cargo feature instead
[INFO] [stderr]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]             [lints.rust]
[INFO] [stderr]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tests)'] }
[INFO] [stderr]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tests)");` to the top of the `build.rs`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::net::message::MessageDirection::Req`
[INFO] [stderr]  --> src/net/net_client.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::net::message::MessageDirection::Req;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::net::message::MessageKind::Framework`
[INFO] [stderr]  --> src/net/net_client.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::net::message::MessageKind::Framework;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `error`
[INFO] [stderr]  --> src/net/net_client.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 | use log::{error, trace};
[INFO] [stderr]   |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stderr]   --> src/security/blowfish_compat.rs:23:7
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[cfg(feature = "bswap")]
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stderr]   --> src/security/blowfish_compat.rs:45:15
[INFO] [stderr]    |
[INFO] [stderr] 45 |         #[cfg(feature = "bswap")]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition value: `bswap`
[INFO] [stderr]   --> src/security/blowfish_compat.rs:52:19
[INFO] [stderr]    |
[INFO] [stderr] 52 |         #[cfg(not(feature = "bswap"))]
[INFO] [stderr]    |                   ^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stderr]    |
[INFO] [stderr]    = note: no expected values for `feature`
[INFO] [stderr]    = help: consider adding `bswap` as a feature in `Cargo.toml`
[INFO] [stderr]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/security/blowfish_compat.rs:17:20
[INFO] [stderr]    |
[INFO] [stderr] 17 |     generic_array::GenericArray,
[INFO] [stderr]    |                    ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/security/blowfish_compat.rs:60:18
[INFO] [stderr]    |
[INFO] [stderr] 60 | pub type Block = GenericArray<u8, U8>;
[INFO] [stderr]    |                  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/security/blowfish_compat.rs:72:18
[INFO] [stderr]    |
[INFO] [stderr] 72 |     fn new(key: &GenericArray<u8, U56>) -> Self {
[INFO] [stderr]    |                  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/security/security.rs:82:43
[INFO] [stderr]    |
[INFO] [stderr] 82 |             blowfish.encrypt_block(Block::from_mut_slice(data));
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/security/security.rs:95:47
[INFO] [stderr]    |
[INFO] [stderr] 95 |                 blowfish.decrypt_block(Block::from_mut_slice(data));
[INFO] [stderr]    |                                               ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stderr]    --> src/security/exchange.rs:106:39
[INFO] [stderr]     |
[INFO] [stderr] 106 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `security::blowfish_compat::blowfish::cipher::generic_array::GenericArray::<T, N>::from_mut_slice`: please upgrade to generic-array 1.x
[INFO] [stderr]    --> src/security/exchange.rs:118:39
[INFO] [stderr]     |
[INFO] [stderr] 118 |         blowfish.encrypt_block(Block::from_mut_slice(&mut signature));
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Buf`
[INFO] [stderr]  --> src/net/net_client.rs:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 | use bytes::{Buf};
[INFO] [stderr]   |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `massive_buffer` is never read
[INFO] [stderr]   --> src/net/net_client.rs:59:5
[INFO] [stderr]    |
[INFO] [stderr] 56 | pub struct NetClient {
[INFO] [stderr]    |            --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 59 |     massive_buffer: MassiveBuffer,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MassiveProcessor` is never constructed
[INFO] [stderr]  --> src/net/massive.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct MassiveProcessor {
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `header`, `count`, and `data` are never read
[INFO] [stderr]   --> src/net/massive.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 28 | pub(crate) struct MassiveBuffer {
[INFO] [stderr]    |                   ------------- fields in this struct
[INFO] [stderr] 29 |     header: Option<MassiveHeader>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 30 |     count: usize,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 31 |     data: BytesMut,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `MassiveError` is never used
[INFO] [stderr]   --> src/net/massive.rs:36:17
[INFO] [stderr]    |
[INFO] [stderr] 36 | pub(crate) enum MassiveError {
[INFO] [stderr]    |                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `MassiveMessage` is never used
[INFO] [stderr]   --> src/net/massive.rs:47:6
[INFO] [stderr]    |
[INFO] [stderr] 47 | enum MassiveMessage {
[INFO] [stderr]    |      ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `total_count` and `id` are never read
[INFO] [stderr]   --> src/net/massive.rs:54:5
[INFO] [stderr]    |
[INFO] [stderr] 53 | struct MassiveHeader {
[INFO] [stderr]    |        ------------- fields in this struct
[INFO] [stderr] 54 |     total_count: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 55 |     id: MessageId,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MassiveHeader` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MassiveBody` is never constructed
[INFO] [stderr]   --> src/net/massive.rs:57:8
[INFO] [stderr]    |
[INFO] [stderr] 57 | struct MassiveBody {
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `add`, `collect`, `reset`, `add_header`, and `add_body` are never used
[INFO] [stderr]    --> src/net/massive.rs:75:12
[INFO] [stderr]     |
[INFO] [stderr] 74  | impl MassiveBuffer {
[INFO] [stderr]     | ------------------ methods in this implementation
[INFO] [stderr] 75  |     pub fn add(&mut self, message: Message) -> Result<(), MassiveError> {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 85  |     pub fn collect(&mut self) -> Option<Message> {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 103 |     fn reset(&mut self) {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 109 |     fn add_header(&mut self, header: MassiveHeader) -> Result<(), MassiveError> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 119 |     fn add_body(&mut self, body: MassiveBody) -> Result<(), MassiveError> {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `inbound` is never read
[INFO] [stderr]   --> src/security/security.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 9  | pub struct EncodingRequirements {
[INFO] [stderr]    |            -------------------- field in this struct
[INFO] [stderr] 10 |     outbound: bool,
[INFO] [stderr] 11 |     inbound: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/net/net_connection.rs:78:17
[INFO] [stderr]    |
[INFO] [stderr] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stderr]    |                 ^^^^^^^^^ this lifetime flows to the output       ------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 78 |     pub fn take(&mut self) -> Result<Option<Message>, PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stderr]    |                                                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stderr]   --> src/net/net_connection.rs:82:16
[INFO] [stderr]    |
[INFO] [stderr] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<MessageQueue>>> {
[INFO] [stderr]    |                ^^^^^^^^^ this lifetime flows to the output            ------------------------ the lifetime gets resolved as `'_`
[INFO] [stderr]    |
[INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stderr]    |
[INFO] [stderr] 82 |     pub fn put(&mut self, message: Message) -> Result<(), PoisonError<MutexGuard<'_, MessageQueue>>> {
[INFO] [stderr]    |                                                                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `responder_private`
[INFO] [stderr]    --> src/security/exchange.rs:207:13
[INFO] [stderr]     |
[INFO] [stderr] 207 |         let responder_private: u32 = rand::random();
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_responder_private`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `silkrust` (lib) generated 26 warnings (run `cargo fix --lib -p silkrust` to apply 3 suggestions)
[INFO] [stderr] warning: `silkrust` (lib test) generated 27 warnings (26 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/silkrust-3db5e6ca45c96e55)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test net::message::id::tests::back_and_forth_works ... ok
[INFO] [stdout] test security::sequencer::tests::compare_generate_value_with_known_sequencer_impl ... ok
[INFO] [stdout] test security::exchange::tests::roundtrip ... ok
[INFO] [stdout] test security::sequencer::tests::compare_next_with_known_sequencer_impl ... ok
[INFO] [stdout] test security::checksum::tests::compare_new_with_known_impl ... ok
[INFO] [stdout] test security::checksum::tests::compare_compute_with_known_impl ... ok
[INFO] [stdout] test security::sequencer::tests::compare_init_with_known_sequencer_impl ... ok
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests silkrust
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/security/blowfish_compat.rs - security::blowfish_compat::reverse_words (line 33) ... FAILED
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/security/blowfish_compat.rs - security::blowfish_compat::reverse_words (line 33) stdout ----
[INFO] [stdout] error[E0432]: unresolved import `blowfish_compat`
[INFO] [stdout]  --> src/security/blowfish_compat.rs:34:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use blowfish_compat::reverse_words;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^ use of unresolved module or unlinked crate `blowfish_compat`
[INFO] [stdout]   |
[INFO] [stdout] help: to make use of source file src/security/blowfish_compat.rs, use `mod blowfish_compat` in this file to declare the module
[INFO] [stdout]   |
[INFO] [stdout] 2 + mod blowfish_compat;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/security/blowfish_compat.rs - security::blowfish_compat::reverse_words (line 33)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.35s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ab87ee5340c184efebf2aafc7ce6488c585bca7756398ea44b9cc72bf806a1b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab87ee5340c184efebf2aafc7ce6488c585bca7756398ea44b9cc72bf806a1b8", kill_on_drop: false }`
[INFO] [stdout] ab87ee5340c184efebf2aafc7ce6488c585bca7756398ea44b9cc72bf806a1b8
