[INFO] fetching crate i2p_client 0.2.9...
[INFO] testing i2p_client-0.2.9 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate i2p_client 0.2.9 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate i2p_client 0.2.9
[INFO] finished tweaking crates.io crate i2p_client 0.2.9
[INFO] tweaked toml for crates.io crate i2p_client 0.2.9 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate i2p_client 0.2.9 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate i2p_client 0.2.9 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded predicates-tree v1.0.0
[INFO] [stderr]   Downloaded predicates-core v1.0.0
[INFO] [stderr]   Downloaded colored v1.9.3
[INFO] [stderr]   Downloaded serde v1.0.105
[INFO] [stderr]   Downloaded predicates v1.0.3
[INFO] [stderr]   Downloaded serde_derive v1.0.105
[INFO] [stderr]   Downloaded base64 v0.12.0
[INFO] [stderr]   Downloaded nom v2.2.1
[INFO] [stderr]   Downloaded simple_logger v1.6.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ab9984b8bd8484bdf0e1fefa7426f30980375a92b6fb9c69e4e255fdae31dfbe
[INFO] running `Command { std: "docker" "start" "-a" "ab9984b8bd8484bdf0e1fefa7426f30980375a92b6fb9c69e4e255fdae31dfbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ab9984b8bd8484bdf0e1fefa7426f30980375a92b6fb9c69e4e255fdae31dfbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab9984b8bd8484bdf0e1fefa7426f30980375a92b6fb9c69e4e255fdae31dfbe", kill_on_drop: false }`
[INFO] [stdout] ab9984b8bd8484bdf0e1fefa7426f30980375a92b6fb9c69e4e255fdae31dfbe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4653345a8402af020afd1c8326a6c0bb6033244e863cb6a6fa33d5da8e963076
[INFO] running `Command { std: "docker" "start" "-a" "4653345a8402af020afd1c8326a6c0bb6033244e863cb6a6fa33d5da8e963076", kill_on_drop: false }`
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling unicode-width v0.1.7
[INFO] [stderr]    Compiling dirs-sys v0.3.4
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stderr]    Compiling vec_map v0.8.1
[INFO] [stderr]    Compiling base64 v0.12.0
[INFO] [stderr]    Compiling nom v2.2.1
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling colored v1.9.3
[INFO] [stderr]    Compiling dirs v2.0.2
[INFO] [stderr]    Compiling chrono v0.4.11
[INFO] [stderr]    Compiling clap v2.33.0
[INFO] [stderr]    Compiling simple_logger v1.6.0
[INFO] [stderr]    Compiling i2p_client v0.2.9 (/opt/rustwide/workdir)
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:66:22
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let new_vec = vec.clone();
[INFO] [stdout]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:68:49
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:69:48
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:84:22
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let new_vec = vec.clone();
[INFO] [stdout]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:86:49
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:87:48
[INFO] [stdout]    |
[INFO] [stdout] 87 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.35s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "4653345a8402af020afd1c8326a6c0bb6033244e863cb6a6fa33d5da8e963076", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4653345a8402af020afd1c8326a6c0bb6033244e863cb6a6fa33d5da8e963076", kill_on_drop: false }`
[INFO] [stdout] 4653345a8402af020afd1c8326a6c0bb6033244e863cb6a6fa33d5da8e963076
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 279ca74c77e00c3a874dd285e638744968da8a80defd5d7e17098d7fa85e0787
[INFO] running `Command { std: "docker" "start" "-a" "279ca74c77e00c3a874dd285e638744968da8a80defd5d7e17098d7fa85e0787", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.16
[INFO] [stderr]    Compiling serde v1.0.105
[INFO] [stderr]    Compiling escargot v0.3.1
[INFO] [stderr]    Compiling itoa v0.4.5
[INFO] [stderr]    Compiling predicates-core v1.0.0
[INFO] [stderr]    Compiling treeline v0.1.0
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:66:22
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let new_vec = vec.clone();
[INFO] [stdout]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:68:49
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:69:48
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:84:22
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let new_vec = vec.clone();
[INFO] [stdout]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:86:49
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:87:48
[INFO] [stdout]    |
[INFO] [stdout] 87 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling predicates v1.0.3
[INFO] [stderr]    Compiling predicates-tree v1.0.0
[INFO] [stderr]    Compiling serde_derive v1.0.105
[INFO] [stderr]    Compiling serde_json v1.0.48
[INFO] [stderr]    Compiling assert_cmd v0.10.2
[INFO] [stderr]    Compiling i2p_client v0.2.9 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::process::Command`
[INFO] [stdout]  --> tests/i2p.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::process::Command;  // Run programs
[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: `assert_cmd::prelude::*`
[INFO] [stdout]  --> tests/i2p.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use assert_cmd::prelude::*; // Add methods on commands
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:66:22
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let new_vec = vec.clone();
[INFO] [stdout]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:68:49
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:69:48
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/lib.rs:84:22
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let new_vec = vec.clone();
[INFO] [stdout]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:86:49
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stdout]    |                                                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stdout]   --> src/lib.rs:87:48
[INFO] [stdout]    |
[INFO] [stdout] 87 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stdout]    |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 13.34s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "279ca74c77e00c3a874dd285e638744968da8a80defd5d7e17098d7fa85e0787", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "279ca74c77e00c3a874dd285e638744968da8a80defd5d7e17098d7fa85e0787", kill_on_drop: false }`
[INFO] [stdout] 279ca74c77e00c3a874dd285e638744968da8a80defd5d7e17098d7fa85e0787
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f3e2effb3e2f2c1f95a0d458fef4b89fc9e483f789e108ac87260005c2e046bd
[INFO] running `Command { std: "docker" "start" "-a" "f3e2effb3e2f2c1f95a0d458fef4b89fc9e483f789e108ac87260005c2e046bd", kill_on_drop: false }`
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/lib.rs:66:22
[INFO] [stderr]    |
[INFO] [stderr] 66 |     let new_vec = vec.clone();
[INFO] [stderr]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stderr]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stderr]   --> src/lib.rs:68:49
[INFO] [stderr]    |
[INFO] [stderr] 68 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stderr]    |                                                 ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stderr]   --> src/lib.rs:69:48
[INFO] [stderr]    |
[INFO] [stderr] 69 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stderr]    |                                                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/lib.rs:84:22
[INFO] [stderr]    |
[INFO] [stderr] 84 |     let new_vec = vec.clone();
[INFO] [stderr]    |                      ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `[(&str, &str)]` does not implement `Clone`, so calling `clone` on `&[(&str, &str)]` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stderr]   --> src/lib.rs:86:49
[INFO] [stderr]    |
[INFO] [stderr] 86 |     let res = map.get("RESULT").unwrap_or(&"OK").clone();
[INFO] [stderr]    |                                                 ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type
[INFO] [stderr]   --> src/lib.rs:87:48
[INFO] [stderr]    |
[INFO] [stderr] 87 |     let msg = map.get("MESSAGE").unwrap_or(&"").clone();
[INFO] [stderr]    |                                                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `i2p_client` (lib) generated 6 warnings (run `cargo fix --lib -p i2p_client` to apply 2 suggestions)
[INFO] [stderr] warning: unused import: `std::process::Command`
[INFO] [stderr]  --> tests/i2p.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::process::Command;  // Run programs
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `assert_cmd::prelude::*`
[INFO] [stderr]  --> tests/i2p.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use assert_cmd::prelude::*; // Add methods on commands
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `i2p_client` (test "i2p") generated 2 warnings (run `cargo fix --test "i2p" -p i2p_client` to apply 2 suggestions)
[INFO] [stderr] warning: `i2p_client` (lib test) generated 6 warnings (6 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/i2p_client-9541a4ffcd167f10)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test parsers::tests::dest_reply ... ok
[INFO] [stdout] test parsers::tests::hello ... ok
[INFO] [stdout] test parsers::tests::naming_reply ... ok
[INFO] [stdout] test parsers::tests::session_status ... ok
[INFO] [stdout] test parsers::tests::stream_status ... ok
[INFO] [stdout] test tests::it_works ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/i2p_client.rs (/opt/rustwide/target/debug/deps/i2p_client-3c66a1ed5c07c453)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stderr]      Running tests/i2p.rs (/opt/rustwide/target/debug/deps/i2p-263be7cc4a054d98)
[INFO] [stdout] test result: ok. 0 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 it_works ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests i2p_client
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "f3e2effb3e2f2c1f95a0d458fef4b89fc9e483f789e108ac87260005c2e046bd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3e2effb3e2f2c1f95a0d458fef4b89fc9e483f789e108ac87260005c2e046bd", kill_on_drop: false }`
[INFO] [stdout] f3e2effb3e2f2c1f95a0d458fef4b89fc9e483f789e108ac87260005c2e046bd
