[INFO] cloning repository https://github.com/dat2/rust-raft [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dat2/rust-raft" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdat2%2Frust-raft", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdat2%2Frust-raft'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8881ddba811664ddb4f67e143b876fc7f06a5c9d [INFO] checking dat2/rust-raft against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdat2%2Frust-raft" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/dat2/rust-raft [INFO] finished tweaking git repo https://github.com/dat2/rust-raft [INFO] tweaked toml for git repo https://github.com/dat2/rust-raft written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/dat2/rust-raft on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/dat2/rust-raft already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tokio-service v0.1.0 [INFO] [stderr] Downloaded log v0.3.6 [INFO] [stderr] Downloaded byteorder v1.0.0 [INFO] [stderr] Downloaded iovec v0.1.0 [INFO] [stderr] Downloaded tokio-proto v0.1.1 [INFO] [stderr] Downloaded bitflags v0.7.0 [INFO] [stderr] Downloaded tokio-io v0.1.1 [INFO] [stderr] Downloaded env_logger v0.4.1 [INFO] [stderr] Downloaded num-traits v0.1.37 [INFO] [stderr] Downloaded ansi_term v0.9.0 [INFO] [stderr] Downloaded memchr v1.0.1 [INFO] [stderr] Downloaded term_size v0.2.3 [INFO] [stderr] Downloaded vec_map v0.6.0 [INFO] [stderr] Downloaded thread-id v3.0.0 [INFO] [stderr] Downloaded bincode v0.8.0 [INFO] [stderr] Downloaded aho-corasick v0.6.2 [INFO] [stderr] Downloaded serde_derive v1.0.4 [INFO] [stderr] Downloaded clap v2.20.5 [INFO] [stderr] Downloaded mio v0.6.7 [INFO] [stderr] Downloaded regex v0.2.1 [INFO] [stderr] Downloaded unicode-segmentation v1.1.0 [INFO] [stderr] Downloaded regex-syntax v0.4.0 [INFO] [stderr] Downloaded syn v0.11.11 [INFO] [stderr] Downloaded libc v0.2.21 [INFO] [stderr] Downloaded tokio-core v0.1.7 [INFO] [stderr] Downloaded futures v0.1.13 [INFO] [stderr] Downloaded quote v0.3.15 [INFO] [stderr] Downloaded unicode-xid v0.0.4 [INFO] [stderr] Downloaded rand v0.3.15 [INFO] [stderr] Downloaded scoped-tls v0.1.0 [INFO] [stderr] Downloaded backtrace v0.3.0 [INFO] [stderr] Downloaded serde v1.0.4 [INFO] [stderr] Downloaded backtrace-sys v0.1.10 [INFO] [stderr] Downloaded synom v0.11.3 [INFO] [stderr] Downloaded utf8-ranges v1.0.0 [INFO] [stderr] Downloaded error-chain v0.7.2 [INFO] [stderr] Downloaded take v0.1.0 [INFO] [stderr] Downloaded cfg-if v0.1.0 [INFO] [stderr] Downloaded smallvec v0.2.1 [INFO] [stderr] Downloaded bytes v0.4.3 [INFO] [stderr] Downloaded gcc v0.3.43 [INFO] [stderr] Downloaded dbghelp-sys v0.2.0 [INFO] [stderr] Downloaded lazycell v0.4.0 [INFO] [stderr] Downloaded net2 v0.2.29 [INFO] [stderr] Downloaded strsim v0.6.0 [INFO] [stderr] Downloaded unreachable v0.1.1 [INFO] [stderr] Downloaded thread_local v0.3.3 [INFO] [stderr] Downloaded rustc-demangle v0.1.4 [INFO] [stderr] Downloaded serde_derive_internals v0.15.0 [INFO] [stderr] Downloaded slab v0.3.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a078689aeba8843aeaf5f6b3788c71b0e3c6b0611d51412fb81f53afbd639848 [INFO] running `Command { std: "docker" "start" "-a" "a078689aeba8843aeaf5f6b3788c71b0e3c6b0611d51412fb81f53afbd639848", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a078689aeba8843aeaf5f6b3788c71b0e3c6b0611d51412fb81f53afbd639848", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a078689aeba8843aeaf5f6b3788c71b0e3c6b0611d51412fb81f53afbd639848", kill_on_drop: false }` [INFO] [stdout] a078689aeba8843aeaf5f6b3788c71b0e3c6b0611d51412fb81f53afbd639848 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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" "RUSTDOCFLAGS=--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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9b0650aadad70fc3be939a229498b06f061ba398e918c65960e5f27265c4da34 [INFO] running `Command { std: "docker" "start" "-a" "9b0650aadad70fc3be939a229498b06f061ba398e918c65960e5f27265c4da34", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Checking libc v0.2.21 [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Checking cfg-if v0.1.0 [INFO] [stderr] Compiling gcc v0.3.43 [INFO] [stderr] Checking log v0.3.6 [INFO] [stderr] Checking byteorder v1.0.0 [INFO] [stderr] Checking futures v0.1.13 [INFO] [stderr] Checking winapi v0.2.8 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Checking slab v0.3.0 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Checking lazycell v0.4.0 [INFO] [stderr] Compiling backtrace v0.3.0 [INFO] [stderr] Checking utf8-ranges v1.0.0 [INFO] [stderr] Checking regex-syntax v0.4.0 [INFO] [stderr] Checking scoped-tls v0.1.0 [INFO] [stderr] Checking rustc-demangle v0.1.4 [INFO] [stderr] Checking unreachable v0.1.1 [INFO] [stderr] Checking smallvec v0.2.1 [INFO] [stderr] Checking serde v1.0.4 [INFO] [stderr] Checking bitflags v0.7.0 [INFO] [stderr] Checking unicode-width v0.1.4 [INFO] [stderr] Checking unicode-segmentation v1.1.0 [INFO] [stderr] Checking iovec v0.1.0 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Checking memchr v1.0.1 [INFO] [stderr] Checking thread-id v3.0.0 [INFO] [stderr] Checking net2 v0.2.29 [INFO] [stderr] Checking thread_local v0.3.3 [INFO] [stderr] Compiling dbghelp-sys v0.2.0 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Checking term_size v0.2.3 [INFO] [stderr] Checking bytes v0.4.3 [INFO] [stderr] Checking aho-corasick v0.6.2 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Checking rand v0.3.15 [INFO] [stderr] Checking num-traits v0.1.37 [INFO] [stderr] Checking ansi_term v0.9.0 [INFO] [stderr] Checking strsim v0.6.0 [INFO] [stderr] Checking vec_map v0.6.0 [INFO] [stderr] Checking take v0.1.0 [INFO] [stderr] Checking mio v0.6.7 [INFO] [stderr] Checking clap v2.20.5 [INFO] [stderr] Compiling backtrace-sys v0.1.10 [INFO] [stderr] Checking regex v0.2.1 [INFO] [stderr] Checking tokio-io v0.1.1 [INFO] [stderr] Checking tokio-service v0.1.0 [INFO] [stderr] Compiling serde_derive_internals v0.15.0 [INFO] [stderr] Checking env_logger v0.4.1 [INFO] [stderr] Checking tokio-core v0.1.7 [INFO] [stderr] Compiling serde_derive v1.0.4 [INFO] [stderr] Checking tokio-proto v0.1.1 [INFO] [stderr] Checking bincode v0.8.0 [INFO] [stderr] Checking error-chain v0.7.2 [INFO] [stderr] Checking raft v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/server.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UnboundedReceiver` [INFO] [stdout] --> src/server.rs:13:55 [INFO] [stdout] | [INFO] [stdout] 13 | use futures::sync::mpsc::{unbounded, UnboundedSender, UnboundedReceiver}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/client.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / error_chain! { [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | types { [INFO] [stdout] 4 | | Error, ErrorKind, ResultExt, Result; [INFO] [stdout] ... | [INFO] [stdout] 13 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stdout] --> src/errors.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / error_chain! { [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | types { [INFO] [stdout] 4 | | Error, ErrorKind, ResultExt, Result; [INFO] [stdout] ... | [INFO] [stdout] 13 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:34:62 [INFO] [stdout] | [INFO] [stdout] 34 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:53:60 [INFO] [stdout] | [INFO] [stdout] 53 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | self.tx.send(oneshot_tx).map_err(|e| io::Error::new(io::ErrorKind::Other, e.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:89:87 [INFO] [stdout] | [INFO] [stdout] 89 | .and_then(|_| oneshot_rx.map_err(|e| io::Error::new(io::ErrorKind::Other, e.description()))) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/client.rs:33:62 [INFO] [stdout] | [INFO] [stdout] 33 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/client.rs:52:60 [INFO] [stdout] | [INFO] [stdout] 52 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/server.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `UnboundedReceiver` [INFO] [stdout] --> src/server.rs:13:55 [INFO] [stdout] | [INFO] [stdout] 13 | use futures::sync::mpsc::{unbounded, UnboundedSender, UnboundedReceiver}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str` [INFO] [stdout] --> src/client.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::str; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/errors.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / error_chain! { [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | types { [INFO] [stdout] 4 | | Error, ErrorKind, ResultExt, Result; [INFO] [stdout] ... | [INFO] [stdout] 13 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stdout] --> src/errors.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / error_chain! { [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | types { [INFO] [stdout] 4 | | Error, ErrorKind, ResultExt, Result; [INFO] [stdout] ... | [INFO] [stdout] 13 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:34:62 [INFO] [stdout] | [INFO] [stdout] 34 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:53:60 [INFO] [stdout] | [INFO] [stdout] 53 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | self.tx.send(oneshot_tx).map_err(|e| io::Error::new(io::ErrorKind::Other, e.description())) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/server.rs:89:87 [INFO] [stdout] | [INFO] [stdout] 89 | .and_then(|_| oneshot_rx.map_err(|e| io::Error::new(io::ErrorKind::Other, e.description()))) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/client.rs:33:62 [INFO] [stdout] | [INFO] [stdout] 33 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/client.rs:52:60 [INFO] [stdout] | [INFO] [stdout] 52 | Err(e) => Err(io::Error::new(io::ErrorKind::Other, e.description())), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RaftState` is never constructed [INFO] [stdout] --> src/state.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct RaftState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `vote` are never used [INFO] [stdout] --> src/state.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 6 | impl RaftState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 7 | pub fn new() -> RaftState { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | pub fn vote(&mut self, candidate: String) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `StateEnum` is never used [INFO] [stdout] --> src/state.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | pub enum StateEnum { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StateMachine` is never constructed [INFO] [stdout] --> src/state.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/state.rs:32:6 [INFO] [stdout] | [INFO] [stdout] 31 | impl StateMachine { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 32 | fn new(state: S, term: usize) -> StateMachine { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `init`, `vote`, `complete_vote`, and `election_timeout` are never used [INFO] [stdout] --> src/state.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 40 | impl StateMachine { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] 41 | // everyone starts off as a follower [INFO] [stdout] 42 | pub fn init() -> StateMachine { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn vote(self, candidate: String) -> StateMachine { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn complete_vote(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn election_timeout(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `failed_majority_timeout`, `other_leader_elected`, and `elected` are never used [INFO] [stdout] --> src/state.rs:64:10 [INFO] [stdout] | [INFO] [stdout] 62 | impl StateMachine { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] 63 | // if no majority was reached, then we just need to increment term and try again [INFO] [stdout] 64 | pub fn failed_majority_timeout(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn other_leader_elected(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn elected(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Follower` is never constructed [INFO] [stdout] --> src/state.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct Follower { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/state.rs:85:6 [INFO] [stdout] | [INFO] [stdout] 84 | impl Follower { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 85 | fn new(voted_for: Option) -> Follower { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Candidate` is never constructed [INFO] [stdout] --> src/state.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct Candidate; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Leader` is never constructed [INFO] [stdout] --> src/state.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Leader; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/server.rs:107:7 [INFO] [stdout] | [INFO] [stdout] 107 | v.send(rng.gen()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 107 | let _ = v.send(rng.gen()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:1:10 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftRequest` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RaftRequest` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:1:21 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftRequest` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RaftRequest` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftResponse` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RaftResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftResponse` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RaftResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:35:21 [INFO] [stdout] | [INFO] [stdout] 35 | Err(e) => Err(e.description().to_string()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RaftState` is never constructed [INFO] [stdout] --> src/state.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct RaftState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `vote` are never used [INFO] [stdout] --> src/state.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 6 | impl RaftState { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 7 | pub fn new() -> RaftState { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | pub fn vote(&mut self, candidate: String) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `StateEnum` is never used [INFO] [stdout] --> src/state.rs:19:10 [INFO] [stdout] | [INFO] [stdout] 19 | pub enum StateEnum { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StateMachine` is never constructed [INFO] [stdout] --> src/state.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/state.rs:32:6 [INFO] [stdout] | [INFO] [stdout] 31 | impl StateMachine { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 32 | fn new(state: S, term: usize) -> StateMachine { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `init`, `vote`, `complete_vote`, and `election_timeout` are never used [INFO] [stdout] --> src/state.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 40 | impl StateMachine { [INFO] [stdout] | --------------------------- associated items in this implementation [INFO] [stdout] 41 | // everyone starts off as a follower [INFO] [stdout] 42 | pub fn init() -> StateMachine { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn vote(self, candidate: String) -> StateMachine { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn complete_vote(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn election_timeout(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `failed_majority_timeout`, `other_leader_elected`, and `elected` are never used [INFO] [stdout] --> src/state.rs:64:10 [INFO] [stdout] | [INFO] [stdout] 62 | impl StateMachine { [INFO] [stdout] | ---------------------------- methods in this implementation [INFO] [stdout] 63 | // if no majority was reached, then we just need to increment term and try again [INFO] [stdout] 64 | pub fn failed_majority_timeout(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn other_leader_elected(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn elected(self) -> StateMachine { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Follower` is never constructed [INFO] [stdout] --> src/state.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct Follower { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/state.rs:85:6 [INFO] [stdout] | [INFO] [stdout] 84 | impl Follower { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 85 | fn new(voted_for: Option) -> Follower { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Candidate` is never constructed [INFO] [stdout] --> src/state.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct Candidate; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Leader` is never constructed [INFO] [stdout] --> src/state.rs:94:12 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Leader; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/server.rs:107:7 [INFO] [stdout] | [INFO] [stdout] 107 | v.send(rng.gen()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 107 | let _ = v.send(rng.gen()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:1:10 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftRequest` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RaftRequest` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:1:21 [INFO] [stdout] | [INFO] [stdout] 1 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftRequest` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RaftRequest` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftResponse` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_RaftResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/messages.rs:7:21 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Serialize, Deserialize, PartialEq,Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `RaftResponse` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_RaftResponse` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/main.rs:35:21 [INFO] [stdout] | [INFO] [stdout] 35 | Err(e) => Err(e.description().to_string()) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.61s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bitflags v0.7.0 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "9b0650aadad70fc3be939a229498b06f061ba398e918c65960e5f27265c4da34", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9b0650aadad70fc3be939a229498b06f061ba398e918c65960e5f27265c4da34", kill_on_drop: false }` [INFO] [stdout] 9b0650aadad70fc3be939a229498b06f061ba398e918c65960e5f27265c4da34