[INFO] cloning repository https://github.com/r00takaspin/rusty-raft [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/r00takaspin/rusty-raft" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fr00takaspin%2Frusty-raft", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fr00takaspin%2Frusty-raft'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9337b1314576f1f8e297a4b7d03c10dd35d86692 [INFO] linting r00takaspin/rusty-raft against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fr00takaspin%2Frusty-raft" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/r00takaspin/rusty-raft [INFO] finished tweaking git repo https://github.com/r00takaspin/rusty-raft [INFO] tweaked toml for git repo https://github.com/r00takaspin/rusty-raft written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/r00takaspin/rusty-raft on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/r00takaspin/rusty-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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cfg-if v1.0.3 [INFO] [stderr] Downloaded anstyle-wincon v3.0.10 [INFO] [stderr] Downloaded async-oneshot v0.5.9 [INFO] [stderr] Downloaded futures-micro v0.5.0 [INFO] [stderr] Downloaded clap_lex v0.7.5 [INFO] [stderr] Downloaded anstyle-query v1.1.4 [INFO] [stderr] Downloaded unicode-ident v1.0.19 [INFO] [stderr] Downloaded once_cell_polyfill v1.70.1 [INFO] [stderr] Downloaded rustc-demangle v0.1.26 [INFO] [stderr] Downloaded serde v1.0.225 [INFO] [stderr] Downloaded clap_derive v4.5.47 [INFO] [stderr] Downloaded clap v4.5.47 [INFO] [stderr] Downloaded anyhow v1.0.99 [INFO] [stderr] Downloaded jiff-static v0.2.15 [INFO] [stderr] Downloaded backtrace v0.3.75 [INFO] [stderr] Downloaded rand v0.10.0-rc.0 [INFO] [stderr] Downloaded regex v1.11.2 [INFO] [stderr] Downloaded clap_builder v4.5.47 [INFO] [stderr] Downloaded portable-atomic v1.11.1 [INFO] [stderr] Downloaded tracing-subscriber v0.3.20 [INFO] [stderr] Downloaded mio v1.0.4 [INFO] [stderr] Downloaded io-uring v0.7.10 [INFO] [stderr] Downloaded bytes v1.10.1 [INFO] [stderr] Downloaded syn v2.0.106 [INFO] [stderr] Downloaded socket2 v0.6.0 [INFO] [stderr] Downloaded getrandom v0.3.3 [INFO] [stderr] Downloaded serde_core v1.0.225 [INFO] [stderr] Downloaded serde_derive v1.0.225 [INFO] [stderr] Downloaded bitflags v2.9.4 [INFO] [stderr] Downloaded parking_lot v0.12.4 [INFO] [stderr] Downloaded regex-syntax v0.8.6 [INFO] [stderr] Downloaded nu-ansi-term v0.50.1 [INFO] [stderr] Downloaded anstream v0.6.20 [INFO] [stderr] Downloaded messages v0.3.1 [INFO] [stderr] Downloaded chacha20 v0.10.0-rc.2 [INFO] [stderr] Downloaded wasi v0.14.7+wasi-0.2.4 [INFO] [stderr] Downloaded parking_lot_core v0.9.11 [INFO] [stderr] Downloaded signal-hook-registry v1.4.6 [INFO] [stderr] Downloaded proc-macro2 v1.0.101 [INFO] [stderr] Downloaded tracing-attributes v0.1.30 [INFO] [stderr] Downloaded log v0.4.28 [INFO] [stderr] Downloaded regex-automata v0.4.10 [INFO] [stderr] Downloaded tracing-core v0.1.34 [INFO] [stderr] Downloaded redox_syscall v0.5.17 [INFO] [stderr] Downloaded windows-targets v0.53.3 [INFO] [stderr] Downloaded jiff v0.2.15 [INFO] [stderr] Downloaded anstyle v1.0.11 [INFO] [stderr] Downloaded async-channel v1.9.0 [INFO] [stderr] Downloaded windows_aarch64_gnullvm v0.53.0 [INFO] [stderr] Downloaded libc v0.2.175 [INFO] [stderr] Downloaded windows_x86_64_gnullvm v0.53.0 [INFO] [stderr] Downloaded windows_aarch64_msvc v0.53.0 [INFO] [stderr] Downloaded windows_i686_gnullvm v0.53.0 [INFO] [stderr] Downloaded windows_x86_64_msvc v0.53.0 [INFO] [stderr] Downloaded windows_i686_msvc v0.53.0 [INFO] [stderr] Downloaded windows_x86_64_gnu v0.53.0 [INFO] [stderr] Downloaded windows_i686_gnu v0.53.0 [INFO] [stderr] Downloaded tokio v1.47.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 64b6b758a8c21c9e746d800b3ff8504169c61ba27e5b66b5a4c606e1c5daa4e1 [INFO] running `Command { std: "docker" "start" "-a" "64b6b758a8c21c9e746d800b3ff8504169c61ba27e5b66b5a4c606e1c5daa4e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "64b6b758a8c21c9e746d800b3ff8504169c61ba27e5b66b5a4c606e1c5daa4e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "64b6b758a8c21c9e746d800b3ff8504169c61ba27e5b66b5a4c606e1c5daa4e1", kill_on_drop: false }` [INFO] [stdout] 64b6b758a8c21c9e746d800b3ff8504169c61ba27e5b66b5a4c606e1c5daa4e1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] be6b5f698a461f77ca2dc4f971f4edab6e4fd8166b63a1262bee68db272d86af [INFO] running `Command { std: "docker" "start" "-a" "be6b5f698a461f77ca2dc4f971f4edab6e4fd8166b63a1262bee68db272d86af", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling unicode-ident v1.0.19 [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Checking cfg-if v1.0.3 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking anstyle v1.0.11 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Checking log v0.4.28 [INFO] [stderr] Compiling serde_core v1.0.225 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking slab v0.4.11 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking regex-syntax v0.8.6 [INFO] [stderr] Checking anstyle-query v1.1.4 [INFO] [stderr] Checking tracing-core v0.1.34 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking futures-micro v0.5.0 [INFO] [stderr] Checking clap_lex v0.7.5 [INFO] [stderr] Compiling anyhow v1.0.99 [INFO] [stderr] Checking cpufeatures v0.2.17 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Checking event-listener v2.5.3 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Compiling serde v1.0.225 [INFO] [stderr] Checking async-oneshot v0.5.9 [INFO] [stderr] Checking thread_local v1.1.9 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Checking jiff v0.2.15 [INFO] [stderr] Checking nu-ansi-term v0.50.1 [INFO] [stderr] Checking anstream v0.6.20 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking tracing-log v0.2.0 [INFO] [stderr] Checking tracing-subscriber v0.3.20 [INFO] [stderr] Checking clap_builder v4.5.47 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Checking signal-hook-registry v1.4.6 [INFO] [stderr] Checking socket2 v0.6.0 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking chacha20 v0.10.0-rc.2 [INFO] [stderr] Checking rand v0.10.0-rc.0 [INFO] [stderr] Checking regex-automata v0.4.10 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling serde_derive v1.0.225 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling clap_derive v4.5.47 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Checking regex v1.11.2 [INFO] [stderr] Checking env_filter v0.1.3 [INFO] [stderr] Checking tokio v1.47.1 [INFO] [stderr] Checking env_logger v0.11.8 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking clap v4.5.47 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking messages v0.3.1 [INFO] [stderr] Checking rusty-raft v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `NodeId` [INFO] [stdout] --> src/main.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::messages::{NodeId, RpcMessage}; [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: `std::thread::sleep` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::broadcast::channel` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::sync::broadcast::channel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::state` [INFO] [stdout] --> src/config.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/config.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/state.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> src/state.rs:344:12 [INFO] [stdout] | [INFO] [stdout] 344 | if self.votes_num >= self.nodes.len() / 2 + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `self.votes_num > self.nodes.len() / 2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] = note: `#[warn(clippy::int_plus_one)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NodeId` [INFO] [stdout] --> src/transport/client.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::messages::{NodeId, RpcMessage}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/transport/client.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NodeId` [INFO] [stdout] --> src/main.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::messages::{NodeId, RpcMessage}; [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: `std::thread::sleep` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::thread::sleep; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::sync::broadcast::channel` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use tokio::sync::broadcast::channel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::state` [INFO] [stdout] --> src/config.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::state; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/config.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::str::FromStr` [INFO] [stdout] --> src/state.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `>= y + 1` or `x - 1 >=` [INFO] [stdout] --> src/state.rs:344:12 [INFO] [stdout] | [INFO] [stdout] 344 | if self.votes_num >= self.nodes.len() / 2 + 1 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change it to: `self.votes_num > self.nodes.len() / 2` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#int_plus_one [INFO] [stdout] = note: `#[warn(clippy::int_plus_one)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NodeId` [INFO] [stdout] --> src/transport/client.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::messages::{NodeId, RpcMessage}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/transport/client.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/transport/client.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut rx = &mut self.resp_rx; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/transport/client.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let mut rx = &mut self.resp_rx; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::transport::client::Client` [INFO] [stdout] --> src/state.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::transport::client::Client; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::transport::client::Client` [INFO] [stdout] --> src/state.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::transport::client::Client; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node_id` [INFO] [stdout] --> src/state.rs:435:17 [INFO] [stdout] | [INFO] [stdout] 435 | let node_id = node_id.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/state.rs:614:48 [INFO] [stdout] | [INFO] [stdout] 614 | fn handle_request_vote_response(&mut self, peer: String, response: RequestVoteResponse) { [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/state.rs:637:45 [INFO] [stdout] | [INFO] [stdout] 637 | fn handle_heartbeat_response(&mut self, peer: String, response: HeartbeatResponse) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `resp_tx` [INFO] [stdout] --> src/transport/client.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | let resp_tx = self.resp_tx.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resp_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/state.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl LogEntry { [INFO] [stdout] | ------------- associated function in this implementation [INFO] [stdout] 36 | pub fn new(index: usize, term: u64, command: &str, commit_index: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_log` is never used [INFO] [stdout] --> src/state.rs:330:8 [INFO] [stdout] | [INFO] [stdout] 117 | impl NodeState { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 330 | fn add_log(&mut self, log: LogEntry) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Client` is never used [INFO] [stdout] --> src/transport/client.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait Client: Send + Sync { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node_id` [INFO] [stdout] --> src/state.rs:435:17 [INFO] [stdout] | [INFO] [stdout] 435 | let node_id = node_id.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_id` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `peer` [INFO] [stdout] --> src/state.rs:614:48 [INFO] [stdout] | [INFO] [stdout] 614 | fn handle_request_vote_response(&mut self, peer: String, response: RequestVoteResponse) { [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/state.rs:637:45 [INFO] [stdout] | [INFO] [stdout] 637 | fn handle_heartbeat_response(&mut self, peer: String, response: HeartbeatResponse) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_peer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `resp_tx` [INFO] [stdout] --> src/transport/client.rs:37:13 [INFO] [stdout] | [INFO] [stdout] 37 | let resp_tx = self.resp_tx.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resp_tx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Client` is never used [INFO] [stdout] --> src/transport/client.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub trait Client: Send + Sync { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/state.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | / let mut log_entries = vec![]; [INFO] [stdout] 121 | | log_entries.push(LogEntry::initial()); [INFO] [stdout] | |______________________________________________^ help: consider using the `vec![]` macro: `let log_entries = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] = note: `#[warn(clippy::vec_init_then_push)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/state.rs:228:22 [INFO] [stdout] | [INFO] [stdout] 228 | self.log[i as usize].commit_index = Some(leader_commit_index); [INFO] [stdout] | ^^^^^^^^^^ help: try: `i` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/state.rs:269:22 [INFO] [stdout] | [INFO] [stdout] 269 | self.log[i as usize].commit_index = Some(leader_commit_index); [INFO] [stdout] | ^^^^^^^^^^ help: try: `i` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `curr_index` is used as a loop counter [INFO] [stdout] --> src/state.rs:285:9 [INFO] [stdout] | [INFO] [stdout] 285 | for log in leader_log_chunk.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (curr_index, log) in (self.log[self.log.len() - 1].index + 1..).zip(leader_log_chunk.iter())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] = note: `#[warn(clippy::explicit_counter_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/state.rs:630:9 [INFO] [stdout] | [INFO] [stdout] 630 | / if response.term > self.state.term { [INFO] [stdout] 631 | | if let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 632 | | error!("failed to become follower: {}", err); [INFO] [stdout] 633 | | } [INFO] [stdout] 634 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 630 ~ if response.term > self.state.term [INFO] [stdout] 631 ~ && let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 632 | error!("failed to become follower: {}", err); [INFO] [stdout] 633 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/state.rs:644:9 [INFO] [stdout] | [INFO] [stdout] 644 | / if response.term > self.state.term { [INFO] [stdout] 645 | | if let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 646 | | error!("failed to become follower: {}", err); [INFO] [stdout] 647 | | } [INFO] [stdout] 648 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 644 ~ if response.term > self.state.term [INFO] [stdout] 645 ~ && let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 646 | error!("failed to become follower: {}", err); [INFO] [stdout] 647 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Duration` which implements the `Copy` trait [INFO] [stdout] --> src/transport/client.rs:38:23 [INFO] [stdout] | [INFO] [stdout] 38 | let timeout = self.timeout.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.timeout` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/transport/client.rs:62:15 [INFO] [stdout] | [INFO] [stdout] 62 | .await [INFO] [stdout] | _______________^ [INFO] [stdout] 63 | | .map_err(|err| err)??; [INFO] [stdout] | |___________________________^ help: remove the call to `map_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] = note: `#[warn(clippy::map_identity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/transport/client.rs:76:15 [INFO] [stdout] | [INFO] [stdout] 76 | .await [INFO] [stdout] | _______________^ [INFO] [stdout] 77 | | .map_err(|err| err)??; [INFO] [stdout] | |___________________________^ help: remove the call to `map_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/transport/client.rs:84:15 [INFO] [stdout] | [INFO] [stdout] 84 | .await [INFO] [stdout] | _______________^ [INFO] [stdout] 85 | | .map_err(|err| err)??; [INFO] [stdout] | |___________________________^ help: remove the call to `map_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/state.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | / let mut log_entries = vec![]; [INFO] [stdout] 121 | | log_entries.push(LogEntry::initial()); [INFO] [stdout] | |______________________________________________^ help: consider using the `vec![]` macro: `let log_entries = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] = note: `#[warn(clippy::vec_init_then_push)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/state.rs:228:22 [INFO] [stdout] | [INFO] [stdout] 228 | self.log[i as usize].commit_index = Some(leader_commit_index); [INFO] [stdout] | ^^^^^^^^^^ help: try: `i` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/state.rs:269:22 [INFO] [stdout] | [INFO] [stdout] 269 | self.log[i as usize].commit_index = Some(leader_commit_index); [INFO] [stdout] | ^^^^^^^^^^ help: try: `i` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the variable `curr_index` is used as a loop counter [INFO] [stdout] --> src/state.rs:285:9 [INFO] [stdout] | [INFO] [stdout] 285 | for log in leader_log_chunk.iter() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using: `for (curr_index, log) in (self.log[self.log.len() - 1].index + 1..).zip(leader_log_chunk.iter())` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_counter_loop [INFO] [stdout] = note: `#[warn(clippy::explicit_counter_loop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/state.rs:630:9 [INFO] [stdout] | [INFO] [stdout] 630 | / if response.term > self.state.term { [INFO] [stdout] 631 | | if let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 632 | | error!("failed to become follower: {}", err); [INFO] [stdout] 633 | | } [INFO] [stdout] 634 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] = note: `#[warn(clippy::collapsible_if)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 630 ~ if response.term > self.state.term [INFO] [stdout] 631 ~ && let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 632 | error!("failed to become follower: {}", err); [INFO] [stdout] 633 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` statement can be collapsed [INFO] [stdout] --> src/state.rs:644:9 [INFO] [stdout] | [INFO] [stdout] 644 | / if response.term > self.state.term { [INFO] [stdout] 645 | | if let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 646 | | error!("failed to become follower: {}", err); [INFO] [stdout] 647 | | } [INFO] [stdout] 648 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 644 ~ if response.term > self.state.term [INFO] [stdout] 645 ~ && let Err(err) = self.state.become_follower(response.term) { [INFO] [stdout] 646 | error!("failed to become follower: {}", err); [INFO] [stdout] 647 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/state.rs:669:17 [INFO] [stdout] | [INFO] [stdout] 669 | assert!(!result.is_ok()); [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: try: `result.is_err()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:736:9 [INFO] [stdout] | [INFO] [stdout] 736 | assert_eq!(false, got_ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_assert_comparison)]` on by default [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 736 - assert_eq!(false, got_ok); [INFO] [stdout] 736 + assert!(!got_ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:745:9 [INFO] [stdout] | [INFO] [stdout] 745 | assert_eq!(false, got_ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 745 - assert_eq!(false, got_ok); [INFO] [stdout] 745 + assert!(!got_ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:753:9 [INFO] [stdout] | [INFO] [stdout] 753 | assert_eq!(true, got_ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 753 - assert_eq!(true, got_ok); [INFO] [stdout] 753 + assert!(got_ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:757:9 [INFO] [stdout] | [INFO] [stdout] 757 | assert_eq!(false, got_ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 757 - assert_eq!(false, got_ok); [INFO] [stdout] 757 + assert!(!got_ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:767:9 [INFO] [stdout] | [INFO] [stdout] 767 | assert_eq!(false, got_ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 767 - assert_eq!(false, got_ok); [INFO] [stdout] 767 + assert!(!got_ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:777:9 [INFO] [stdout] | [INFO] [stdout] 777 | assert_eq!(false, got_ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 777 - assert_eq!(false, got_ok); [INFO] [stdout] 777 + assert!(!got_ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:786:9 [INFO] [stdout] | [INFO] [stdout] 786 | assert_eq!(true, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 786 - assert_eq!(true, ok); [INFO] [stdout] 786 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:800:9 [INFO] [stdout] | [INFO] [stdout] 800 | assert_eq!(true, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 800 - assert_eq!(true, ok); [INFO] [stdout] 800 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:809:9 [INFO] [stdout] | [INFO] [stdout] 809 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 809 - assert_eq!(false, ok); [INFO] [stdout] 809 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:822:9 [INFO] [stdout] | [INFO] [stdout] 822 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 822 - assert_eq!(false, ok); [INFO] [stdout] 822 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:844:9 [INFO] [stdout] | [INFO] [stdout] 844 | assert_eq!(true, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 844 - assert_eq!(true, ok); [INFO] [stdout] 844 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:867:9 [INFO] [stdout] | [INFO] [stdout] 867 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 867 - assert_eq!(false, ok); [INFO] [stdout] 867 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:889:9 [INFO] [stdout] | [INFO] [stdout] 889 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 889 - assert_eq!(false, ok); [INFO] [stdout] 889 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:912:9 [INFO] [stdout] | [INFO] [stdout] 912 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 912 - assert_eq!(false, ok); [INFO] [stdout] 912 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:938:9 [INFO] [stdout] | [INFO] [stdout] 938 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 938 - assert_eq!(false, ok); [INFO] [stdout] 938 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:955:9 [INFO] [stdout] | [INFO] [stdout] 955 | assert_eq!(true, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 955 - assert_eq!(true, ok); [INFO] [stdout] 955 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:985:9 [INFO] [stdout] | [INFO] [stdout] 985 | assert_eq!(true, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 985 - assert_eq!(true, ok); [INFO] [stdout] 985 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:1010:9 [INFO] [stdout] | [INFO] [stdout] 1010 | assert_eq!(true, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 1010 - assert_eq!(true, ok); [INFO] [stdout] 1010 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:1045:9 [INFO] [stdout] | [INFO] [stdout] 1045 | assert_eq!(ok, true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 1045 - assert_eq!(ok, true); [INFO] [stdout] 1045 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:1055:9 [INFO] [stdout] | [INFO] [stdout] 1055 | assert_eq!(true, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 1055 - assert_eq!(true, ok); [INFO] [stdout] 1055 + assert!(ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:1067:9 [INFO] [stdout] | [INFO] [stdout] 1067 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 1067 - assert_eq!(false, ok); [INFO] [stdout] 1067 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:1077:9 [INFO] [stdout] | [INFO] [stdout] 1077 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 1077 - assert_eq!(false, ok); [INFO] [stdout] 1077 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/state.rs:1088:9 [INFO] [stdout] | [INFO] [stdout] 1088 | assert_eq!(false, ok); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 1088 - assert_eq!(false, ok); [INFO] [stdout] 1088 + assert!(!ok); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Duration` which implements the `Copy` trait [INFO] [stdout] --> src/transport/client.rs:38:23 [INFO] [stdout] | [INFO] [stdout] 38 | let timeout = self.timeout.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.timeout` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/transport/client.rs:62:15 [INFO] [stdout] | [INFO] [stdout] 62 | .await [INFO] [stdout] | _______________^ [INFO] [stdout] 63 | | .map_err(|err| err)??; [INFO] [stdout] | |___________________________^ help: remove the call to `map_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] = note: `#[warn(clippy::map_identity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/transport/client.rs:76:15 [INFO] [stdout] | [INFO] [stdout] 76 | .await [INFO] [stdout] | _______________^ [INFO] [stdout] 77 | | .map_err(|err| err)??; [INFO] [stdout] | |___________________________^ help: remove the call to `map_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary map of the identity function [INFO] [stdout] --> src/transport/client.rs:84:15 [INFO] [stdout] | [INFO] [stdout] 84 | .await [INFO] [stdout] | _______________^ [INFO] [stdout] 85 | | .map_err(|err| err)??; [INFO] [stdout] | |___________________________^ help: remove the call to `map_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_identity [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.79s [INFO] running `Command { std: "docker" "inspect" "be6b5f698a461f77ca2dc4f971f4edab6e4fd8166b63a1262bee68db272d86af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "be6b5f698a461f77ca2dc4f971f4edab6e4fd8166b63a1262bee68db272d86af", kill_on_drop: false }` [INFO] [stdout] be6b5f698a461f77ca2dc4f971f4edab6e4fd8166b63a1262bee68db272d86af