[INFO] fetching crate crack 0.1.0... [INFO] testing crack-0.1.0 against try#ecabaf78506b7a4668d42dc20268c086b93f0fad for pr-87041 [INFO] extracting crate crack 0.1.0 into /workspace/builds/worker-5/source [INFO] validating manifest of crates.io crate crack 0.1.0 on toolchain ecabaf78506b7a4668d42dc20268c086b93f0fad [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate crack 0.1.0 [INFO] finished tweaking crates.io crate crack 0.1.0 [INFO] tweaked toml for crates.io crate crack 0.1.0 written to /workspace/builds/worker-5/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded env_logger v0.4.3 [INFO] [stderr] Downloaded error-chain v0.9.0 [INFO] [stderr] Downloaded quickcheck v0.2.27 [INFO] [stderr] Downloaded crdts v1.3.0 [INFO] [stderr] Downloaded bincode v0.6.1 [INFO] [stderr] Downloaded uuid v0.4.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4dec7df9efefa3029bdb293aa4c99ee6ff4405d4a066edb00a152d731b537ad0 [INFO] running `Command { std: "docker" "start" "-a" "4dec7df9efefa3029bdb293aa4c99ee6ff4405d4a066edb00a152d731b537ad0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4dec7df9efefa3029bdb293aa4c99ee6ff4405d4a066edb00a152d731b537ad0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4dec7df9efefa3029bdb293aa4c99ee6ff4405d4a066edb00a152d731b537ad0", kill_on_drop: false }` [INFO] [stdout] 4dec7df9efefa3029bdb293aa4c99ee6ff4405d4a066edb00a152d731b537ad0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 29e7ba4b22416968926958a976b37287a074c1b6b2616d91bad33da8633d4b97 [INFO] running `Command { std: "docker" "start" "-a" "29e7ba4b22416968926958a976b37287a074c1b6b2616d91bad33da8633d4b97", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling futures v0.1.31 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling cc v1.0.69 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling ucd-util v0.1.8 [INFO] [stderr] Compiling gimli v0.24.0 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Compiling utf8-ranges v1.0.4 [INFO] [stderr] Compiling rustc-demangle v0.1.20 [INFO] [stderr] Compiling serde v0.9.15 [INFO] [stderr] Compiling itoa v0.3.4 [INFO] [stderr] Compiling scoped-tls v0.1.2 [INFO] [stderr] Compiling rustc-serialize v0.3.24 [INFO] [stderr] Compiling serde v0.8.23 [INFO] [stderr] Compiling dtoa v0.4.8 [INFO] [stderr] Compiling crossbeam v0.2.12 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling aho-corasick v0.6.10 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling object v0.25.3 [INFO] [stderr] Compiling time v0.1.44 [INFO] [stderr] Compiling net2 v0.2.37 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling regex-syntax v0.5.6 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling bincode v0.9.2 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Compiling crdts v1.3.0 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling miniz_oxide v0.4.4 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling tokio-sync v0.1.8 [INFO] [stderr] Compiling backtrace v0.3.60 [INFO] [stderr] Compiling serde_codegen_internals v0.14.2 [INFO] [stderr] Compiling tokio-codec v0.1.2 [INFO] [stderr] Compiling tokio-executor v0.1.10 [INFO] [stderr] Compiling crossbeam-queue v0.2.3 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling tokio-current-thread v0.1.7 [INFO] [stderr] Compiling tokio-timer v0.2.13 [INFO] [stderr] Compiling crossbeam-deque v0.7.3 [INFO] [stderr] Compiling uuid v0.4.0 [INFO] [stderr] Compiling addr2line v0.15.2 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling bincode v0.6.1 [INFO] [stderr] Compiling serde_json v0.9.10 [INFO] [stderr] Compiling tokio-threadpool v0.1.18 [INFO] [stderr] Compiling tokio-tcp v0.1.4 [INFO] [stderr] Compiling tokio-uds v0.2.7 [INFO] [stderr] Compiling tokio-udp v0.1.6 [INFO] [stderr] Compiling serde_derive v0.9.15 [INFO] [stderr] Compiling tokio-fs v0.1.7 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling env_logger v0.4.3 [INFO] [stderr] Compiling tokio-core v0.1.18 [INFO] [stderr] Compiling error-chain v0.9.0 [INFO] [stderr] Compiling crack v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/transport.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/transport.rs:160:33 [INFO] [stdout] | [INFO] [stdout] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert` [INFO] [stdout] --> src/transport.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/transport.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/transport.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/transport.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/transport.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/transport.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::marker::PhantomData` [INFO] [stdout] --> src/transport.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::marker::PhantomData; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Handle` [INFO] [stdout] --> src/transport.rs:17:33 [INFO] [stdout] | [INFO] [stdout] 17 | use tokio_core::reactor::{Core, Handle}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DecodingResult` [INFO] [stdout] --> src/transport.rs:20:48 [INFO] [stdout] | [INFO] [stdout] 20 | use bincode::rustc_serialize::{encode, decode, DecodingResult}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json` [INFO] [stdout] --> src/transport.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use serde_json; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufMut`, `BytesMut` [INFO] [stdout] --> src/transport.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Decoder`, `Encoder` [INFO] [stdout] --> src/transport.rs:23:23 [INFO] [stdout] | [INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio_io::AsyncRead` [INFO] [stdout] --> src/transport.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use tokio_io::AsyncRead; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `future`, `sink` [INFO] [stdout] --> src/transport.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | use futures::{future, sink, Sink, Stream, Future, IntoFuture}; [INFO] [stdout] | ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SplitSink`, `SplitStream`, `self` [INFO] [stdout] --> src/transport.rs:26:23 [INFO] [stdout] | [INFO] [stdout] 26 | use futures::stream::{self, SplitSink, SplitStream}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/transport.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `from_binary`, `to_binary` [INFO] [stdout] --> src/transport.rs:29:6 [INFO] [stdout] | [INFO] [stdout] 29 | use {to_binary, from_binary}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `kernel::Peer` [INFO] [stdout] --> src/transport.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use kernel::Peer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/kernel.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | fn ping(&self, Peer) -> Result<(), ()>; [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/kernel.rs:14:21 [INFO] [stdout] | [INFO] [stdout] 14 | fn purge(&self, Peer); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:62:48 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:65:41 [INFO] [stdout] | [INFO] [stdout] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | pub invariants: Vec bool>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&A) -> bool` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:73:49 [INFO] [stdout] | [INFO] [stdout] 73 | pub processes: Vec, Box A>)>>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `crc16_arr`, `crc16` [INFO] [stdout] --> src/lib.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | use crc16::{crc16_arr, crc16}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated module `tokio_io::codec::length_delimited`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:23:41 [INFO] [stdout] | [INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedRead`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:108:28 [INFO] [stdout] | [INFO] [stdout] 108 | let deframed = length_delimited::FramedRead::new(socket); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedWrite`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let framed = length_delimited::FramedWrite::new(socket); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `futures::sync::mpsc::UnboundedSender::::send`: renamed to `unbounded_send` [INFO] [stdout] --> src/transport.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | tx.send(msg).unwrap(); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/kernel.rs:38:20 [INFO] [stdout] | [INFO] [stdout] 38 | fn ping(&self, peer: Peer) -> Result<(), ()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/kernel.rs:42:21 [INFO] [stdout] | [INFO] [stdout] 42 | fn purge(&self, peer: Peer) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `note` [INFO] [stdout] --> src/model.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 84 | let (ref note, ref f) = self.processes[choice][*index]; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_note` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `connections` [INFO] [stdout] --> src/transport.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | connections: Arc>>>, [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: `new` [INFO] [stdout] --> src/transport.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn new(addr: SocketAddr) -> TCPTransport { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `recv` [INFO] [stdout] --> src/transport.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn recv(addr: SocketAddr) -> Arc> [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `send` [INFO] [stdout] --> src/transport.rs:130:4 [INFO] [stdout] | [INFO] [stdout] 130 | fn send(addr: SocketAddr) -> mpsc::UnboundedSender [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Connected` [INFO] [stdout] --> src/kernel.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | Connected, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Disconnected` [INFO] [stdout] --> src/kernel.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | Disconnected, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `state` [INFO] [stdout] --> src/kernel.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | state: PeerState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `addr` [INFO] [stdout] --> src/kernel.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | addr: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `peers` [INFO] [stdout] --> src/kernel.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | peers: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `cron` [INFO] [stdout] --> src/kernel.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | fn cron(&self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/model.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | fn new(inner: &Vec>) -> Runs { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Process` [INFO] [stdout] --> src/model.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/model.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `System` [INFO] [stdout] --> src/model.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct System { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `test` [INFO] [stdout] --> src/model.rs:77:8 [INFO] [stdout] | [INFO] [stdout] 77 | fn test(&self) -> Result<(), String> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fact` [INFO] [stdout] --> src/model.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn fact(n: usize) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:109:50 [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| panic!(e)) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| panic!("{}", e)) [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| std::panic::panic_any(e)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:110:65 [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!(e))); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!("{}", e))); [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| std::panic::panic_any(e))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:145:37 [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| panic!(e)) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| panic!("{}", e)) [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| std::panic::panic_any(e)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `futures::stream::MapErr` in tuple element 0 that must be used [INFO] [stdout] --> src/transport.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | core.run(client).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: streams do nothing unless polled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 55 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 13.46s [INFO] running `Command { std: "docker" "inspect" "29e7ba4b22416968926958a976b37287a074c1b6b2616d91bad33da8633d4b97", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "29e7ba4b22416968926958a976b37287a074c1b6b2616d91bad33da8633d4b97", kill_on_drop: false }` [INFO] [stdout] 29e7ba4b22416968926958a976b37287a074c1b6b2616d91bad33da8633d4b97 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a149f474857a2d91f708a4b4b74e5123f273db947976108da7fa637c43b07250 [INFO] running `Command { std: "docker" "start" "-a" "a149f474857a2d91f708a4b4b74e5123f273db947976108da7fa637c43b07250", kill_on_drop: false }` [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling winapi v0.2.8 [INFO] [stderr] Compiling regex-syntax v0.3.9 [INFO] [stderr] Compiling utf8-ranges v0.1.3 [INFO] [stderr] Compiling memchr v0.1.11 [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/transport.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/transport.rs:160:33 [INFO] [stdout] | [INFO] [stdout] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert` [INFO] [stdout] --> src/transport.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/transport.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/transport.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/transport.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/transport.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/transport.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::marker::PhantomData` [INFO] [stdout] --> src/transport.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::marker::PhantomData; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Handle` [INFO] [stdout] --> src/transport.rs:17:33 [INFO] [stdout] | [INFO] [stdout] 17 | use tokio_core::reactor::{Core, Handle}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DecodingResult` [INFO] [stdout] --> src/transport.rs:20:48 [INFO] [stdout] | [INFO] [stdout] 20 | use bincode::rustc_serialize::{encode, decode, DecodingResult}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json` [INFO] [stdout] --> src/transport.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use serde_json; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufMut`, `BytesMut` [INFO] [stdout] --> src/transport.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Decoder`, `Encoder` [INFO] [stdout] --> src/transport.rs:23:23 [INFO] [stdout] | [INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio_io::AsyncRead` [INFO] [stdout] --> src/transport.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use tokio_io::AsyncRead; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `future`, `sink` [INFO] [stdout] --> src/transport.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | use futures::{future, sink, Sink, Stream, Future, IntoFuture}; [INFO] [stdout] | ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SplitSink`, `SplitStream`, `self` [INFO] [stdout] --> src/transport.rs:26:23 [INFO] [stdout] | [INFO] [stdout] 26 | use futures::stream::{self, SplitSink, SplitStream}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/transport.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `from_binary`, `to_binary` [INFO] [stdout] --> src/transport.rs:29:6 [INFO] [stdout] | [INFO] [stdout] 29 | use {to_binary, from_binary}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `kernel::Peer` [INFO] [stdout] --> src/transport.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use kernel::Peer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/kernel.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | fn ping(&self, Peer) -> Result<(), ()>; [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/kernel.rs:14:21 [INFO] [stdout] | [INFO] [stdout] 14 | fn purge(&self, Peer); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:62:48 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:65:41 [INFO] [stdout] | [INFO] [stdout] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | pub invariants: Vec bool>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&A) -> bool` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:73:49 [INFO] [stdout] | [INFO] [stdout] 73 | pub processes: Vec, Box A>)>>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `crc16_arr`, `crc16` [INFO] [stdout] --> src/lib.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | use crc16::{crc16_arr, crc16}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated module `tokio_io::codec::length_delimited`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:23:41 [INFO] [stdout] | [INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedRead`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:108:28 [INFO] [stdout] | [INFO] [stdout] 108 | let deframed = length_delimited::FramedRead::new(socket); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedWrite`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let framed = length_delimited::FramedWrite::new(socket); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `futures::sync::mpsc::UnboundedSender::::send`: renamed to `unbounded_send` [INFO] [stdout] --> src/transport.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | tx.send(msg).unwrap(); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/kernel.rs:38:20 [INFO] [stdout] | [INFO] [stdout] 38 | fn ping(&self, peer: Peer) -> Result<(), ()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/kernel.rs:42:21 [INFO] [stdout] | [INFO] [stdout] 42 | fn purge(&self, peer: Peer) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `note` [INFO] [stdout] --> src/model.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 84 | let (ref note, ref f) = self.processes[choice][*index]; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_note` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `connections` [INFO] [stdout] --> src/transport.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | connections: Arc>>>, [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: `new` [INFO] [stdout] --> src/transport.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn new(addr: SocketAddr) -> TCPTransport { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `recv` [INFO] [stdout] --> src/transport.rs:91:4 [INFO] [stdout] | [INFO] [stdout] 91 | fn recv(addr: SocketAddr) -> Arc> [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `send` [INFO] [stdout] --> src/transport.rs:130:4 [INFO] [stdout] | [INFO] [stdout] 130 | fn send(addr: SocketAddr) -> mpsc::UnboundedSender [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Connected` [INFO] [stdout] --> src/kernel.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | Connected, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Disconnected` [INFO] [stdout] --> src/kernel.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | Disconnected, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `state` [INFO] [stdout] --> src/kernel.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | state: PeerState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `addr` [INFO] [stdout] --> src/kernel.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | addr: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `peers` [INFO] [stdout] --> src/kernel.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | peers: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `cron` [INFO] [stdout] --> src/kernel.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | fn cron(&self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/model.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | fn new(inner: &Vec>) -> Runs { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Process` [INFO] [stdout] --> src/model.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/model.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `System` [INFO] [stdout] --> src/model.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct System { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `test` [INFO] [stdout] --> src/model.rs:77:8 [INFO] [stdout] | [INFO] [stdout] 77 | fn test(&self) -> Result<(), String> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fact` [INFO] [stdout] --> src/model.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn fact(n: usize) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:109:50 [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| panic!(e)) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| panic!("{}", e)) [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| std::panic::panic_any(e)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:110:65 [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!(e))); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!("{}", e))); [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| std::panic::panic_any(e))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:145:37 [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| panic!(e)) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| panic!("{}", e)) [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| std::panic::panic_any(e)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `futures::stream::MapErr` in tuple element 0 that must be used [INFO] [stdout] --> src/transport.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | core.run(client).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: streams do nothing unless polled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 55 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling aho-corasick v0.5.3 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling thread-id v2.0.0 [INFO] [stderr] Compiling thread_local v0.2.7 [INFO] [stderr] Compiling regex v0.1.80 [INFO] [stderr] Compiling env_logger v0.3.5 [INFO] [stderr] Compiling quickcheck v0.2.27 [INFO] [stderr] Compiling crack v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/lib.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/transport.rs:160:17 [INFO] [stdout] | [INFO] [stdout] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stdout] --> src/transport.rs:160:33 [INFO] [stdout] | [INFO] [stdout] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert` [INFO] [stdout] --> src/transport.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/transport.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/transport.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/transport.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/transport.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/transport.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::marker::PhantomData` [INFO] [stdout] --> src/transport.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::marker::PhantomData; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Handle` [INFO] [stdout] --> src/transport.rs:17:33 [INFO] [stdout] | [INFO] [stdout] 17 | use tokio_core::reactor::{Core, Handle}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DecodingResult` [INFO] [stdout] --> src/transport.rs:20:48 [INFO] [stdout] | [INFO] [stdout] 20 | use bincode::rustc_serialize::{encode, decode, DecodingResult}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde_json` [INFO] [stdout] --> src/transport.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use serde_json; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufMut`, `BytesMut` [INFO] [stdout] --> src/transport.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | use bytes::{BufMut, BytesMut}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Decoder`, `Encoder` [INFO] [stdout] --> src/transport.rs:23:23 [INFO] [stdout] | [INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio_io::AsyncRead` [INFO] [stdout] --> src/transport.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use tokio_io::AsyncRead; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `future`, `sink` [INFO] [stdout] --> src/transport.rs:25:15 [INFO] [stdout] | [INFO] [stdout] 25 | use futures::{future, sink, Sink, Stream, Future, IntoFuture}; [INFO] [stdout] | ^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SplitSink`, `SplitStream`, `self` [INFO] [stdout] --> src/transport.rs:26:23 [INFO] [stdout] | [INFO] [stdout] 26 | use futures::stream::{self, SplitSink, SplitStream}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/transport.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `from_binary`, `to_binary` [INFO] [stdout] --> src/transport.rs:29:6 [INFO] [stdout] | [INFO] [stdout] 29 | use {to_binary, from_binary}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `kernel::Peer` [INFO] [stdout] --> src/transport.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use kernel::Peer; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/kernel.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | fn ping(&self, Peer) -> Result<(), ()>; [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/kernel.rs:14:21 [INFO] [stdout] | [INFO] [stdout] 14 | fn purge(&self, Peer); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:62:48 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:65:41 [INFO] [stdout] | [INFO] [stdout] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | pub invariants: Vec bool>>, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&A) -> bool` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/model.rs:73:49 [INFO] [stdout] | [INFO] [stdout] 73 | pub processes: Vec, Box A>)>>, [INFO] [stdout] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `crc16_arr`, `crc16` [INFO] [stdout] --> src/lib.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | use crc16::{crc16_arr, crc16}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated module `tokio_io::codec::length_delimited`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:23:41 [INFO] [stdout] | [INFO] [stdout] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedRead`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:108:28 [INFO] [stdout] | [INFO] [stdout] 108 | let deframed = length_delimited::FramedRead::new(socket); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedWrite`: Moved to tokio-codec [INFO] [stdout] --> src/transport.rs:143:26 [INFO] [stdout] | [INFO] [stdout] 143 | let framed = length_delimited::FramedWrite::new(socket); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep` [INFO] [stdout] --> src/transport.rs:172:9 [INFO] [stdout] | [INFO] [stdout] 172 | thread::sleep_ms(300); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `futures::sync::mpsc::UnboundedSender::::send`: renamed to `unbounded_send` [INFO] [stdout] --> src/transport.rs:61:24 [INFO] [stdout] | [INFO] [stdout] 61 | tx.send(msg).unwrap(); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/transport.rs:180:13 [INFO] [stdout] | [INFO] [stdout] 180 | for i in 1..4 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/kernel.rs:38:20 [INFO] [stdout] | [INFO] [stdout] 38 | fn ping(&self, peer: Peer) -> Result<(), ()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/kernel.rs:42:21 [INFO] [stdout] | [INFO] [stdout] 42 | fn purge(&self, peer: Peer) {} [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `note` [INFO] [stdout] --> src/model.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 84 | let (ref note, ref f) = self.processes[choice][*index]; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_note` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `connections` [INFO] [stdout] --> src/transport.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | connections: Arc>>>, [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: `new` [INFO] [stdout] --> src/transport.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn new(addr: SocketAddr) -> TCPTransport { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Connected` [INFO] [stdout] --> src/kernel.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | Connected, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Disconnected` [INFO] [stdout] --> src/kernel.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | Disconnected, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `state` [INFO] [stdout] --> src/kernel.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | state: PeerState, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `addr` [INFO] [stdout] --> src/kernel.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | addr: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `peers` [INFO] [stdout] --> src/kernel.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | peers: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `cron` [INFO] [stdout] --> src/kernel.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | fn cron(&self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Inner` [INFO] [stdout] --> src/fsm.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | struct Inner { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fact` [INFO] [stdout] --> src/model.rs:101:4 [INFO] [stdout] | [INFO] [stdout] 101 | fn fact(n: usize) -> usize { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:109:50 [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| panic!(e)) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| panic!("{}", e)) [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 109 | let rx = deframed.map_err(|e| std::panic::panic_any(e)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:110:65 [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!(e))); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!("{}", e))); [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 110 | .and_then(|buf| decode(&buf).map_err(|e| std::panic::panic_any(e))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/transport.rs:145:37 [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| panic!(e)) [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| panic!("{}", e)) [INFO] [stdout] | ^^^^^ [INFO] [stdout] help: or use std::panic::panic_any instead [INFO] [stdout] | [INFO] [stdout] 145 | .map_err(|e| std::panic::panic_any(e)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `futures::stream::MapErr` in tuple element 0 that must be used [INFO] [stdout] --> src/transport.rs:151:9 [INFO] [stdout] | [INFO] [stdout] 151 | core.run(client).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: streams do nothing unless polled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 6.89s [INFO] running `Command { std: "docker" "inspect" "a149f474857a2d91f708a4b4b74e5123f273db947976108da7fa637c43b07250", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a149f474857a2d91f708a4b4b74e5123f273db947976108da7fa637c43b07250", kill_on_drop: false }` [INFO] [stdout] a149f474857a2d91f708a4b4b74e5123f273db947976108da7fa637c43b07250 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+ecabaf78506b7a4668d42dc20268c086b93f0fad" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 38e3af8046d6db33d792e3987a619e817201dd009ef96ad19fd8aabadae94be2 [INFO] running `Command { std: "docker" "start" "-a" "38e3af8046d6db33d792e3987a619e817201dd009ef96ad19fd8aabadae94be2", kill_on_drop: false }` [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/transport.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/transport.rs:160:33 [INFO] [stderr] | [INFO] [stderr] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::convert` [INFO] [stderr] --> src/transport.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::convert; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/transport.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/transport.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter` [INFO] [stderr] --> src/transport.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::iter; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/transport.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str` [INFO] [stderr] --> src/transport.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::str; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::marker::PhantomData` [INFO] [stderr] --> src/transport.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::marker::PhantomData; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Handle` [INFO] [stderr] --> src/transport.rs:17:33 [INFO] [stderr] | [INFO] [stderr] 17 | use tokio_core::reactor::{Core, Handle}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `DecodingResult` [INFO] [stderr] --> src/transport.rs:20:48 [INFO] [stderr] | [INFO] [stderr] 20 | use bincode::rustc_serialize::{encode, decode, DecodingResult}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json` [INFO] [stderr] --> src/transport.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use serde_json; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BufMut`, `BytesMut` [INFO] [stderr] --> src/transport.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | use bytes::{BufMut, BytesMut}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Decoder`, `Encoder` [INFO] [stderr] --> src/transport.rs:23:23 [INFO] [stderr] | [INFO] [stderr] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio_io::AsyncRead` [INFO] [stderr] --> src/transport.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | use tokio_io::AsyncRead; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `future`, `sink` [INFO] [stderr] --> src/transport.rs:25:15 [INFO] [stderr] | [INFO] [stderr] 25 | use futures::{future, sink, Sink, Stream, Future, IntoFuture}; [INFO] [stderr] | ^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SplitSink`, `SplitStream`, `self` [INFO] [stderr] --> src/transport.rs:26:23 [INFO] [stderr] | [INFO] [stderr] 26 | use futures::stream::{self, SplitSink, SplitStream}; [INFO] [stderr] | ^^^^ ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `uuid::Uuid` [INFO] [stderr] --> src/transport.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use uuid::Uuid; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `from_binary`, `to_binary` [INFO] [stderr] --> src/transport.rs:29:6 [INFO] [stderr] | [INFO] [stderr] 29 | use {to_binary, from_binary}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kernel::Peer` [INFO] [stderr] --> src/transport.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | use kernel::Peer; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/kernel.rs:13:20 [INFO] [stderr] | [INFO] [stderr] 13 | fn ping(&self, Peer) -> Result<(), ()>; [INFO] [stderr] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/kernel.rs:14:21 [INFO] [stderr] | [INFO] [stderr] 14 | fn purge(&self, Peer); [INFO] [stderr] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:62:48 [INFO] [stderr] | [INFO] [stderr] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:65:41 [INFO] [stderr] | [INFO] [stderr] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:72:29 [INFO] [stderr] | [INFO] [stderr] 72 | pub invariants: Vec bool>>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&A) -> bool` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:73:49 [INFO] [stderr] | [INFO] [stderr] 73 | pub processes: Vec, Box A>)>>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: unused imports: `crc16_arr`, `crc16` [INFO] [stderr] --> src/lib.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | use crc16::{crc16_arr, crc16}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated module `tokio_io::codec::length_delimited`: Moved to tokio-codec [INFO] [stderr] --> src/transport.rs:23:41 [INFO] [stderr] | [INFO] [stderr] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedRead`: Moved to tokio-codec [INFO] [stderr] --> src/transport.rs:108:28 [INFO] [stderr] | [INFO] [stderr] 108 | let deframed = length_delimited::FramedRead::new(socket); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedWrite`: Moved to tokio-codec [INFO] [stderr] --> src/transport.rs:143:26 [INFO] [stderr] | [INFO] [stderr] 143 | let framed = length_delimited::FramedWrite::new(socket); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `futures::sync::mpsc::UnboundedSender::::send`: renamed to `unbounded_send` [INFO] [stderr] --> src/transport.rs:61:24 [INFO] [stderr] | [INFO] [stderr] 61 | tx.send(msg).unwrap(); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stdout] [INFO] [stderr] warning: unused variable: `peer` [INFO] [stdout] running 5 tests [INFO] [stderr] --> src/kernel.rs:38:20 [INFO] [stdout] test fsm::tests::it_works ... ignored [INFO] [stderr] | [INFO] [stdout] test crc16::test_crc16 ... ok [INFO] [stderr] 38 | fn ping(&self, peer: Peer) -> Result<(), ()> { [INFO] [stdout] test model::tests::it_works ... ok [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] test kernel::tests::it_works ... ok [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `peer` [INFO] [stderr] --> src/kernel.rs:42:21 [INFO] [stderr] | [INFO] [stderr] 42 | fn purge(&self, peer: Peer) {} [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `note` [INFO] [stderr] --> src/model.rs:84:26 [INFO] [stderr] | [INFO] [stderr] 84 | let (ref note, ref f) = self.processes[choice][*index]; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_note` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `connections` [INFO] [stderr] --> src/transport.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | connections: Arc>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/transport.rs:48:12 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn new(addr: SocketAddr) -> TCPTransport { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `recv` [INFO] [stderr] --> src/transport.rs:91:4 [INFO] [stderr] | [INFO] [stderr] 91 | fn recv(addr: SocketAddr) -> Arc> [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `send` [INFO] [stderr] --> src/transport.rs:130:4 [INFO] [stderr] | [INFO] [stderr] 130 | fn send(addr: SocketAddr) -> mpsc::UnboundedSender [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Connected` [INFO] [stderr] --> src/kernel.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | Connected, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Disconnected` [INFO] [stderr] --> src/kernel.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | Disconnected, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `state` [INFO] [stderr] --> src/kernel.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | state: PeerState, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `addr` [INFO] [stderr] --> src/kernel.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | addr: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `peers` [INFO] [stderr] --> src/kernel.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | peers: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `cron` [INFO] [stderr] --> src/kernel.rs:28:8 [INFO] [stderr] | [INFO] [stderr] 28 | fn cron(&self) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/model.rs:14:8 [INFO] [stderr] | [INFO] [stderr] 14 | fn new(inner: &Vec>) -> Runs { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Process` [INFO] [stderr] --> src/model.rs:62:12 [INFO] [stderr] | [INFO] [stderr] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/model.rs:65:8 [INFO] [stderr] | [INFO] [stderr] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `System` [INFO] [stderr] --> src/model.rs:70:12 [INFO] [stderr] | [INFO] [stderr] 70 | pub struct System { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `test` [INFO] [stderr] --> src/model.rs:77:8 [INFO] [stderr] | [INFO] [stderr] 77 | fn test(&self) -> Result<(), String> { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `fact` [INFO] [stderr] --> src/model.rs:101:4 [INFO] [stderr] | [INFO] [stderr] 101 | fn fact(n: usize) -> usize { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/transport.rs:109:50 [INFO] [stderr] | [INFO] [stderr] 109 | let rx = deframed.map_err(|e| panic!(e)) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 109 | let rx = deframed.map_err(|e| panic!("{}", e)) [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 109 | let rx = deframed.map_err(|e| std::panic::panic_any(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/transport.rs:110:65 [INFO] [stderr] | [INFO] [stderr] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!(e))); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!("{}", e))); [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 110 | .and_then(|buf| decode(&buf).map_err(|e| std::panic::panic_any(e))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/transport.rs:145:37 [INFO] [stderr] | [INFO] [stderr] 145 | .map_err(|e| panic!(e)) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 145 | .map_err(|e| panic!("{}", e)) [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 145 | .map_err(|e| std::panic::panic_any(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `futures::stream::MapErr` in tuple element 0 that must be used [INFO] [stderr] --> src/transport.rs:151:9 [INFO] [stderr] | [INFO] [stderr] 151 | core.run(client).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: streams do nothing unless polled [INFO] [stderr] [INFO] [stderr] warning: 55 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:2:1 [INFO] [stderr] | [INFO] [stderr] 2 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcEncodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/transport.rs:160:17 [INFO] [stderr] | [INFO] [stderr] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `RustcDecodable`: rustc-serialize is deprecated and no longer supported [INFO] [stderr] --> src/transport.rs:160:33 [INFO] [stderr] | [INFO] [stderr] 160 | #[derive(Debug, RustcEncodable, RustcDecodable)] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::convert` [INFO] [stderr] --> src/transport.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::convert; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/transport.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/transport.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter` [INFO] [stderr] --> src/transport.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::iter; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/transport.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str` [INFO] [stderr] --> src/transport.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::str; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::marker::PhantomData` [INFO] [stderr] --> src/transport.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::marker::PhantomData; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Handle` [INFO] [stderr] --> src/transport.rs:17:33 [INFO] [stderr] | [INFO] [stderr] 17 | use tokio_core::reactor::{Core, Handle}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `DecodingResult` [INFO] [stderr] --> src/transport.rs:20:48 [INFO] [stderr] | [INFO] [stderr] 20 | use bincode::rustc_serialize::{encode, decode, DecodingResult}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde_json` [INFO] [stderr] --> src/transport.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use serde_json; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BufMut`, `BytesMut` [INFO] [stderr] --> src/transport.rs:22:13 [INFO] [stderr] | [INFO] [stderr] 22 | use bytes::{BufMut, BytesMut}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Decoder`, `Encoder` [INFO] [stderr] --> src/transport.rs:23:23 [INFO] [stderr] | [INFO] [stderr] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio_io::AsyncRead` [INFO] [stderr] --> src/transport.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | use tokio_io::AsyncRead; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `future`, `sink` [INFO] [stderr] --> src/transport.rs:25:15 [INFO] [stderr] | [INFO] [stderr] 25 | use futures::{future, sink, Sink, Stream, Future, IntoFuture}; [INFO] [stderr] | ^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SplitSink`, `SplitStream`, `self` [INFO] [stderr] --> src/transport.rs:26:23 [INFO] [stderr] | [INFO] [stderr] 26 | use futures::stream::{self, SplitSink, SplitStream}; [INFO] [stderr] | ^^^^ ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `uuid::Uuid` [INFO] [stderr] --> src/transport.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use uuid::Uuid; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `from_binary`, `to_binary` [INFO] [stderr] --> src/transport.rs:29:6 [INFO] [stderr] | [INFO] [stderr] 29 | use {to_binary, from_binary}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `kernel::Peer` [INFO] [stderr] --> src/transport.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | use kernel::Peer; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/kernel.rs:13:20 [INFO] [stderr] | [INFO] [stderr] 13 | fn ping(&self, Peer) -> Result<(), ()>; [INFO] [stderr] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stderr] --> src/kernel.rs:14:21 [INFO] [stderr] | [INFO] [stderr] 14 | fn purge(&self, Peer); [INFO] [stderr] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: Peer` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stderr] = note: for more information, see issue #41686 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:62:48 [INFO] [stderr] | [INFO] [stderr] 62 | pub struct Process(Vec<(Option, Box A>)>); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:65:41 [INFO] [stderr] | [INFO] [stderr] 65 | fn new<'a>(steps: Vec<(&'a str, Box A>)>) -> Process { [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:72:29 [INFO] [stderr] | [INFO] [stderr] 72 | pub invariants: Vec bool>>, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&A) -> bool` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/model.rs:73:49 [INFO] [stderr] | [INFO] [stderr] 73 | pub processes: Vec, Box A>)>>, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn Fn(A) -> A` [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: unused imports: `crc16_arr`, `crc16` [INFO] [stderr] --> src/lib.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | use crc16::{crc16_arr, crc16}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated module `tokio_io::codec::length_delimited`: Moved to tokio-codec [INFO] [stderr] --> src/transport.rs:23:41 [INFO] [stderr] | [INFO] [stderr] 23 | use tokio_io::codec::{Encoder, Decoder, length_delimited}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedRead`: Moved to tokio-codec [INFO] [stderr] --> src/transport.rs:108:28 [INFO] [stderr] | [INFO] [stderr] 108 | let deframed = length_delimited::FramedRead::new(socket); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `tokio_io::codec::length_delimited::FramedWrite`: Moved to tokio-codec [INFO] [stderr] --> src/transport.rs:143:26 [INFO] [stderr] | [INFO] [stderr] 143 | let framed = length_delimited::FramedWrite::new(socket); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::thread::sleep_ms`: replaced by `std::thread::sleep` [INFO] [stderr] --> src/transport.rs:172:9 [INFO] [stderr] | [INFO] [stderr] 172 | thread::sleep_ms(300); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `futures::sync::mpsc::UnboundedSender::::send`: renamed to `unbounded_send` [INFO] [stderr] --> src/transport.rs:61:24 [INFO] [stderr] | [INFO] [stderr] 61 | tx.send(msg).unwrap(); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/transport.rs:180:13 [INFO] [stderr] | [INFO] [stderr] 180 | for i in 1..4 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `peer` [INFO] [stderr] --> src/kernel.rs:38:20 [INFO] [stderr] | [INFO] [stderr] 38 | fn ping(&self, peer: Peer) -> Result<(), ()> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `peer` [INFO] [stderr] --> src/kernel.rs:42:21 [INFO] [stderr] | [INFO] [stderr] 42 | fn purge(&self, peer: Peer) {} [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `note` [INFO] [stderr] --> src/model.rs:84:26 [INFO] [stderr] | [INFO] [stderr] 84 | let (ref note, ref f) = self.processes[choice][*index]; [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_note` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `connections` [INFO] [stderr] --> src/transport.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | connections: Arc>>>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/transport.rs:48:12 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn new(addr: SocketAddr) -> TCPTransport { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Connected` [INFO] [stderr] --> src/kernel.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | Connected, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Disconnected` [INFO] [stderr] --> src/kernel.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | Disconnected, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `state` [INFO] [stderr] --> src/kernel.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | state: PeerState, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `addr` [INFO] [stderr] --> src/kernel.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | addr: String, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `peers` [INFO] [stderr] --> src/kernel.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | peers: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `cron` [INFO] [stderr] --> src/kernel.rs:28:8 [INFO] [stderr] | [INFO] [stderr] 28 | fn cron(&self) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Inner` [INFO] [stderr] --> src/fsm.rs:39:16 [INFO] [stderr] | [INFO] [stderr] 39 | struct Inner { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `fact` [INFO] [stderr] --> src/model.rs:101:4 [INFO] [stderr] | [INFO] [stderr] 101 | fn fact(n: usize) -> usize { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/transport.rs:109:50 [INFO] [stderr] | [INFO] [stderr] 109 | let rx = deframed.map_err(|e| panic!(e)) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 109 | let rx = deframed.map_err(|e| panic!("{}", e)) [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 109 | let rx = deframed.map_err(|e| std::panic::panic_any(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/transport.rs:110:65 [INFO] [stderr] | [INFO] [stderr] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!(e))); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 110 | .and_then(|buf| decode(&buf).map_err(|e| panic!("{}", e))); [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 110 | .and_then(|buf| decode(&buf).map_err(|e| std::panic::panic_any(e))); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/transport.rs:145:37 [INFO] [stderr] | [INFO] [stderr] 145 | .map_err(|e| panic!(e)) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: add a "{}" format string to Display the message [INFO] [stderr] | [INFO] [stderr] 145 | .map_err(|e| panic!("{}", e)) [INFO] [stderr] | ^^^^^ [INFO] [stderr] help: or use std::panic::panic_any instead [INFO] [stderr] | [INFO] [stderr] 145 | .map_err(|e| std::panic::panic_any(e)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `futures::stream::MapErr` in tuple element 0 that must be used [INFO] [stderr] --> src/transport.rs:151:9 [INFO] [stderr] | [INFO] [stderr] 151 | core.run(client).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: streams do nothing unless polled [INFO] [stderr] [INFO] [stderr] warning: 51 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/crack-e3e355242ac79294) [INFO] [stdout] test transport::tests::it_works ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- transport::tests::it_works stdout ---- [INFO] [stdout] thread 'transport::tests::it_works' panicked at 'attempted to leave type `(std::net::SocketAddr, transport::Msg)` uninitialized, which is invalid', /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/mem/mod.rs:660:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x55d216ec3a50 - std::backtrace_rs::backtrace::libunwind::trace::h706b838f5bbd876b [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5 [INFO] [stdout] 1: 0x55d216ec3a50 - std::backtrace_rs::backtrace::trace_unsynchronized::hc15f29ae7822b7b8 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x55d216ec3a50 - std::sys_common::backtrace::_print_fmt::h7c580c971f91926c [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x55d216ec3a50 - ::fmt::h2a772198c4032452 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x55d216ee64bc - core::fmt::write::h9a6d9c74526a6c1b [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/fmt/mod.rs:1115:17 [INFO] [stdout] 5: 0x55d216ebd7a5 - std::io::Write::write_fmt::h583dff5009d01a9f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/io/mod.rs:1663:15 [INFO] [stdout] 6: 0x55d216ec5c2b - std::sys_common::backtrace::_print::h5b3c171e6f864ae4 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x55d216ec5c2b - std::sys_common::backtrace::print::h93b9e9ed2a98e611 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x55d216ec5c2b - std::panicking::default_hook::{{closure}}::hd8da92bb68d520c5 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:208:50 [INFO] [stdout] 9: 0x55d216ec573c - std::panicking::default_hook::hdbc8b2951c5afbab [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:222:9 [INFO] [stdout] 10: 0x55d216ec62f4 - std::panicking::rust_panic_with_hook::h8a4c841655926f4e [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:622:17 [INFO] [stdout] 11: 0x55d216ec5da7 - std::panicking::begin_panic_handler::{{closure}}::h471b6bc74904b7b0 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:517:13 [INFO] [stdout] 12: 0x55d216ec3f4c - std::sys_common::backtrace::__rust_end_short_backtrace::h309f5c707f29932f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:141:18 [INFO] [stdout] 13: 0x55d216ec5d39 - rust_begin_unwind [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:515:5 [INFO] [stdout] 14: 0x55d216d096c1 - core::panicking::panic_fmt::hcf5f6d96e1dd7099 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/panicking.rs:92:14 [INFO] [stdout] 15: 0x55d216d0960d - core::panicking::panic::hd695e3b1d0dd4ef4 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/panicking.rs:50:5 [INFO] [stdout] 16: 0x55d216d3da95 - core::mem::uninitialized::h6b15cca25e8fd087 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/mem/mod.rs:660:9 [INFO] [stdout] 17: 0x55d216d3da95 - crossbeam::sync::ms_queue::MsQueue::new::h1d8ae8a7463da6a1 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/crossbeam-0.2.12/src/sync/ms_queue.rs:66:45 [INFO] [stdout] 18: 0x55d216d24b56 - crack::transport::recv::h8337bf01e2e73a7c [INFO] [stdout] at /opt/rustwide/workdir/src/transport.rs:95:25 [INFO] [stdout] 19: 0x55d216d33229 - crack::transport::tests::it_works::hb9fcc3e4b990dd7f [INFO] [stdout] at /opt/rustwide/workdir/src/transport.rs:171:18 [INFO] [stdout] 20: 0x55d216d331ca - crack::transport::tests::it_works::{{closure}}::hc631b91137d16260 [INFO] [stdout] at /opt/rustwide/workdir/src/transport.rs:170:5 [INFO] [stdout] 21: 0x55d216d1697e - core::ops::function::FnOnce::call_once::h2c006f60061d5d4b [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x55d216d6a733 - core::ops::function::FnOnce::call_once::h99a97b0ff983bd25 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x55d216d6a733 - test::__rust_begin_short_backtrace::h8fe0d26ed1584e50 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:577:5 [INFO] [stdout] 24: 0x55d216d691c0 - as core::ops::function::FnOnce>::call_once::he6b90e352f394d8f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/alloc/src/boxed.rs:1572:9 [INFO] [stdout] 25: 0x55d216d691c0 - as core::ops::function::FnOnce<()>>::call_once::h1c05475e029700b8 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:347:9 [INFO] [stdout] 26: 0x55d216d691c0 - std::panicking::try::do_call::he6de943476ae628a [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:401:40 [INFO] [stdout] 27: 0x55d216d691c0 - std::panicking::try::ha21937b8feb06f89 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:365:19 [INFO] [stdout] 28: 0x55d216d691c0 - std::panic::catch_unwind::ha79830b3325c9fa6 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:434:14 [INFO] [stdout] 29: 0x55d216d691c0 - test::run_test_in_process::h1ab180b83ee2d5b5 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:600:18 [INFO] [stdout] 30: 0x55d216d691c0 - test::run_test::run_test_inner::{{closure}}::h8258ffe088f187a1 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:492:39 [INFO] [stdout] 31: 0x55d216d42782 - test::run_test::run_test_inner::{{closure}}::hc697b214abd32bc6 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/test/src/lib.rs:519:37 [INFO] [stdout] 32: 0x55d216d42782 - std::sys_common::backtrace::__rust_begin_short_backtrace::h64de0d3f894854a9 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys_common/backtrace.rs:125:18 [INFO] [stdout] 33: 0x55d216d463d8 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h1fd98fc86e533ece [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/mod.rs:476:17 [INFO] [stdout] 34: 0x55d216d463d8 - as core::ops::function::FnOnce<()>>::call_once::h4e2a7abf702e4cfd [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:347:9 [INFO] [stdout] 35: 0x55d216d463d8 - std::panicking::try::do_call::h4496392321a3c8c0 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:401:40 [INFO] [stdout] 36: 0x55d216d463d8 - std::panicking::try::hf1e14258e04e8e9a [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panicking.rs:365:19 [INFO] [stdout] 37: 0x55d216d463d8 - std::panic::catch_unwind::hb72c3777cd55642f [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/panic.rs:434:14 [INFO] [stdout] 38: 0x55d216d463d8 - std::thread::Builder::spawn_unchecked::{{closure}}::h2d7915a5910e148e [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/thread/mod.rs:475:30 [INFO] [stdout] 39: 0x55d216d463d8 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h83fd2f1ef5be797c [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 40: 0x55d216ecb0a7 - as core::ops::function::FnOnce>::call_once::ha8b1d5a0092467fc [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/alloc/src/boxed.rs:1572:9 [INFO] [stdout] 41: 0x55d216ecb0a7 - as core::ops::function::FnOnce>::call_once::h4b9f24ec4e8a879e [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/alloc/src/boxed.rs:1572:9 [INFO] [stdout] 42: 0x55d216ecb0a7 - std::sys::unix::thread::Thread::new::thread_start::h2a0e98fbc4ab4c32 [INFO] [stdout] at /rustc/ecabaf78506b7a4668d42dc20268c086b93f0fad/library/std/src/sys/unix/thread.rs:72:17 [INFO] [stdout] 43: 0x7f011cd24609 - start_thread [INFO] [stdout] 44: 0x7f011caf6293 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] transport::tests::it_works [INFO] [stdout] [INFO] [stdout] test result: FAILED. 3 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] running `Command { std: "docker" "inspect" "38e3af8046d6db33d792e3987a619e817201dd009ef96ad19fd8aabadae94be2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "38e3af8046d6db33d792e3987a619e817201dd009ef96ad19fd8aabadae94be2", kill_on_drop: false }` [INFO] [stdout] 38e3af8046d6db33d792e3987a619e817201dd009ef96ad19fd8aabadae94be2