[INFO] cloning repository https://github.com/scraggelz/tokio-timer-example [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/scraggelz/tokio-timer-example" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscraggelz%2Ftokio-timer-example", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscraggelz%2Ftokio-timer-example'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9542a17b8082a42eb5b712f49ea6ae41a9a4d0c1 [INFO] testing scraggelz/tokio-timer-example against master#99e3aef02079e9c10583638520cd0c134dc3a01d for pr-85530 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fscraggelz%2Ftokio-timer-example" "/workspace/builds/worker-4/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/scraggelz/tokio-timer-example on toolchain 99e3aef02079e9c10583638520cd0c134dc3a01d [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/scraggelz/tokio-timer-example [INFO] finished tweaking git repo https://github.com/scraggelz/tokio-timer-example [INFO] tweaked toml for git repo https://github.com/scraggelz/tokio-timer-example written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/scraggelz/tokio-timer-example already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0d1c9b06d552610ce8460d17e1ef2815ac29bad0476f610eaaf9c765605c7ac5 [INFO] running `Command { std: "docker" "start" "-a" "0d1c9b06d552610ce8460d17e1ef2815ac29bad0476f610eaaf9c765605c7ac5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0d1c9b06d552610ce8460d17e1ef2815ac29bad0476f610eaaf9c765605c7ac5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d1c9b06d552610ce8460d17e1ef2815ac29bad0476f610eaaf9c765605c7ac5", kill_on_drop: false }` [INFO] [stdout] 0d1c9b06d552610ce8460d17e1ef2815ac29bad0476f610eaaf9c765605c7ac5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4bada58fc707ad5d7d56e65ab8783979eaa2d95ae40f6578d0c8f1867e8aa4fc [INFO] running `Command { std: "docker" "start" "-a" "4bada58fc707ad5d7d56e65ab8783979eaa2d95ae40f6578d0c8f1867e8aa4fc", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.70 [INFO] [stderr] Compiling cc v1.0.67 [INFO] [stderr] Compiling typenum v1.13.0 [INFO] [stderr] Compiling version_check v0.9.3 [INFO] [stderr] Compiling getrandom v0.2.2 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling proc-macro-nested v0.1.7 [INFO] [stderr] Compiling openssl v0.10.33 [INFO] [stderr] Compiling futures-sink v0.3.14 [INFO] [stderr] Compiling futures-core v0.3.14 [INFO] [stderr] Compiling bytes v1.0.1 [INFO] [stderr] Compiling native-tls v0.2.7 [INFO] [stderr] Compiling smallvec v1.6.1 [INFO] [stderr] Compiling futures-io v0.3.14 [INFO] [stderr] Compiling futures-task v0.3.14 [INFO] [stderr] Compiling itoa v0.4.7 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling instant v0.1.9 [INFO] [stderr] Compiling crossbeam-utils v0.8.3 [INFO] [stderr] Compiling tokio v1.5.0 [INFO] [stderr] Compiling tinyvec v1.2.0 [INFO] [stderr] Compiling unicode-bidi v0.3.5 [INFO] [stderr] Compiling httparse v1.4.0 [INFO] [stderr] Compiling form_urlencoded v1.0.1 [INFO] [stderr] Compiling lock_api v0.4.3 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Compiling futures-channel v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.8.3 [INFO] [stderr] Compiling http v0.2.4 [INFO] [stderr] Compiling input_buffer v0.4.0 [INFO] [stderr] Compiling mio v0.7.11 [INFO] [stderr] Compiling generic-array v0.14.4 [INFO] [stderr] Compiling parking_lot v0.11.1 [INFO] [stderr] Compiling rand_core v0.6.2 [INFO] [stderr] Compiling rand_chacha v0.3.0 [INFO] [stderr] Compiling rand v0.8.3 [INFO] [stderr] Compiling unicode-normalization v0.1.17 [INFO] [stderr] Compiling crossbeam-channel v0.5.1 [INFO] [stderr] Compiling openssl-sys v0.9.61 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling sha-1 v0.9.4 [INFO] [stderr] Compiling idna v0.2.3 [INFO] [stderr] Compiling url v2.2.1 [INFO] [stderr] Compiling futures-macro v0.3.14 [INFO] [stderr] Compiling thiserror-impl v1.0.24 [INFO] [stderr] Compiling tokio-macros v1.1.0 [INFO] [stderr] Compiling pin-project-internal v1.0.7 [INFO] [stderr] Compiling futures-util v0.3.14 [INFO] [stderr] Compiling thiserror v1.0.24 [INFO] [stderr] Compiling tungstenite v0.13.0 [INFO] [stderr] Compiling pin-project v1.0.7 [INFO] [stderr] Compiling futures-executor v0.3.14 [INFO] [stderr] Compiling futures v0.3.14 [INFO] [stderr] Compiling tokio-tungstenite v0.14.0 [INFO] [stderr] Compiling tokio_timer_example v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `tokio::time::timeout` [INFO] [stdout] --> src/server.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time::timeout; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::oneshot` [INFO] [stdout] --> src/server.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::sync::oneshot; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:50:28 [INFO] [stdout] | [INFO] [stdout] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> src/server.rs:60:27 [INFO] [stdout] | [INFO] [stdout] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recieved_stop` [INFO] [stdout] --> src/server.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Tx` [INFO] [stdout] --> src/server.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | type Tx = UnboundedSender; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `PeerMap` [INFO] [stdout] --> src/server.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | type PeerMap = Arc>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `type_of` [INFO] [stdout] --> src/server.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn type_of(_: T) -> &'static str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `remove_whitespace` [INFO] [stdout] --> src/server.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn remove_whitespace(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `handle_connection` [INFO] [stdout] --> src/server.rs:34:10 [INFO] [stdout] | [INFO] [stdout] 34 | async fn handle_connection(peer_map: PeerMap, raw_stream: TcpStream, addr: SocketAddr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `read_stdin` [INFO] [stdout] --> src/client.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | async fn read_stdin(tx: futures_channel::mpsc::UnboundedSender) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/server.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/server.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | stop_start_write.send("stop"); [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: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `future`, `pin_mut` [INFO] [stdout] --> src/main.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use futures_util::{future, pin_mut, StreamExt}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::task` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio::task; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::timeout` [INFO] [stdout] --> src/server.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time::timeout; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::oneshot` [INFO] [stdout] --> src/server.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::sync::oneshot; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `writing_future` [INFO] [stdout] --> src/main.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let writing_future = tokio::spawn(async move { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_writing_future` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | write.unbounded_send(data); [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: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:50:28 [INFO] [stdout] | [INFO] [stdout] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> src/server.rs:60:27 [INFO] [stdout] | [INFO] [stdout] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recieved_stop` [INFO] [stdout] --> src/server.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `type_of` [INFO] [stdout] --> src/server.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn type_of(_: T) -> &'static str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | stop_start_write.send("stop"); [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: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 27.58s [INFO] running `Command { std: "docker" "inspect" "4bada58fc707ad5d7d56e65ab8783979eaa2d95ae40f6578d0c8f1867e8aa4fc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4bada58fc707ad5d7d56e65ab8783979eaa2d95ae40f6578d0c8f1867e8aa4fc", kill_on_drop: false }` [INFO] [stdout] 4bada58fc707ad5d7d56e65ab8783979eaa2d95ae40f6578d0c8f1867e8aa4fc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bb9a4f09a5106f19c4664a0b9d61f63a1f918b0d452332faaeaa09259245598c [INFO] running `Command { std: "docker" "start" "-a" "bb9a4f09a5106f19c4664a0b9d61f63a1f918b0d452332faaeaa09259245598c", kill_on_drop: false }` [INFO] [stderr] Compiling tokio_timer_example v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `tokio::time::timeout` [INFO] [stdout] --> src/server.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time::timeout; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::oneshot` [INFO] [stdout] --> src/server.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::sync::oneshot; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:50:28 [INFO] [stdout] | [INFO] [stdout] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> src/server.rs:60:27 [INFO] [stdout] | [INFO] [stdout] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recieved_stop` [INFO] [stdout] --> src/server.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `Tx` [INFO] [stdout] --> src/server.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | type Tx = UnboundedSender; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `PeerMap` [INFO] [stdout] --> src/server.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | type PeerMap = Arc>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `type_of` [INFO] [stdout] --> src/server.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn type_of(_: T) -> &'static str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `remove_whitespace` [INFO] [stdout] --> src/server.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn remove_whitespace(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `handle_connection` [INFO] [stdout] --> src/server.rs:34:10 [INFO] [stdout] | [INFO] [stdout] 34 | async fn handle_connection(peer_map: PeerMap, raw_stream: TcpStream, addr: SocketAddr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `read_stdin` [INFO] [stdout] --> src/client.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | async fn read_stdin(tx: futures_channel::mpsc::UnboundedSender) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/server.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/server.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | stop_start_write.send("stop"); [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: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::timeout` [INFO] [stdout] --> src/server.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time::timeout; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::oneshot` [INFO] [stdout] --> src/server.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::sync::oneshot; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:50:28 [INFO] [stdout] | [INFO] [stdout] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `future`, `pin_mut` [INFO] [stdout] --> src/main.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use futures_util::{future, pin_mut, StreamExt}; [INFO] [stdout] | ^^^^^^ ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::task` [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use tokio::task; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::timeout` [INFO] [stdout] --> src/server.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use tokio::time::timeout; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::oneshot` [INFO] [stdout] --> src/server.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use tokio::sync::oneshot; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `writing_future` [INFO] [stdout] --> src/main.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | let writing_future = tokio::spawn(async move { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_writing_future` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> src/server.rs:60:27 [INFO] [stdout] | [INFO] [stdout] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recieved_stop` [INFO] [stdout] --> src/server.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:21:13 [INFO] [stdout] | [INFO] [stdout] 21 | write.unbounded_send(data); [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: type alias is never used: `Tx` [INFO] [stdout] --> src/server.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | type Tx = UnboundedSender; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias is never used: `PeerMap` [INFO] [stdout] --> src/server.rs:24:1 [INFO] [stdout] | [INFO] [stdout] 24 | type PeerMap = Arc>>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `type_of` [INFO] [stdout] --> src/server.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn type_of(_: T) -> &'static str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `remove_whitespace` [INFO] [stdout] --> src/server.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn remove_whitespace(s: &str) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `handle_connection` [INFO] [stdout] --> src/server.rs:34:10 [INFO] [stdout] | [INFO] [stdout] 34 | async fn handle_connection(peer_map: PeerMap, raw_stream: TcpStream, addr: SocketAddr) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `read_stdin` [INFO] [stdout] --> src/client.rs:49:10 [INFO] [stdout] | [INFO] [stdout] 49 | async fn read_stdin(tx: futures_channel::mpsc::UnboundedSender) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused attribute [INFO] [stdout] --> src/server.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_attributes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: crate-level attribute should be in the root module [INFO] [stdout] --> src/server.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(async_closure)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | stop_start_write.send("stop"); [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: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:58:17 [INFO] [stdout] | [INFO] [stdout] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/server.rs:50:28 [INFO] [stdout] | [INFO] [stdout] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg` [INFO] [stdout] --> src/server.rs:60:27 [INFO] [stdout] | [INFO] [stdout] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `recieved_stop` [INFO] [stdout] --> src/server.rs:49:13 [INFO] [stdout] | [INFO] [stdout] 49 | let mut recieved_stop = false; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `type_of` [INFO] [stdout] --> src/server.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn type_of(_: T) -> &'static str { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/server.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | stop_start_write.send("stop"); [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: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.56s [INFO] running `Command { std: "docker" "inspect" "bb9a4f09a5106f19c4664a0b9d61f63a1f918b0d452332faaeaa09259245598c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bb9a4f09a5106f19c4664a0b9d61f63a1f918b0d452332faaeaa09259245598c", kill_on_drop: false }` [INFO] [stdout] bb9a4f09a5106f19c4664a0b9d61f63a1f918b0d452332faaeaa09259245598c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 757f9c3d4e5e1da518204248de71250c33730e4066d2f82e913c06bb3282e094 [INFO] running `Command { std: "docker" "start" "-a" "757f9c3d4e5e1da518204248de71250c33730e4066d2f82e913c06bb3282e094", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `tokio::time::timeout` [INFO] [stderr] --> src/server.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use tokio::time::timeout; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::sync::oneshot` [INFO] [stderr] --> src/server.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use tokio::sync::oneshot; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | let mut recieved_stop = false; [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:50:28 [INFO] [stderr] | [INFO] [stderr] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `msg` [INFO] [stderr] --> src/server.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `recieved_stop` [INFO] [stderr] --> src/server.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | let mut recieved_stop = false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Tx` [INFO] [stderr] --> src/server.rs:23:1 [INFO] [stderr] | [INFO] [stderr] 23 | type Tx = UnboundedSender; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `PeerMap` [INFO] [stderr] --> src/server.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | type PeerMap = Arc>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `type_of` [INFO] [stderr] --> src/server.rs:26:4 [INFO] [stderr] | [INFO] [stderr] 26 | fn type_of(_: T) -> &'static str { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `remove_whitespace` [INFO] [stderr] --> src/server.rs:30:4 [INFO] [stderr] | [INFO] [stderr] 30 | fn remove_whitespace(s: &str) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `handle_connection` [INFO] [stderr] --> src/server.rs:34:10 [INFO] [stderr] | [INFO] [stderr] 34 | async fn handle_connection(peer_map: PeerMap, raw_stream: TcpStream, addr: SocketAddr) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_stdin` [INFO] [stderr] --> src/client.rs:49:10 [INFO] [stderr] | [INFO] [stderr] 49 | async fn read_stdin(tx: futures_channel::mpsc::UnboundedSender) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/server.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![feature(async_closure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: crate-level attribute should be in the root module [INFO] [stderr] --> src/server.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![feature(async_closure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/server.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | stop_start_write.send("stop"); [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: 16 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::time::timeout` [INFO] [stderr] --> src/server.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use tokio::time::timeout; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::sync::oneshot` [INFO] [stderr] --> src/server.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use tokio::sync::oneshot; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | let mut recieved_stop = false; [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:50:28 [INFO] [stderr] | [INFO] [stderr] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `msg` [INFO] [stderr] --> src/server.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `recieved_stop` [INFO] [stderr] --> src/server.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | let mut recieved_stop = false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `Tx` [INFO] [stderr] --> src/server.rs:23:1 [INFO] [stderr] | [INFO] [stderr] 23 | type Tx = UnboundedSender; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `PeerMap` [INFO] [stderr] --> src/server.rs:24:1 [INFO] [stderr] | [INFO] [stderr] 24 | type PeerMap = Arc>>; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `type_of` [INFO] [stderr] --> src/server.rs:26:4 [INFO] [stderr] | [INFO] [stderr] 26 | fn type_of(_: T) -> &'static str { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `remove_whitespace` [INFO] [stderr] --> src/server.rs:30:4 [INFO] [stderr] | [INFO] [stderr] 30 | fn remove_whitespace(s: &str) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `handle_connection` [INFO] [stderr] --> src/server.rs:34:10 [INFO] [stderr] | [INFO] [stderr] 34 | async fn handle_connection(peer_map: PeerMap, raw_stream: TcpStream, addr: SocketAddr) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_stdin` [INFO] [stderr] --> src/client.rs:49:10 [INFO] [stderr] | [INFO] [stderr] 49 | async fn read_stdin(tx: futures_channel::mpsc::UnboundedSender) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused attribute [INFO] [stderr] --> src/server.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![feature(async_closure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_attributes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: crate-level attribute should be in the root module [INFO] [stderr] --> src/server.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | #![feature(async_closure)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/server.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | stop_start_write.send("stop"); [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: 16 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::time::timeout` [INFO] [stderr] --> src/server.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use tokio::time::timeout; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::sync::oneshot` [INFO] [stderr] --> src/server.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use tokio::sync::oneshot; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:58:17 [INFO] [stderr] | [INFO] [stderr] 58 | let mut stop_start_read_inner = stop_start_read.clone(); [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: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | let mut recieved_stop = false; [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/server.rs:50:28 [INFO] [stderr] | [INFO] [stderr] 50 | let (stop_start_write, mut stop_start_read) = crossbeam_channel::unbounded(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `msg` [INFO] [stderr] --> src/server.rs:60:27 [INFO] [stderr] | [INFO] [stderr] 60 | if let Ok(msg) = stop_start_read_inner.recv_timeout(Duration::from_secs(5)) { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_msg` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `recieved_stop` [INFO] [stderr] --> src/server.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | let mut recieved_stop = false; [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_recieved_stop` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `type_of` [INFO] [stderr] --> src/server.rs:26:4 [INFO] [stderr] | [INFO] [stderr] 26 | fn type_of(_: T) -> &'static str { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/server.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | stop_start_write.send("stop"); [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: 9 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused imports: `future`, `pin_mut` [INFO] [stderr] --> src/main.rs:3:20 [INFO] [stderr] | [INFO] [stderr] 3 | use futures_util::{future, pin_mut, StreamExt}; [INFO] [stderr] | ^^^^^^ ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::task` [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use tokio::task; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `writing_future` [INFO] [stderr] --> src/main.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | let writing_future = tokio::spawn(async move { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_writing_future` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:21:13 [INFO] [stderr] | [INFO] [stderr] 21 | write.unbounded_send(data); [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: 4 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/tokio_timer_example-9a7e460c097e55c1) [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/client-5f770f8dcf9ced54) [INFO] [stdout] running 0 tests [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/main-3eb6cd1eac013243) [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/server-5071541d3efc1663) [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 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] [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] [stderr] Doc-tests tokio_timer_example [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] [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" "757f9c3d4e5e1da518204248de71250c33730e4066d2f82e913c06bb3282e094", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "757f9c3d4e5e1da518204248de71250c33730e4066d2f82e913c06bb3282e094", kill_on_drop: false }` [INFO] [stdout] 757f9c3d4e5e1da518204248de71250c33730e4066d2f82e913c06bb3282e094