[INFO] fetching crate postman-pop3 0.1.1-alpha.2... [INFO] testing postman-pop3-0.1.1-alpha.2 against try#eafdee2dfae8c2233b74f98b123308be7ccefcc6 for pr-79296 [INFO] extracting crate postman-pop3 0.1.1-alpha.2 into /workspace/builds/worker-3/source [INFO] validating manifest of crates.io crate postman-pop3 0.1.1-alpha.2 on toolchain eafdee2dfae8c2233b74f98b123308be7ccefcc6 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking crates.io crate postman-pop3 0.1.1-alpha.2 [INFO] finished tweaking crates.io crate postman-pop3 0.1.1-alpha.2 [INFO] tweaked toml for crates.io crate postman-pop3 0.1.1-alpha.2 written to /workspace/builds/worker-3/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded miow v0.3.6 [INFO] [stderr] Downloaded mio v0.7.6 [INFO] [stderr] Downloaded bytes v0.6.0 [INFO] [stderr] Downloaded tokio-macros v0.3.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e02faeaf0467b2e67391eb04d7085406a6a9c3305bf03dc2616c2a654de31835 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "e02faeaf0467b2e67391eb04d7085406a6a9c3305bf03dc2616c2a654de31835", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e02faeaf0467b2e67391eb04d7085406a6a9c3305bf03dc2616c2a654de31835", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e02faeaf0467b2e67391eb04d7085406a6a9c3305bf03dc2616c2a654de31835", kill_on_drop: false }` [INFO] [stdout] e02faeaf0467b2e67391eb04d7085406a6a9c3305bf03dc2616c2a654de31835 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 392f5a66a7213bed230f06369920edbb0b8faf0b84cd86150c96ade981ee7b32 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "392f5a66a7213bed230f06369920edbb0b8faf0b84cd86150c96ade981ee7b32", kill_on_drop: false }` [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling anyhow v1.0.34 [INFO] [stderr] Compiling regex-syntax v0.6.21 [INFO] [stderr] Compiling bytes v0.6.0 [INFO] [stderr] Compiling humantime v2.0.1 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling instant v0.1.9 [INFO] [stderr] Compiling lock_api v0.4.2 [INFO] [stderr] Compiling thread_local v1.0.1 [INFO] [stderr] Compiling parking_lot_core v0.8.0 [INFO] [stderr] Compiling parking_lot v0.11.1 [INFO] [stderr] Compiling tokio v0.3.4 [INFO] [stderr] Compiling mio v0.7.6 [INFO] [stderr] Compiling aho-corasick v0.7.15 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling syn v1.0.52 [INFO] [stderr] Compiling regex v1.4.2 [INFO] [stderr] Compiling env_logger v0.8.2 [INFO] [stderr] Compiling tokio-macros v0.3.1 [INFO] [stderr] Compiling postman-pop3 v0.1.1-alpha.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/lib.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Display`, `Formatter`, `Write` [INFO] [stdout] --> src/lib.rs:32:16 [INFO] [stdout] | [INFO] [stdout] 32 | use std::fmt::{Display, Formatter, Write}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/lib.rs:37:14 [INFO] [stdout] | [INFO] [stdout] 37 | use anyhow::{Error, Result}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/lib.rs:38:31 [INFO] [stdout] | [INFO] [stdout] 38 | use log::{debug, error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ReadHalf`, `WriteHalf` [INFO] [stdout] --> src/lib.rs:39:60 [INFO] [stdout] | [INFO] [stdout] 39 | use tokio::io::{AsyncBufReadExt, AsyncWriteExt, BufReader, ReadHalf, WriteHalf}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::net::tcp::OwnedReadHalf` [INFO] [stdout] --> src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | use tokio::net::tcp::OwnedReadHalf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 113 | / loop { [INFO] [stdout] 114 | | self.limit_connections.acquire().await.forget(); [INFO] [stdout] 115 | | [INFO] [stdout] 116 | | let socket = self.accept().await?; [INFO] [stdout] ... | [INFO] [stdout] 134 | | }); [INFO] [stdout] 135 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 136 | [INFO] [stdout] 137 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 175 | / loop { [INFO] [stdout] 176 | | let s = read_line(&mut r).await?; [INFO] [stdout] 177 | | if s.is_empty() { [INFO] [stdout] 178 | | continue; [INFO] [stdout] ... | [INFO] [stdout] 212 | | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stdout] 213 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 214 | [INFO] [stdout] 215 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:168:14 [INFO] [stdout] | [INFO] [stdout] 168 | let (mut r, mut w) = self.connection.split(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/lib.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/proto.rs:787:13 [INFO] [stdout] | [INFO] [stdout] 787 | _ => panic!("invalid command for request: {:?}", v), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/lib.rs:185:31 [INFO] [stdout] | [INFO] [stdout] 185 | Request::USER(v) => Response::USER("".to_string()), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `auth` [INFO] [stdout] --> src/lib.rs:197:26 [INFO] [stdout] | [INFO] [stdout] 197 | Some(auth) => unimplemented!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_auth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> src/lib.rs:207:32 [INFO] [stdout] | [INFO] [stdout] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stdout] | ^^ help: try ignoring the field: `id: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lines` [INFO] [stdout] --> src/lib.rs:207:36 [INFO] [stdout] | [INFO] [stdout] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `lines: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `username` [INFO] [stdout] --> src/lib.rs:208:33 [INFO] [stdout] | [INFO] [stdout] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `username: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `digest` [INFO] [stdout] --> src/lib.rs:208:43 [INFO] [stdout] | [INFO] [stdout] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `digest: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `State` [INFO] [stdout] --> src/proto.rs:1280:6 [INFO] [stdout] | [INFO] [stdout] 1280 | enum State { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_shutdown` [INFO] [stdout] --> src/shutdown.rs:31:19 [INFO] [stdout] | [INFO] [stdout] 31 | pub(crate) fn is_shutdown(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `recv` [INFO] [stdout] --> src/shutdown.rs:36:25 [INFO] [stdout] | [INFO] [stdout] 36 | pub(crate) async fn recv(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:212:13 [INFO] [stdout] | [INFO] [stdout] 212 | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 04s [INFO] running `Command { std: "docker" "inspect" "392f5a66a7213bed230f06369920edbb0b8faf0b84cd86150c96ade981ee7b32", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "392f5a66a7213bed230f06369920edbb0b8faf0b84cd86150c96ade981ee7b32", kill_on_drop: false }` [INFO] [stdout] 392f5a66a7213bed230f06369920edbb0b8faf0b84cd86150c96ade981ee7b32 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b8c64db78d5d6ffdd301950303be083e9c2cc745def09c4275cbc8fe99944d40 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "b8c64db78d5d6ffdd301950303be083e9c2cc745def09c4275cbc8fe99944d40", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/lib.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Display`, `Formatter`, `Write` [INFO] [stdout] --> src/lib.rs:32:16 [INFO] [stdout] | [INFO] [stdout] 32 | use std::fmt::{Display, Formatter, Write}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/lib.rs:37:14 [INFO] [stdout] | [INFO] [stdout] 37 | use anyhow::{Error, Result}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/lib.rs:38:31 [INFO] [stdout] | [INFO] [stdout] 38 | use log::{debug, error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ReadHalf`, `WriteHalf` [INFO] [stdout] --> src/lib.rs:39:60 [INFO] [stdout] | [INFO] [stdout] 39 | use tokio::io::{AsyncBufReadExt, AsyncWriteExt, BufReader, ReadHalf, WriteHalf}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling postman-pop3 v0.1.1-alpha.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `tokio::net::tcp::OwnedReadHalf` [INFO] [stdout] --> src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | use tokio::net::tcp::OwnedReadHalf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 113 | / loop { [INFO] [stdout] 114 | | self.limit_connections.acquire().await.forget(); [INFO] [stdout] 115 | | [INFO] [stdout] 116 | | let socket = self.accept().await?; [INFO] [stdout] ... | [INFO] [stdout] 134 | | }); [INFO] [stdout] 135 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 136 | [INFO] [stdout] 137 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 175 | / loop { [INFO] [stdout] 176 | | let s = read_line(&mut r).await?; [INFO] [stdout] 177 | | if s.is_empty() { [INFO] [stdout] 178 | | continue; [INFO] [stdout] ... | [INFO] [stdout] 212 | | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stdout] 213 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 214 | [INFO] [stdout] 215 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:168:14 [INFO] [stdout] | [INFO] [stdout] 168 | let (mut r, mut w) = self.connection.split(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/lib.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/proto.rs:787:13 [INFO] [stdout] | [INFO] [stdout] 787 | _ => panic!("invalid command for request: {:?}", v), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/lib.rs:185:31 [INFO] [stdout] | [INFO] [stdout] 185 | Request::USER(v) => Response::USER("".to_string()), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `auth` [INFO] [stdout] --> src/lib.rs:197:26 [INFO] [stdout] | [INFO] [stdout] 197 | Some(auth) => unimplemented!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_auth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> src/lib.rs:207:32 [INFO] [stdout] | [INFO] [stdout] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stdout] | ^^ help: try ignoring the field: `id: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lines` [INFO] [stdout] --> src/lib.rs:207:36 [INFO] [stdout] | [INFO] [stdout] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `lines: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `username` [INFO] [stdout] --> src/lib.rs:208:33 [INFO] [stdout] | [INFO] [stdout] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `username: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `digest` [INFO] [stdout] --> src/lib.rs:208:43 [INFO] [stdout] | [INFO] [stdout] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `digest: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `State` [INFO] [stdout] --> src/proto.rs:1280:6 [INFO] [stdout] | [INFO] [stdout] 1280 | enum State { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_shutdown` [INFO] [stdout] --> src/shutdown.rs:31:19 [INFO] [stdout] | [INFO] [stdout] 31 | pub(crate) fn is_shutdown(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `recv` [INFO] [stdout] --> src/shutdown.rs:36:25 [INFO] [stdout] | [INFO] [stdout] 36 | pub(crate) async fn recv(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:212:13 [INFO] [stdout] | [INFO] [stdout] 212 | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::BorrowMut` [INFO] [stdout] --> src/lib.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | use std::borrow::BorrowMut; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Display`, `Formatter`, `Write` [INFO] [stdout] --> src/lib.rs:32:16 [INFO] [stdout] | [INFO] [stdout] 32 | use std::fmt::{Display, Formatter, Write}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/lib.rs:37:14 [INFO] [stdout] | [INFO] [stdout] 37 | use anyhow::{Error, Result}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `warn` [INFO] [stdout] --> src/lib.rs:38:31 [INFO] [stdout] | [INFO] [stdout] 38 | use log::{debug, error, info, warn}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ReadHalf`, `WriteHalf` [INFO] [stdout] --> src/lib.rs:39:60 [INFO] [stdout] | [INFO] [stdout] 39 | use tokio::io::{AsyncBufReadExt, AsyncWriteExt, BufReader, ReadHalf, WriteHalf}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::net::tcp::OwnedReadHalf` [INFO] [stdout] --> src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | use tokio::net::tcp::OwnedReadHalf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:137:9 [INFO] [stdout] | [INFO] [stdout] 113 | / loop { [INFO] [stdout] 114 | | self.limit_connections.acquire().await.forget(); [INFO] [stdout] 115 | | [INFO] [stdout] 116 | | let socket = self.accept().await?; [INFO] [stdout] ... | [INFO] [stdout] 134 | | }); [INFO] [stdout] 135 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 136 | [INFO] [stdout] 137 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 175 | / loop { [INFO] [stdout] 176 | | let s = read_line(&mut r).await?; [INFO] [stdout] 177 | | if s.is_empty() { [INFO] [stdout] 178 | | continue; [INFO] [stdout] ... | [INFO] [stdout] 212 | | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stdout] 213 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 214 | [INFO] [stdout] 215 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:168:14 [INFO] [stdout] | [INFO] [stdout] 168 | let (mut r, mut w) = self.connection.split(); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/lib.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/proto.rs:787:13 [INFO] [stdout] | [INFO] [stdout] 787 | _ => panic!("invalid command for request: {:?}", v), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/lib.rs:185:31 [INFO] [stdout] | [INFO] [stdout] 185 | Request::USER(v) => Response::USER("".to_string()), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `auth` [INFO] [stdout] --> src/lib.rs:197:26 [INFO] [stdout] | [INFO] [stdout] 197 | Some(auth) => unimplemented!(), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_auth` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `id` [INFO] [stdout] --> src/lib.rs:207:32 [INFO] [stdout] | [INFO] [stdout] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stdout] | ^^ help: try ignoring the field: `id: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lines` [INFO] [stdout] --> src/lib.rs:207:36 [INFO] [stdout] | [INFO] [stdout] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stdout] | ^^^^^ help: try ignoring the field: `lines: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `username` [INFO] [stdout] --> src/lib.rs:208:33 [INFO] [stdout] | [INFO] [stdout] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `username: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `digest` [INFO] [stdout] --> src/lib.rs:208:43 [INFO] [stdout] | [INFO] [stdout] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `digest: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `State` [INFO] [stdout] --> src/proto.rs:1280:6 [INFO] [stdout] | [INFO] [stdout] 1280 | enum State { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_shutdown` [INFO] [stdout] --> src/shutdown.rs:31:19 [INFO] [stdout] | [INFO] [stdout] 31 | pub(crate) fn is_shutdown(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `recv` [INFO] [stdout] --> src/shutdown.rs:36:25 [INFO] [stdout] | [INFO] [stdout] 36 | pub(crate) async fn recv(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:212:13 [INFO] [stdout] | [INFO] [stdout] 212 | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 21 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 5.36s [INFO] running `Command { std: "docker" "inspect" "b8c64db78d5d6ffdd301950303be083e9c2cc745def09c4275cbc8fe99944d40", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b8c64db78d5d6ffdd301950303be083e9c2cc745def09c4275cbc8fe99944d40", kill_on_drop: false }` [INFO] [stdout] b8c64db78d5d6ffdd301950303be083e9c2cc745def09c4275cbc8fe99944d40 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:6eabd152ff4036248d66efda456a36cb33d24b7291b33f25f75140726c88da35" "/opt/rustwide/cargo-home/bin/cargo" "+eafdee2dfae8c2233b74f98b123308be7ccefcc6" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 3469ea23b45e0dc1e9e9dcbdedfe93faacb211e91e63b961524ada01f25ee999 [INFO] running `Command { std: "docker" "start" "-a" "3469ea23b45e0dc1e9e9dcbdedfe93faacb211e91e63b961524ada01f25ee999", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::borrow::BorrowMut` [INFO] [stderr] --> src/lib.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | use std::borrow::BorrowMut; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display`, `Formatter`, `Write` [INFO] [stderr] --> src/lib.rs:32:16 [INFO] [stderr] | [INFO] [stderr] 32 | use std::fmt::{Display, Formatter, Write}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Error` [INFO] [stderr] --> src/lib.rs:37:14 [INFO] [stderr] | [INFO] [stderr] 37 | use anyhow::{Error, Result}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `warn` [INFO] [stderr] --> src/lib.rs:38:31 [INFO] [stderr] | [INFO] [stderr] 38 | use log::{debug, error, info, warn}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ReadHalf`, `WriteHalf` [INFO] [stderr] --> src/lib.rs:39:60 [INFO] [stderr] | [INFO] [stderr] 39 | use tokio::io::{AsyncBufReadExt, AsyncWriteExt, BufReader, ReadHalf, WriteHalf}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::net::tcp::OwnedReadHalf` [INFO] [stderr] --> src/lib.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | use tokio::net::tcp::OwnedReadHalf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:137:9 [INFO] [stderr] | [INFO] [stderr] 113 | / loop { [INFO] [stderr] 114 | | self.limit_connections.acquire().await.forget(); [INFO] [stderr] 115 | | [INFO] [stderr] 116 | | let socket = self.accept().await?; [INFO] [stderr] ... | [INFO] [stderr] 134 | | }); [INFO] [stderr] 135 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 136 | [INFO] [stderr] 137 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 175 | / loop { [INFO] [stderr] 176 | | let s = read_line(&mut r).await?; [INFO] [stderr] 177 | | if s.is_empty() { [INFO] [stderr] 178 | | continue; [INFO] [stderr] ... | [INFO] [stderr] 212 | | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stderr] 213 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 214 | [INFO] [stderr] 215 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:168:14 [INFO] [stderr] | [INFO] [stderr] 168 | let (mut r, mut w) = self.connection.split(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str::FromStr` [INFO] [stderr] --> src/lib.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | use std::str::FromStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/proto.rs:787:13 [INFO] [stderr] | [INFO] [stderr] 787 | _ => panic!("invalid command for request: {:?}", v), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v` [INFO] [stderr] --> src/lib.rs:185:31 [INFO] [stderr] | [INFO] [stderr] 185 | Request::USER(v) => Response::USER("".to_string()), [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `auth` [INFO] [stderr] --> src/lib.rs:197:26 [INFO] [stderr] | [INFO] [stderr] 197 | Some(auth) => unimplemented!(), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_auth` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> src/lib.rs:207:32 [INFO] [stderr] | [INFO] [stderr] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stderr] | ^^ help: try ignoring the field: `id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lines` [INFO] [stderr] --> src/lib.rs:207:36 [INFO] [stderr] | [INFO] [stderr] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `lines: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `username` [INFO] [stderr] --> src/lib.rs:208:33 [INFO] [stderr] | [INFO] [stderr] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `username: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `digest` [INFO] [stderr] --> src/lib.rs:208:43 [INFO] [stderr] | [INFO] [stderr] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stderr] | ^^^^^^ help: try ignoring the field: `digest: _` [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `State` [INFO] [stderr] --> src/proto.rs:1280:6 [INFO] [stderr] | [INFO] [stderr] 1280 | enum State { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `is_shutdown` [INFO] [stderr] --> src/shutdown.rs:31:19 [INFO] [stderr] | [INFO] [stderr] 31 | pub(crate) fn is_shutdown(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `recv` [INFO] [stderr] --> src/shutdown.rs:36:25 [INFO] [stderr] | [INFO] [stderr] 36 | pub(crate) async fn recv(&mut self) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:212:13 [INFO] [stderr] | [INFO] [stderr] 212 | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 21 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::borrow::BorrowMut` [INFO] [stderr] --> src/lib.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | use std::borrow::BorrowMut; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display`, `Formatter`, `Write` [INFO] [stderr] --> src/lib.rs:32:16 [INFO] [stderr] | [INFO] [stderr] 32 | use std::fmt::{Display, Formatter, Write}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Error` [INFO] [stderr] --> src/lib.rs:37:14 [INFO] [stderr] | [INFO] [stderr] 37 | use anyhow::{Error, Result}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `warn` [INFO] [stderr] --> src/lib.rs:38:31 [INFO] [stderr] | [INFO] [stderr] 38 | use log::{debug, error, info, warn}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ReadHalf`, `WriteHalf` [INFO] [stderr] --> src/lib.rs:39:60 [INFO] [stderr] | [INFO] [stderr] 39 | use tokio::io::{AsyncBufReadExt, AsyncWriteExt, BufReader, ReadHalf, WriteHalf}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::net::tcp::OwnedReadHalf` [INFO] [stderr] --> src/lib.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | use tokio::net::tcp::OwnedReadHalf; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:137:9 [INFO] [stderr] | [INFO] [stderr] 113 | / loop { [INFO] [stderr] 114 | | self.limit_connections.acquire().await.forget(); [INFO] [stderr] 115 | | [INFO] [stderr] 116 | | let socket = self.accept().await?; [INFO] [stderr] ... | [INFO] [stderr] 134 | | }); [INFO] [stderr] 135 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 136 | [INFO] [stderr] 137 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/lib.rs:215:9 [INFO] [stderr] | [INFO] [stderr] 175 | / loop { [INFO] [stderr] 176 | | let s = read_line(&mut r).await?; [INFO] [stderr] 177 | | if s.is_empty() { [INFO] [stderr] 178 | | continue; [INFO] [stderr] ... | [INFO] [stderr] 212 | | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stderr] 213 | | } [INFO] [stderr] | |_________- any code following this expression is unreachable [INFO] [stderr] 214 | [INFO] [stderr] 215 | Ok(()) [INFO] [stderr] | ^^^^^^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:168:14 [INFO] [stderr] | [INFO] [stderr] 168 | let (mut r, mut w) = self.connection.split(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str::FromStr` [INFO] [stderr] --> src/lib.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | use std::str::FromStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/proto.rs:787:13 [INFO] [stderr] | [INFO] [stderr] 787 | _ => panic!("invalid command for request: {:?}", v), [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v` [INFO] [stderr] --> src/lib.rs:185:31 [INFO] [stderr] | [INFO] [stderr] 185 | Request::USER(v) => Response::USER("".to_string()), [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `auth` [INFO] [stderr] --> src/lib.rs:197:26 [INFO] [stderr] | [INFO] [stderr] 197 | Some(auth) => unimplemented!(), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_auth` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `id` [INFO] [stderr] --> src/lib.rs:207:32 [INFO] [stderr] | [INFO] [stderr] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stderr] | ^^ help: try ignoring the field: `id: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `lines` [INFO] [stderr] --> src/lib.rs:207:36 [INFO] [stderr] | [INFO] [stderr] 207 | Request::TOP { id, lines } => unimplemented!(), [INFO] [stderr] | ^^^^^ help: try ignoring the field: `lines: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `username` [INFO] [stderr] --> src/lib.rs:208:33 [INFO] [stderr] | [INFO] [stderr] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stderr] | ^^^^^^^^ help: try ignoring the field: `username: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `digest` [INFO] [stderr] --> src/lib.rs:208:43 [INFO] [stderr] | [INFO] [stderr] 208 | Request::APOP { username, digest } => unimplemented!(), [INFO] [stderr] | ^^^^^^ help: try ignoring the field: `digest: _` [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `State` [INFO] [stderr] --> src/proto.rs:1280:6 [INFO] [stderr] | [INFO] [stderr] 1280 | enum State { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `is_shutdown` [INFO] [stderr] --> src/shutdown.rs:31:19 [INFO] [stderr] | [INFO] [stderr] 31 | pub(crate) fn is_shutdown(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `recv` [INFO] [stderr] --> src/shutdown.rs:36:25 [INFO] [stderr] | [INFO] [stderr] 36 | pub(crate) async fn recv(&mut self) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:212:13 [INFO] [stderr] | [INFO] [stderr] 212 | w.write(resp.to_string()?.as_bytes()).await; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 21 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.10s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/postman_pop3-af125a64966d1161 [INFO] [stderr] [2020-11-28T21:52:31Z INFO postman_pop3] postman pop3 server is running [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test::debug_run ... test test::debug_run has been running for over 60 seconds [ERROR] error running command: no output for 300 seconds [INFO] running `Command { std: "docker" "inspect" "3469ea23b45e0dc1e9e9dcbdedfe93faacb211e91e63b961524ada01f25ee999", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3469ea23b45e0dc1e9e9dcbdedfe93faacb211e91e63b961524ada01f25ee999", kill_on_drop: false }` [INFO] [stdout] 3469ea23b45e0dc1e9e9dcbdedfe93faacb211e91e63b961524ada01f25ee999