[INFO] fetching crate sdcons 0.1.0...
[INFO] building sdcons-0.1.0 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate sdcons 0.1.0 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate sdcons 0.1.0
[INFO] finished tweaking crates.io crate sdcons 0.1.0
[INFO] tweaked toml for crates.io crate sdcons 0.1.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate sdcons 0.1.0 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 49 packages to latest compatible versions
[INFO] [stderr]       Adding rand v0.8.5 (available: v0.9.2)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.16)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bf95673439d6ba96669f10651d871ac57c780cbe0f4fc85c817f68605e321099
[INFO] running `Command { std: "docker" "start" "-a" "bf95673439d6ba96669f10651d871ac57c780cbe0f4fc85c817f68605e321099", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bf95673439d6ba96669f10651d871ac57c780cbe0f4fc85c817f68605e321099", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf95673439d6ba96669f10651d871ac57c780cbe0f4fc85c817f68605e321099", kill_on_drop: false }`
[INFO] [stdout] bf95673439d6ba96669f10651d871ac57c780cbe0f4fc85c817f68605e321099
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7cacb976427575ef3ad7ed165220ab62337ef4c5c198328e6478d3ac4a250be5
[INFO] running `Command { std: "docker" "start" "-a" "7cacb976427575ef3ad7ed165220ab62337ef4c5c198328e6478d3ac4a250be5", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v1.0.3
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling sdcons v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/sdcons/cons.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 20 | use log::{debug, error, info, trace, warn};
[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: `Entry`
[INFO] [stdout]   --> src/sdcons/progress.rs:20:33
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::types::{ConfigStage, Entry, EntryMeta, HardState, MemberState};
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/sdcons/progress.rs:22:26
[INFO] [stdout]    |
[INFO] [stdout] 22 | use chrono::{prelude::*, DateTime};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/sdcons/progress.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::{debug, error, info, trace, warn};
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/sdcons/storage.rs:20:33
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::collections::{HashMap, HashSet, VecDeque};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `warn`
[INFO] [stdout]   --> src/sdcons/storage.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::{debug, error, info, trace, warn};
[INFO] [stdout]    |                  ^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:264:44
[INFO] [stdout]     |
[INFO] [stdout] 264 |         e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:265:35
[INFO] [stdout]     |
[INFO] [stdout] 265 |         e.start_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:272:48
[INFO] [stdout]     |
[INFO] [stdout] 272 |             e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:280:48
[INFO] [stdout]     |
[INFO] [stdout] 280 |             e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:281:39
[INFO] [stdout]     |
[INFO] [stdout] 281 |             e.start_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/progress.rs:349:44
[INFO] [stdout]     |
[INFO] [stdout] 349 |             last_liveness_at: Local::now().timestamp_nanos(),
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]     --> src/sdcons/cons.rs:1410:37
[INFO] [stdout]      |
[INFO] [stdout] 1410 |     fn handle_read_reply(&mut self, from: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |                                     ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]      |
[INFO] [stdout] 1410 |     fn handle_read_reply(&mut self, _from: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |                                     +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `FIRST_USER_REQUEST`
[INFO] [stdout]      |
[INFO] [stdout] 1410 -     fn handle_read_reply(&mut self, from: u64, msg: ReadReplyMsg) {
[INFO] [stdout] 1410 +     fn handle_read_reply(&mut self, constant::FIRST_USER_REQUEST: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/sdcons/cons.rs:310:8
[INFO] [stdout]     |
[INFO] [stdout] 309 | impl TransferingRecord {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 310 |     fn new(channel_id: u64, to: u64) -> TransferingRecord {
[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 `choosen_id`, `pending_id`, and `applied_id` are never read
[INFO] [stdout]    --> src/sdcons/cons.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 461 | pub(crate) struct Sdcons {
[INFO] [stdout]     |                   ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 475 |     choosen_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 476 |     pending_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 477 |     applied_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Sdcons` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_index_student` and `is_channel_candidate` are never used
[INFO] [stdout]    --> src/sdcons/cons.rs:589:8
[INFO] [stdout]     |
[INFO] [stdout] 567 | impl Sdcons {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 589 |     fn is_index_student(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 603 |     fn is_channel_candidate(&self, channel_id: u64) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `node_id` is never read
[INFO] [stdout]    --> src/sdcons/progress.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct Progress {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 138 |     pub node_id: u64,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Progress` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_liveness_at` is never read
[INFO] [stdout]    --> src/sdcons/progress.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct ChannelInfo {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub last_liveness_at: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChannelInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `current_term` and `is_student` are never used
[INFO] [stdout]    --> src/sdcons/progress.rs:356:12
[INFO] [stdout]     |
[INFO] [stdout] 297 | impl ChannelInfo {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub fn current_term(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 639 |     pub fn is_student(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `member_id` is never read
[INFO] [stdout]   --> src/sdcons/storage.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(super) struct EntryQueue {
[INFO] [stdout]    |                   ---------- field in this struct
[INFO] [stdout] 30 |     pub member_id: u64,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EntryQueue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `first_entry_id`, `last_entry_meta`, `first_index_of_term`, and `last_stabled_entry_id` are never used
[INFO] [stdout]    --> src/sdcons/storage.rs:62:8
[INFO] [stdout]     |
[INFO] [stdout]  37 | impl EntryQueue {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn first_entry_id(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     fn last_entry_meta(&self) -> (u64, u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     fn first_index_of_term(&self, channel_term: u64) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     fn last_stabled_entry_id(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `range`, `applied_index_range`, and `entry_index_id` are never used
[INFO] [stdout]    --> src/sdcons/storage.rs:178:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl MemStorage {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 178 |     pub fn new(id: u64) -> MemStorage {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 410 |     pub fn range(&self, from: u64, to: u64, max_bytes: u64) -> Vec<Entry> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 594 |     pub fn applied_index_range(&self) -> (u64, u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 677 |     pub fn entry_index_id(&self, channel_id: u64, entry_id: u64) -> Option<u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.89s
[INFO] running `Command { std: "docker" "inspect" "7cacb976427575ef3ad7ed165220ab62337ef4c5c198328e6478d3ac4a250be5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7cacb976427575ef3ad7ed165220ab62337ef4c5c198328e6478d3ac4a250be5", kill_on_drop: false }`
[INFO] [stdout] 7cacb976427575ef3ad7ed165220ab62337ef4c5c198328e6478d3ac4a250be5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b34195b5241f04a3f5a84161ee9a413e914af073cc8956277ae0a62b40b1f5e6
[INFO] running `Command { std: "docker" "start" "-a" "b34195b5241f04a3f5a84161ee9a413e914af073cc8956277ae0a62b40b1f5e6", kill_on_drop: false }`
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling sdcons v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/sdcons/cons.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 20 | use log::{debug, error, info, trace, warn};
[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: `Entry`
[INFO] [stdout]   --> src/sdcons/progress.rs:20:33
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::types::{ConfigStage, Entry, EntryMeta, HardState, MemberState};
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/sdcons/progress.rs:22:26
[INFO] [stdout]    |
[INFO] [stdout] 22 | use chrono::{prelude::*, DateTime};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/sdcons/progress.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::{debug, error, info, trace, warn};
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/sdcons/storage.rs:20:33
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::collections::{HashMap, HashSet, VecDeque};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `warn`
[INFO] [stdout]   --> src/sdcons/storage.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::{debug, error, info, trace, warn};
[INFO] [stdout]    |                  ^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:264:44
[INFO] [stdout]     |
[INFO] [stdout] 264 |         e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:265:35
[INFO] [stdout]     |
[INFO] [stdout] 265 |         e.start_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:272:48
[INFO] [stdout]     |
[INFO] [stdout] 272 |             e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:280:48
[INFO] [stdout]     |
[INFO] [stdout] 280 |             e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:281:39
[INFO] [stdout]     |
[INFO] [stdout] 281 |             e.start_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/progress.rs:349:44
[INFO] [stdout]     |
[INFO] [stdout] 349 |             last_liveness_at: Local::now().timestamp_nanos(),
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/sdcons/cons.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 20 | use log::{debug, error, info, trace, warn};
[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: `Entry`
[INFO] [stdout]   --> src/sdcons/progress.rs:20:33
[INFO] [stdout]    |
[INFO] [stdout] 20 | use crate::types::{ConfigStage, Entry, EntryMeta, HardState, MemberState};
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DateTime`
[INFO] [stdout]   --> src/sdcons/progress.rs:22:26
[INFO] [stdout]    |
[INFO] [stdout] 22 | use chrono::{prelude::*, DateTime};
[INFO] [stdout]    |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error`
[INFO] [stdout]   --> src/sdcons/progress.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::{debug, error, info, trace, warn};
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HashSet`
[INFO] [stdout]   --> src/sdcons/storage.rs:20:33
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::collections::{HashMap, HashSet, VecDeque};
[INFO] [stdout]    |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error` and `warn`
[INFO] [stdout]   --> src/sdcons/storage.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::{debug, error, info, trace, warn};
[INFO] [stdout]    |                  ^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]     --> src/sdcons/cons.rs:1410:37
[INFO] [stdout]      |
[INFO] [stdout] 1410 |     fn handle_read_reply(&mut self, from: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |                                     ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]      |
[INFO] [stdout] 1410 |     fn handle_read_reply(&mut self, _from: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |                                     +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `FIRST_USER_REQUEST`
[INFO] [stdout]      |
[INFO] [stdout] 1410 -     fn handle_read_reply(&mut self, from: u64, msg: ReadReplyMsg) {
[INFO] [stdout] 1410 +     fn handle_read_reply(&mut self, constant::FIRST_USER_REQUEST: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:264:44
[INFO] [stdout]     |
[INFO] [stdout] 264 |         e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:265:35
[INFO] [stdout]     |
[INFO] [stdout] 265 |         e.start_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:272:48
[INFO] [stdout]     |
[INFO] [stdout] 272 |             e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:280:48
[INFO] [stdout]     |
[INFO] [stdout] 280 |             e.last_heartbeat_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/cons.rs:281:39
[INFO] [stdout]     |
[INFO] [stdout] 281 |             e.start_at = Local::now().timestamp_nanos();
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `chrono::DateTime::<Tz>::timestamp_nanos`: use `timestamp_nanos_opt()` instead
[INFO] [stdout]    --> src/sdcons/progress.rs:349:44
[INFO] [stdout]     |
[INFO] [stdout] 349 |             last_liveness_at: Local::now().timestamp_nanos(),
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/sdcons/cons.rs:310:8
[INFO] [stdout]     |
[INFO] [stdout] 309 | impl TransferingRecord {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 310 |     fn new(channel_id: u64, to: u64) -> TransferingRecord {
[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 `choosen_id`, `pending_id`, and `applied_id` are never read
[INFO] [stdout]    --> src/sdcons/cons.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 461 | pub(crate) struct Sdcons {
[INFO] [stdout]     |                   ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 475 |     choosen_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 476 |     pending_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 477 |     applied_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Sdcons` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_index_student` and `is_channel_candidate` are never used
[INFO] [stdout]    --> src/sdcons/cons.rs:589:8
[INFO] [stdout]     |
[INFO] [stdout] 567 | impl Sdcons {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 589 |     fn is_index_student(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 603 |     fn is_channel_candidate(&self, channel_id: u64) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `node_id` is never read
[INFO] [stdout]    --> src/sdcons/progress.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct Progress {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 138 |     pub node_id: u64,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Progress` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_liveness_at` is never read
[INFO] [stdout]    --> src/sdcons/progress.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct ChannelInfo {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub last_liveness_at: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChannelInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `current_term` and `is_student` are never used
[INFO] [stdout]    --> src/sdcons/progress.rs:356:12
[INFO] [stdout]     |
[INFO] [stdout] 297 | impl ChannelInfo {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub fn current_term(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 639 |     pub fn is_student(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `member_id` is never read
[INFO] [stdout]   --> src/sdcons/storage.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(super) struct EntryQueue {
[INFO] [stdout]    |                   ---------- field in this struct
[INFO] [stdout] 30 |     pub member_id: u64,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EntryQueue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `first_entry_id`, `last_entry_meta`, `first_index_of_term`, and `last_stabled_entry_id` are never used
[INFO] [stdout]    --> src/sdcons/storage.rs:62:8
[INFO] [stdout]     |
[INFO] [stdout]  37 | impl EntryQueue {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn first_entry_id(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     fn last_entry_meta(&self) -> (u64, u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     fn first_index_of_term(&self, channel_term: u64) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     fn last_stabled_entry_id(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `range`, `applied_index_range`, and `entry_index_id` are never used
[INFO] [stdout]    --> src/sdcons/storage.rs:178:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl MemStorage {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 178 |     pub fn new(id: u64) -> MemStorage {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 410 |     pub fn range(&self, from: u64, to: u64, max_bytes: u64) -> Vec<Entry> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 594 |     pub fn applied_index_range(&self) -> (u64, u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 677 |     pub fn entry_index_id(&self, channel_id: u64, entry_id: u64) -> Option<u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]     --> src/sdcons/cons.rs:1410:37
[INFO] [stdout]      |
[INFO] [stdout] 1410 |     fn handle_read_reply(&mut self, from: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |                                     ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]      |
[INFO] [stdout] 1410 |     fn handle_read_reply(&mut self, _from: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |                                     +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `FIRST_USER_REQUEST`
[INFO] [stdout]      |
[INFO] [stdout] 1410 -     fn handle_read_reply(&mut self, from: u64, msg: ReadReplyMsg) {
[INFO] [stdout] 1410 +     fn handle_read_reply(&mut self, constant::FIRST_USER_REQUEST: u64, msg: ReadReplyMsg) {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/sdcons/cons.rs:4244:13
[INFO] [stdout]      |
[INFO] [stdout] 4244 |         let mut log_meta = init_log_meta_with_default_members();
[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/sdcons/progress.rs:781:13
[INFO] [stdout]     |
[INFO] [stdout] 781 |         let mut hint_id = 5;
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/sdcons/cons.rs:310:8
[INFO] [stdout]     |
[INFO] [stdout] 309 | impl TransferingRecord {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] 310 |     fn new(channel_id: u64, to: u64) -> TransferingRecord {
[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 `choosen_id`, `pending_id`, and `applied_id` are never read
[INFO] [stdout]    --> src/sdcons/cons.rs:475:5
[INFO] [stdout]     |
[INFO] [stdout] 461 | pub(crate) struct Sdcons {
[INFO] [stdout]     |                   ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 475 |     choosen_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 476 |     pending_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 477 |     applied_id: u64,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Sdcons` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `task` is never used
[INFO] [stdout]     --> src/sdcons/cons.rs:2660:8
[INFO] [stdout]      |
[INFO] [stdout] 2660 |     fn task(value: u8) -> Task {
[INFO] [stdout]      |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `node_id` is never read
[INFO] [stdout]    --> src/sdcons/progress.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct Progress {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 138 |     pub node_id: u64,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Progress` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_liveness_at` is never read
[INFO] [stdout]    --> src/sdcons/progress.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 272 | pub struct ChannelInfo {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub last_liveness_at: i64,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ChannelInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `current_term` is never used
[INFO] [stdout]    --> src/sdcons/progress.rs:356:12
[INFO] [stdout]     |
[INFO] [stdout] 297 | impl ChannelInfo {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub fn current_term(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `member_id` is never read
[INFO] [stdout]   --> src/sdcons/storage.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(super) struct EntryQueue {
[INFO] [stdout]    |                   ---------- field in this struct
[INFO] [stdout] 30 |     pub member_id: u64,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EntryQueue` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `first_entry_id`, `last_entry_meta`, and `first_index_of_term` are never used
[INFO] [stdout]    --> src/sdcons/storage.rs:62:8
[INFO] [stdout]     |
[INFO] [stdout]  37 | impl EntryQueue {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  62 |     fn first_entry_id(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     fn last_entry_meta(&self) -> (u64, u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     fn first_index_of_term(&self, channel_term: u64) -> u64 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `range`, `applied_index_range`, and `entry_index_id` are never used
[INFO] [stdout]    --> src/sdcons/storage.rs:410:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl MemStorage {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 410 |     pub fn range(&self, from: u64, to: u64, max_bytes: u64) -> Vec<Entry> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 594 |     pub fn applied_index_range(&self) -> (u64, u64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 677 |     pub fn entry_index_id(&self, channel_id: u64, entry_id: u64) -> Option<u64> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.73s
[INFO] running `Command { std: "docker" "inspect" "b34195b5241f04a3f5a84161ee9a413e914af073cc8956277ae0a62b40b1f5e6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b34195b5241f04a3f5a84161ee9a413e914af073cc8956277ae0a62b40b1f5e6", kill_on_drop: false }`
[INFO] [stdout] b34195b5241f04a3f5a84161ee9a413e914af073cc8956277ae0a62b40b1f5e6
