[INFO] fetching crate net-utils 0.0.5...
[INFO] building net-utils-0.0.5 against beta-2026-03-05 for beta-1.95-1
[INFO] extracting crate net-utils 0.0.5 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate net-utils 0.0.5
[INFO] finished tweaking crates.io crate net-utils 0.0.5
[INFO] tweaked toml for crates.io crate net-utils 0.0.5 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate net-utils 0.0.5 on toolchain beta-2026-03-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "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" "+beta-2026-03-05" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 49 packages to latest compatible versions
[INFO] [stderr]       Adding env_logger v0.3.5 (available: v0.11.9)
[INFO] [stderr]       Adding log v0.3.9 (available: v0.4.29)
[INFO] [stderr]       Adding openssl v0.9.24 (available: v0.10.75)
[INFO] [stderr]       Adding time v0.1.45 (available: v0.3.47)
[INFO] [stderr]       Adding uuid v0.1.18 (available: v1.22.0)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] acbbf6a317a403b7bf0d2b2c8b8451174b9a1f7b2390d93196817c77fae62c2b
[INFO] running `Command { std: "docker" "start" "-a" "acbbf6a317a403b7bf0d2b2c8b8451174b9a1f7b2390d93196817c77fae62c2b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "acbbf6a317a403b7bf0d2b2c8b8451174b9a1f7b2390d93196817c77fae62c2b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "acbbf6a317a403b7bf0d2b2c8b8451174b9a1f7b2390d93196817c77fae62c2b", kill_on_drop: false }`
[INFO] [stdout] acbbf6a317a403b7bf0d2b2c8b8451174b9a1f7b2390d93196817c77fae62c2b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f233cfe50d4036ea15fa80eb33b6b4069282952a6d56e32e9141742b29af6c04
[INFO] running `Command { std: "docker" "start" "-a" "f233cfe50d4036ea15fa80eb33b6b4069282952a6d56e32e9141742b29af6c04", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rustc-serialize v0.3.25
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling uuid v0.1.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling net-utils v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/net/config.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Duration;
[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: `std::str::FromStr`
[INFO] [stdout]   --> src/net/conn.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:151:22
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let server = try!(Connection::host_to_sock_address(host, port));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:154:29
[INFO] [stdout]     |
[INFO] [stdout] 154 |             stream_socket = try!(TcpStream::connect_timeout(
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:159:29
[INFO] [stdout]     |
[INFO] [stdout] 159 |             stream_socket = try!(TcpStream::connect(server));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:173:29
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let writer_socket = try!(stream_socket.try_clone());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/net/conn.rs:361:47
[INFO] [stdout]     |
[INFO] [stdout] 361 |     fn write(&mut self, buf: &[u8]) -> Result<(usize)> {
[INFO] [stdout]     |                                               ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 361 -     fn write(&mut self, buf: &[u8]) -> Result<(usize)> {
[INFO] [stdout] 361 +     fn write(&mut self, buf: &[u8]) -> Result<usize> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/net/conn.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |           let server = match (host, port).to_socket_addrs() {
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 121 | |             Ok(mut host_iter) => {
[INFO] [stdout] 122 | |                 match host_iter.next() {
[INFO] [stdout] 123 | |                     Some(mut host_addr) => return Ok(host_addr),
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |         };
[INFO] [stdout]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 137 |           let err_str = format!("Failed to parse {}:{}. ", host, port);
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/net/conn.rs:123:26
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     Some(mut host_addr) => return Ok(host_addr),
[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: unused variable: `server`
[INFO] [stdout]    --> src/net/conn.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let server = match (host, port).to_socket_addrs() {
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/net/conn.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let mut stream_socket;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_file` is never used
[INFO] [stdout]   --> src/net/config.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl Config {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 58 |     fn from_file(file: &str) -> Config {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/net/conn.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_peer_address(&self) -> &String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/net/conn.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn get_local_address(&self) -> &String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-binding let on a synchronization lock
[INFO] [stdout]    --> src/net/poolmgr.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let _ = a;
[INFO] [stdout]     |             ^ this lock is not assigned to a binding and is immediately dropped
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(let_underscore_lock)]` (part of `#[warn(let_underscore)]`) on by default
[INFO] [stdout] help: consider binding to an unused variable to avoid immediately dropping the value
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let _unused = a;
[INFO] [stdout]     |              ++++++
[INFO] [stdout] help: consider immediately dropping the value
[INFO] [stdout]     |
[INFO] [stdout] 155 -         let _ = a;
[INFO] [stdout] 155 +         drop(a);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.36s
[INFO] running `Command { std: "docker" "inspect" "f233cfe50d4036ea15fa80eb33b6b4069282952a6d56e32e9141742b29af6c04", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f233cfe50d4036ea15fa80eb33b6b4069282952a6d56e32e9141742b29af6c04", kill_on_drop: false }`
[INFO] [stdout] f233cfe50d4036ea15fa80eb33b6b4069282952a6d56e32e9141742b29af6c04
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-03-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e5ea2165d39f227e4a673327b2994d3615e0c5220bb6b654bb7bb67393e1f283
[INFO] running `Command { std: "docker" "start" "-a" "e5ea2165d39f227e4a673327b2994d3615e0c5220bb6b654bb7bb67393e1f283", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling winapi-build v0.1.1
[INFO] [stderr]    Compiling winapi v0.2.8
[INFO] [stderr]    Compiling utf8-ranges v0.1.3
[INFO] [stderr]    Compiling regex-syntax v0.3.9
[INFO] [stderr]    Compiling memchr v0.1.11
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/net/config.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Duration;
[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: `std::str::FromStr`
[INFO] [stdout]   --> src/net/conn.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:151:22
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let server = try!(Connection::host_to_sock_address(host, port));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:154:29
[INFO] [stdout]     |
[INFO] [stdout] 154 |             stream_socket = try!(TcpStream::connect_timeout(
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:159:29
[INFO] [stdout]     |
[INFO] [stdout] 159 |             stream_socket = try!(TcpStream::connect(server));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:173:29
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let writer_socket = try!(stream_socket.try_clone());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/net/conn.rs:361:47
[INFO] [stdout]     |
[INFO] [stdout] 361 |     fn write(&mut self, buf: &[u8]) -> Result<(usize)> {
[INFO] [stdout]     |                                               ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 361 -     fn write(&mut self, buf: &[u8]) -> Result<(usize)> {
[INFO] [stdout] 361 +     fn write(&mut self, buf: &[u8]) -> Result<usize> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/net/conn.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |           let server = match (host, port).to_socket_addrs() {
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 121 | |             Ok(mut host_iter) => {
[INFO] [stdout] 122 | |                 match host_iter.next() {
[INFO] [stdout] 123 | |                     Some(mut host_addr) => return Ok(host_addr),
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |         };
[INFO] [stdout]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 137 |           let err_str = format!("Failed to parse {}:{}. ", host, port);
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/net/conn.rs:123:26
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     Some(mut host_addr) => return Ok(host_addr),
[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: unused variable: `server`
[INFO] [stdout]    --> src/net/conn.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let server = match (host, port).to_socket_addrs() {
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/net/conn.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let mut stream_socket;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_file` is never used
[INFO] [stdout]   --> src/net/config.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl Config {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 58 |     fn from_file(file: &str) -> Config {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/net/conn.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_peer_address(&self) -> &String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/net/conn.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn get_local_address(&self) -> &String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-binding let on a synchronization lock
[INFO] [stdout]    --> src/net/poolmgr.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let _ = a;
[INFO] [stdout]     |             ^ this lock is not assigned to a binding and is immediately dropped
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(let_underscore_lock)]` (part of `#[warn(let_underscore)]`) on by default
[INFO] [stdout] help: consider binding to an unused variable to avoid immediately dropping the value
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let _unused = a;
[INFO] [stdout]     |              ++++++
[INFO] [stdout] help: consider immediately dropping the value
[INFO] [stdout]     |
[INFO] [stdout] 155 -         let _ = a;
[INFO] [stdout] 155 +         drop(a);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling aho-corasick v0.5.3
[INFO] [stderr]    Compiling kernel32-sys v0.2.2
[INFO] [stderr]    Compiling thread-id v2.0.0
[INFO] [stderr]    Compiling thread_local v0.2.7
[INFO] [stderr]    Compiling regex v0.1.80
[INFO] [stderr]    Compiling env_logger v0.3.5
[INFO] [stderr]    Compiling net-utils v0.0.5 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/net/config.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::Duration;
[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: `std::time::Duration`
[INFO] [stdout]   --> src/net/config.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     use std::time::Duration;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/net/conn.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:151:22
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let server = try!(Connection::host_to_sock_address(host, port));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:154:29
[INFO] [stdout]     |
[INFO] [stdout] 154 |             stream_socket = try!(TcpStream::connect_timeout(
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:159:29
[INFO] [stdout]     |
[INFO] [stdout] 159 |             stream_socket = try!(TcpStream::connect(server));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/net/conn.rs:173:29
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let writer_socket = try!(stream_socket.try_clone());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/net/conn.rs:361:47
[INFO] [stdout]     |
[INFO] [stdout] 361 |     fn write(&mut self, buf: &[u8]) -> Result<(usize)> {
[INFO] [stdout]     |                                               ^     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 361 -     fn write(&mut self, buf: &[u8]) -> Result<(usize)> {
[INFO] [stdout] 361 +     fn write(&mut self, buf: &[u8]) -> Result<usize> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/net/poolmgr.rs:296:46
[INFO] [stdout]     |
[INFO] [stdout] 296 |         use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/net/poolmgr.rs:297:43
[INFO] [stdout]     |
[INFO] [stdout] 297 |         static NEXT_OFFSET: AtomicUsize = ATOMIC_USIZE_INIT;
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 297 -         static NEXT_OFFSET: AtomicUsize = ATOMIC_USIZE_INIT;
[INFO] [stdout] 297 +         static NEXT_OFFSET: AtomicUsize = AtomicUsize::new(0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/net/conn.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |           let server = match (host, port).to_socket_addrs() {
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 121 | |             Ok(mut host_iter) => {
[INFO] [stdout] 122 | |                 match host_iter.next() {
[INFO] [stdout] 123 | |                     Some(mut host_addr) => return Ok(host_addr),
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |         };
[INFO] [stdout]     | |_________- any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout] 137 |           let err_str = format!("Failed to parse {}:{}. ", host, port);
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/net/conn.rs:123:26
[INFO] [stdout]     |
[INFO] [stdout] 123 |                     Some(mut host_addr) => return Ok(host_addr),
[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: unused variable: `server`
[INFO] [stdout]    --> src/net/conn.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let server = match (host, port).to_socket_addrs() {
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_server`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/net/conn.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |         let mut stream_socket;
[INFO] [stdout]     |             ----^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_file` is never used
[INFO] [stdout]   --> src/net/config.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | impl Config {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 58 |     fn from_file(file: &str) -> Config {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/net/config.rs:69:1
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub mod test {
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/net/conn.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn get_peer_address(&self) -> &String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/net/conn.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn get_local_address(&self) -> &String {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a method
[INFO] [stdout]   --> src/net/poolmgr.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |     pub fn idle_conns_count(&self) -> usize {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-binding let on a synchronization lock
[INFO] [stdout]    --> src/net/poolmgr.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let _ = a;
[INFO] [stdout]     |             ^ this lock is not assigned to a binding and is immediately dropped
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(let_underscore_lock)]` (part of `#[warn(let_underscore)]`) on by default
[INFO] [stdout] help: consider binding to an unused variable to avoid immediately dropping the value
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let _unused = a;
[INFO] [stdout]     |              ++++++
[INFO] [stdout] help: consider immediately dropping the value
[INFO] [stdout]     |
[INFO] [stdout] 155 -         let _ = a;
[INFO] [stdout] 155 +         drop(a);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]    --> src/net/poolmgr.rs:215:1
[INFO] [stdout]     |
[INFO] [stdout] 215 | pub mod tests {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a function
[INFO] [stdout]    --> src/net/poolmgr.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 |     pub fn listen_ip4_localhost(port: u16, rx: Receiver<isize>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.85s
[INFO] running `Command { std: "docker" "inspect" "e5ea2165d39f227e4a673327b2994d3615e0c5220bb6b654bb7bb67393e1f283", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5ea2165d39f227e4a673327b2994d3615e0c5220bb6b654bb7bb67393e1f283", kill_on_drop: false }`
[INFO] [stdout] e5ea2165d39f227e4a673327b2994d3615e0c5220bb6b654bb7bb67393e1f283
