[INFO] cloning repository https://github.com/Y-jiji/raft-luby
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Y-jiji/raft-luby" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FY-jiji%2Fraft-luby", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FY-jiji%2Fraft-luby'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 69130cd3fbd8ddd911c8f827e1eb3a562d0e75b4
[INFO] checking Y-jiji/raft-luby against master#507271bc119683008ec719ecee48814e8ac86c65 for pr-146440
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FY-jiji%2Fraft-luby" "/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/Y-jiji/raft-luby
[INFO] finished tweaking git repo https://github.com/Y-jiji/raft-luby
[INFO] tweaked toml for git repo https://github.com/Y-jiji/raft-luby written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Y-jiji/raft-luby on toolchain 507271bc119683008ec719ecee48814e8ac86c65
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+507271bc119683008ec719ecee48814e8ac86c65" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Y-jiji/raft-luby 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" "+507271bc119683008ec719ecee48814e8ac86c65" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+507271bc119683008ec719ecee48814e8ac86c65" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a498b7a5cf261e96496fc2c350bb5463cfed38dd4e48985a9e597d98beea4b51
[INFO] running `Command { std: "docker" "start" "-a" "a498b7a5cf261e96496fc2c350bb5463cfed38dd4e48985a9e597d98beea4b51", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a498b7a5cf261e96496fc2c350bb5463cfed38dd4e48985a9e597d98beea4b51", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a498b7a5cf261e96496fc2c350bb5463cfed38dd4e48985a9e597d98beea4b51", kill_on_drop: false }`
[INFO] [stdout] a498b7a5cf261e96496fc2c350bb5463cfed38dd4e48985a9e597d98beea4b51
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+507271bc119683008ec719ecee48814e8ac86c65" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 95adf48e81d7981265b4a8f092f3e8391e97c375f301581610eb7b0d7c15370c
[INFO] running `Command { std: "docker" "start" "-a" "95adf48e81d7981265b4a8f092f3e8391e97c375f301581610eb7b0d7c15370c", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling libc v0.2.168
[INFO] [stderr]    Compiling serde v1.0.216
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling auto_impl v1.2.0
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking coded-raft v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `raft_paper_proposal::*`
[INFO] [stdout]   --> src/lib.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) use raft_paper_proposal::*;
[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: `raft_paper_election::*`
[INFO] [stdout]   --> src/lib.rs:18:16
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) use raft_paper_election::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `raft_luby_proposal::*`
[INFO] [stdout]   --> src/lib.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) use raft_luby_proposal::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `raft_luby_election::*`
[INFO] [stdout]   --> src/lib.rs:28:16
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) use raft_luby_election::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `raft_paper_proposal::*`
[INFO] [stdout]   --> src/lib.rs:17:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) use raft_paper_proposal::*;
[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: `raft_paper_election::*`
[INFO] [stdout]   --> src/lib.rs:18:16
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) use raft_paper_election::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `raft_luby_proposal::*`
[INFO] [stdout]   --> src/lib.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) use raft_luby_proposal::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `raft_luby_election::*`
[INFO] [stdout]   --> src/lib.rs:28:16
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub(crate) use raft_luby_election::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/raft_luby_proposal.rs:27:30
[INFO] [stdout]    |
[INFO] [stdout] 27 |               adaptor.send(id, RaftLubyMsg::ReplicateReq {
[INFO] [stdout]    |  ______________________________^
[INFO] [stdout] 28 | |                 patch: (0..self.batch).map(|_| self.encode(disk)).collect::<Vec<_>>(), 
[INFO] [stdout] 29 | |                 leader: (self.term, self.id), 
[INFO] [stdout] 30 | |                 commit: self.commitable,
[INFO] [stdout] 31 | |                 prefix: todo!()
[INFO] [stdout]    | |                         ------- any code following this expression is unreachable
[INFO] [stdout] 32 | |             });
[INFO] [stdout]    | |_____________^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tail`
[INFO] [stdout]   --> src/raft_paper_proposal.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         tail: usize,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tail`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/raft_luby_proposal.rs:27:30
[INFO] [stdout]    |
[INFO] [stdout] 27 |               adaptor.send(id, RaftLubyMsg::ReplicateReq {
[INFO] [stdout]    |  ______________________________^
[INFO] [stdout] 28 | |                 patch: (0..self.batch).map(|_| self.encode(disk)).collect::<Vec<_>>(), 
[INFO] [stdout] 29 | |                 leader: (self.term, self.id), 
[INFO] [stdout] 30 | |                 commit: self.commitable,
[INFO] [stdout] 31 | |                 prefix: todo!()
[INFO] [stdout]    | |                         ------- any code following this expression is unreachable
[INFO] [stdout] 32 | |             });
[INFO] [stdout]    | |_____________^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/raft_luby_proposal.rs:41:82
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let d = 1 + self.degdist.iter().map(|x| {s += *x; s}).enumerate().find(|(i, x)| *x < r).unwrap().0;
[INFO] [stdout]    |                                                                                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/raft_luby_proposal.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let d = 1 + self.degdist.iter().map(|x| {s += *x; s}).enumerate().find(|(i, x)| *x < r).unwrap().0;
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tail`
[INFO] [stdout]   --> src/raft_luby_proposal.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         tail: usize,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tail`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/raft_luby_proposal.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         from: RaftId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `at`
[INFO] [stdout]    --> src/raft_luby_proposal.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         at: usize, disk: &mut impl Persistor<Proposal>
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `disk`
[INFO] [stdout]   --> src/raft_luby_election.rs:73:51
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn handle_vote_ack(&mut self, term: Term, disk: &mut impl Persistor<Proposal>) {
[INFO] [stdout]    |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_disk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `delay` is never read
[INFO] [stdout]   --> src/network.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct MockBurstNetwork<Msg> {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |     delay: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `batch`, `degdist`, `buff`, `commitable`, `timeout_heart`, and `bound_heart` are never read
[INFO] [stdout]   --> src/raft_luby_impl.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct RaftLubyImpl<Proposal> where
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub(crate) batch: usize,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 13 |     pub(crate) peers: Vec<RaftId>,
[INFO] [stdout] 14 |     pub(crate) degdist: Vec<f32>,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub(crate) buff: Vec<Codeword<Proposal>>,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 21 |     pub(crate) role: LubyRole,
[INFO] [stdout] 22 |     pub(crate) commitable: usize,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 23 |     pub(crate) timeout_elect: u64,
[INFO] [stdout] 24 |     pub(crate) timeout_heart: u64,
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub(crate) bound_elect: u64,
[INFO] [stdout] 26 |     pub(crate) bound_heart: u64,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `replicate`, `encode`, `handle_replicate`, `handle_replicate_ack`, and `handle_replicate_rej` are never used
[INFO] [stdout]    --> src/raft_luby_proposal.rs:19:19
[INFO] [stdout]     |
[INFO] [stdout]  14 | / impl<Proposal> RaftLubyImpl<Proposal> where
[INFO] [stdout]  15 | |     Proposal: Serialize + for<'de> Deserialize<'de> + Clone + Debug,
[INFO] [stdout]  16 | |     Proposal: BitXor<Proposal, Output = Proposal>
[INFO] [stdout]     | |_________________________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  19 |       pub(crate) fn replicate(&mut self, adaptor: &impl Adaptor<RaftLubyMsg<Proposal>>, disk: &mut impl Persistor<Proposal>) {
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  36 |       pub(crate) fn encode(&mut self, disk: &mut impl Persistor<Proposal>) -> Codeword<Proposal> {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |       pub(crate) fn handle_replicate(&mut self,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |       pub(crate) fn handle_replicate_ack(&mut self,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |       pub(crate) fn handle_replicate_rej(&mut self,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tail`
[INFO] [stdout]   --> src/raft_paper_proposal.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         tail: usize,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tail`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/raft_luby_proposal.rs:41:82
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let d = 1 + self.degdist.iter().map(|x| {s += *x; s}).enumerate().find(|(i, x)| *x < r).unwrap().0;
[INFO] [stdout]    |                                                                                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/raft_luby_proposal.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |         let d = 1 + self.degdist.iter().map(|x| {s += *x; s}).enumerate().find(|(i, x)| *x < r).unwrap().0;
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tail`
[INFO] [stdout]   --> src/raft_luby_proposal.rs:96:9
[INFO] [stdout]    |
[INFO] [stdout] 96 |         tail: usize,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_tail`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/raft_luby_proposal.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         from: RaftId,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `at`
[INFO] [stdout]    --> src/raft_luby_proposal.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         at: usize, disk: &mut impl Persistor<Proposal>
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `disk`
[INFO] [stdout]   --> src/raft_luby_election.rs:73:51
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn handle_vote_ack(&mut self, term: Term, disk: &mut impl Persistor<Proposal>) {
[INFO] [stdout]    |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_disk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `delay` is never read
[INFO] [stdout]   --> src/network.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct MockBurstNetwork<Msg> {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 52 |     delay: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `batch`, `degdist`, `buff`, `commitable`, `timeout_heart`, and `bound_heart` are never read
[INFO] [stdout]   --> src/raft_luby_impl.rs:12:16
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct RaftLubyImpl<Proposal> where
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub(crate) batch: usize,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout] 13 |     pub(crate) peers: Vec<RaftId>,
[INFO] [stdout] 14 |     pub(crate) degdist: Vec<f32>,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub(crate) buff: Vec<Codeword<Proposal>>,
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 21 |     pub(crate) role: LubyRole,
[INFO] [stdout] 22 |     pub(crate) commitable: usize,
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 23 |     pub(crate) timeout_elect: u64,
[INFO] [stdout] 24 |     pub(crate) timeout_heart: u64,
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 25 |     pub(crate) bound_elect: u64,
[INFO] [stdout] 26 |     pub(crate) bound_heart: u64,
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `replicate`, `encode`, `handle_replicate`, `handle_replicate_ack`, and `handle_replicate_rej` are never used
[INFO] [stdout]    --> src/raft_luby_proposal.rs:19:19
[INFO] [stdout]     |
[INFO] [stdout]  14 | / impl<Proposal> RaftLubyImpl<Proposal> where
[INFO] [stdout]  15 | |     Proposal: Serialize + for<'de> Deserialize<'de> + Clone + Debug,
[INFO] [stdout]  16 | |     Proposal: BitXor<Proposal, Output = Proposal>
[INFO] [stdout]     | |_________________________________________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  19 |       pub(crate) fn replicate(&mut self, adaptor: &impl Adaptor<RaftLubyMsg<Proposal>>, disk: &mut impl Persistor<Proposal>) {
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  36 |       pub(crate) fn encode(&mut self, disk: &mut impl Persistor<Proposal>) -> Codeword<Proposal> {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |       pub(crate) fn handle_replicate(&mut self,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |       pub(crate) fn handle_replicate_ack(&mut self,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |       pub(crate) fn handle_replicate_rej(&mut self,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.84s
[INFO] running `Command { std: "docker" "inspect" "95adf48e81d7981265b4a8f092f3e8391e97c375f301581610eb7b0d7c15370c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "95adf48e81d7981265b4a8f092f3e8391e97c375f301581610eb7b0d7c15370c", kill_on_drop: false }`
[INFO] [stdout] 95adf48e81d7981265b4a8f092f3e8391e97c375f301581610eb7b0d7c15370c
