[INFO] fetching crate crack 0.1.0... [INFO] testing crack-0.1.0 against master#99e3aef02079e9c10583638520cd0c134dc3a01d for pr-85530 [INFO] extracting crate crack 0.1.0 into /workspace/builds/worker-4/source [INFO] validating manifest of crates.io crate crack 0.1.0 on toolchain 99e3aef02079e9c10583638520cd0c134dc3a01d [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking 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-4/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 0a85fd1c749e36b4651d14cb1b55d66f7febfeca0b0e44abcf84988fc378d5c8 [INFO] running `Command { std: "docker" "start" "-a" "0a85fd1c749e36b4651d14cb1b55d66f7febfeca0b0e44abcf84988fc378d5c8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0a85fd1c749e36b4651d14cb1b55d66f7febfeca0b0e44abcf84988fc378d5c8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0a85fd1c749e36b4651d14cb1b55d66f7febfeca0b0e44abcf84988fc378d5c8", kill_on_drop: false }` [INFO] [stdout] 0a85fd1c749e36b4651d14cb1b55d66f7febfeca0b0e44abcf84988fc378d5c8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a0c50655d1e74766dca7e527b221c6e9cc0c18254a9ac312a2e484e7dc0223ad [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "a0c50655d1e74766dca7e527b221c6e9cc0c18254a9ac312a2e484e7dc0223ad", kill_on_drop: false }` [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling futures v0.1.31 [INFO] [stderr] Compiling gimli v0.24.0 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling ucd-util v0.1.8 [INFO] [stderr] Compiling utf8-ranges v1.0.4 [INFO] [stderr] Compiling rustc-demangle v0.1.19 [INFO] [stderr] Compiling dtoa v0.4.8 [INFO] [stderr] Compiling rustc-serialize v0.3.24 [INFO] [stderr] Compiling itoa v0.3.4 [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 semver v0.9.0 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling backtrace v0.3.60 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling regex-syntax v0.5.6 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.37 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling aho-corasick v0.6.10 [INFO] [stderr] Compiling bincode v0.9.2 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling crdts v1.3.0 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling crossbeam-queue v0.2.3 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling crossbeam-deque v0.7.3 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling uuid v0.4.0 [INFO] [stderr] Compiling tokio-executor v0.1.10 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling tokio-sync v0.1.8 [INFO] [stderr] Compiling serde_codegen_internals v0.14.2 [INFO] [stderr] Compiling num-traits v0.1.43 [INFO] [stderr] Compiling addr2line v0.15.2 [INFO] [stderr] Compiling tokio-threadpool v0.1.18 [INFO] [stderr] Compiling tokio-timer v0.2.13 [INFO] [stderr] Compiling tokio-current-thread v0.1.7 [INFO] [stderr] Compiling serde_json v0.9.10 [INFO] [stderr] Compiling bincode v0.6.1 [INFO] [stderr] Compiling tokio-codec v0.1.2 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling tokio-fs v0.1.7 [INFO] [stderr] Compiling tokio-uds v0.2.7 [INFO] [stderr] Compiling tokio-tcp v0.1.4 [INFO] [stderr] Compiling tokio-udp v0.1.6 [INFO] [stderr] Compiling serde_derive v0.9.15 [INFO] [stderr] Compiling error-chain v0.9.0 [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 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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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_panic)]` on by default [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 26.40s [INFO] running `Command { std: "docker" "inspect" "a0c50655d1e74766dca7e527b221c6e9cc0c18254a9ac312a2e484e7dc0223ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a0c50655d1e74766dca7e527b221c6e9cc0c18254a9ac312a2e484e7dc0223ad", kill_on_drop: false }` [INFO] [stdout] a0c50655d1e74766dca7e527b221c6e9cc0c18254a9ac312a2e484e7dc0223ad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1f18fca1692e602005db433268b4fdb4197c15463c6cdb7fc544338ed1d76b52 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "1f18fca1692e602005db433268b4fdb4197c15463c6cdb7fc544338ed1d76b52", kill_on_drop: false }` [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling winapi v0.2.8 [INFO] [stderr] Compiling utf8-ranges v0.1.3 [INFO] [stderr] Compiling regex-syntax v0.3.9 [INFO] [stderr] Compiling memchr v0.1.11 [INFO] [stdout] warning: unused `#[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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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_panic)]` on by default [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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_panic)]` on by default [INFO] [stdout] = note: this is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 10.13s [INFO] running `Command { std: "docker" "inspect" "1f18fca1692e602005db433268b4fdb4197c15463c6cdb7fc544338ed1d76b52", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1f18fca1692e602005db433268b4fdb4197c15463c6cdb7fc544338ed1d76b52", kill_on_drop: false }` [INFO] [stdout] 1f18fca1692e602005db433268b4fdb4197c15463c6cdb7fc544338ed1d76b52 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] bc4f4dacfc3a5976a49d2cd1747e53eacca4e7580add4ba53892dd4af1ef0b71 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "bc4f4dacfc3a5976a49d2cd1747e53eacca4e7580add4ba53892dd4af1ef0b71", 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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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] [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] = 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_panic)]` on by default [INFO] [stderr] = note: this is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2018 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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 was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [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_panic)]` on by default [INFO] [stderr] = note: this is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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 is no longer accepted in Rust 2021 [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.09s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/crack-d0d6669ca99ebf09) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test fsm::tests::it_works ... ignored [INFO] [stdout] test crc16::test_crc16 ... ok [INFO] [stdout] test kernel::tests::it_works ... ok [INFO] [stdout] test model::tests::it_works ... ok [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/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/mem/mod.rs:660:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5575437faac0 - std::backtrace_rs::backtrace::libunwind::trace::h1037ca7e6eeef65c [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5 [INFO] [stdout] 1: 0x5575437faac0 - std::backtrace_rs::backtrace::trace_unsynchronized::haaefac1bc3669450 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x5575437faac0 - std::sys_common::backtrace::_print_fmt::h863a6f5e6d995885 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x5575437faac0 - ::fmt::h767e17e1aa7df6a8 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x55754381d50c - core::fmt::write::h7aa6cd0067dca82a [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/fmt/mod.rs:1110:17 [INFO] [stdout] 5: 0x5575437f4825 - std::io::Write::write_fmt::h6f1a9b91376a1376 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/io/mod.rs:1584:15 [INFO] [stdout] 6: 0x5575437fcc9b - std::sys_common::backtrace::_print::h2769edb26a7eb606 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x5575437fcc9b - std::sys_common::backtrace::print::ha71f3549862b4cb6 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x5575437fcc9b - std::panicking::default_hook::{{closure}}::h95488a3bade217f6 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:208:50 [INFO] [stdout] 9: 0x5575437fc7ac - std::panicking::default_hook::h290aa602c0fb11df [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:222:9 [INFO] [stdout] 10: 0x5575437fd341 - std::panicking::rust_panic_with_hook::hf32c4fa635e215f2 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:622:17 [INFO] [stdout] 11: 0x5575437fce17 - std::panicking::begin_panic_handler::{{closure}}::h95197ccd88846f7a [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:517:13 [INFO] [stdout] 12: 0x5575437faf9c - std::sys_common::backtrace::__rust_end_short_backtrace::h7641df9566f7b7d0 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/sys_common/backtrace.rs:141:18 [INFO] [stdout] 13: 0x5575437fcda9 - rust_begin_unwind [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:515:5 [INFO] [stdout] 14: 0x55754364b531 - core::panicking::panic_fmt::hbe99dddd3092ba3c [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/panicking.rs:92:14 [INFO] [stdout] 15: 0x55754364b47d - core::panicking::panic::h3de4db67bd397eb3 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/panicking.rs:50:5 [INFO] [stdout] 16: 0x557543656875 - core::mem::uninitialized::h59503bbf4d484af4 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/mem/mod.rs:660:9 [INFO] [stdout] 17: 0x557543656875 - crossbeam::sync::ms_queue::MsQueue::new::h66eb08d64b2ea1ee [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: 0x55754366e376 - crack::transport::recv::ha7add6b1f9084130 [INFO] [stdout] at /opt/rustwide/workdir/src/transport.rs:95:25 [INFO] [stdout] 19: 0x55754367c0c9 - crack::transport::tests::it_works::h09480aa87157f63d [INFO] [stdout] at /opt/rustwide/workdir/src/transport.rs:171:18 [INFO] [stdout] 20: 0x55754367c06a - crack::transport::tests::it_works::{{closure}}::h22b9e0c5c49be298 [INFO] [stdout] at /opt/rustwide/workdir/src/transport.rs:170:5 [INFO] [stdout] 21: 0x55754365270e - core::ops::function::FnOnce::call_once::hd923eee266bba764 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 22: 0x5575436aa563 - core::ops::function::FnOnce::call_once::h673fbe3f96486fd2 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 23: 0x5575436aa563 - test::__rust_begin_short_backtrace::h8eedc24e104ef6a0 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/test/src/lib.rs:577:5 [INFO] [stdout] 24: 0x5575436a9010 - as core::ops::function::FnOnce>::call_once::h028d0969d3f94d78 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/alloc/src/boxed.rs:1575:9 [INFO] [stdout] 25: 0x5575436a9010 - as core::ops::function::FnOnce<()>>::call_once::h7634b01590b1722b [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panic.rs:346:9 [INFO] [stdout] 26: 0x5575436a9010 - std::panicking::try::do_call::hf74f869706dec63b [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:401:40 [INFO] [stdout] 27: 0x5575436a9010 - std::panicking::try::hd0b7346ebfaaae44 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:365:19 [INFO] [stdout] 28: 0x5575436a9010 - std::panic::catch_unwind::hdbf6904f7c253080 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panic.rs:433:14 [INFO] [stdout] 29: 0x5575436a9010 - test::run_test_in_process::h87e95a014ac91067 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/test/src/lib.rs:600:18 [INFO] [stdout] 30: 0x5575436a9010 - test::run_test::run_test_inner::{{closure}}::hdd69ae44aaab3470 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/test/src/lib.rs:492:39 [INFO] [stdout] 31: 0x5575436842e2 - test::run_test::run_test_inner::{{closure}}::hc159305704d5b68a [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/test/src/lib.rs:519:37 [INFO] [stdout] 32: 0x5575436842e2 - std::sys_common::backtrace::__rust_begin_short_backtrace::h33d8a8ad5f788fcc [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/sys_common/backtrace.rs:125:18 [INFO] [stdout] 33: 0x557543688058 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h6181011ddf4b8353 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/thread/mod.rs:481:17 [INFO] [stdout] 34: 0x557543688058 - as core::ops::function::FnOnce<()>>::call_once::hf924ea0a0f25a1c0 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panic.rs:346:9 [INFO] [stdout] 35: 0x557543688058 - std::panicking::try::do_call::hd58061792d05fa5c [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:401:40 [INFO] [stdout] 36: 0x557543688058 - std::panicking::try::h3080747417e5af37 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panicking.rs:365:19 [INFO] [stdout] 37: 0x557543688058 - std::panic::catch_unwind::hfeba515dcf36cb66 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/panic.rs:433:14 [INFO] [stdout] 38: 0x557543688058 - std::thread::Builder::spawn_unchecked::{{closure}}::h29d57a62faff749b [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/thread/mod.rs:480:30 [INFO] [stdout] 39: 0x557543688058 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h44709d312d2a9c59 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 40: 0x557543802017 - as core::ops::function::FnOnce>::call_once::h902e2cf6655e1b0c [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/alloc/src/boxed.rs:1575:9 [INFO] [stdout] 41: 0x557543802017 - as core::ops::function::FnOnce>::call_once::h893a5452154309d1 [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/alloc/src/boxed.rs:1575:9 [INFO] [stdout] 42: 0x557543802017 - std::sys::unix::thread::Thread::new::thread_start::hdedcb57c96ab37cd [INFO] [stdout] at /rustc/99e3aef02079e9c10583638520cd0c134dc3a01d/library/std/src/sys/unix/thread.rs:71:17 [INFO] [stdout] 43: 0x7f636e3d0609 - start_thread [INFO] [stdout] 44: 0x7f636e1a2293 - 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.03s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] running `Command { std: "docker" "inspect" "bc4f4dacfc3a5976a49d2cd1747e53eacca4e7580add4ba53892dd4af1ef0b71", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bc4f4dacfc3a5976a49d2cd1747e53eacca4e7580add4ba53892dd4af1ef0b71", kill_on_drop: false }` [INFO] [stdout] bc4f4dacfc3a5976a49d2cd1747e53eacca4e7580add4ba53892dd4af1ef0b71