[INFO] fetching crate hotstuff_rs 0.4.0...
[INFO] testing hotstuff_rs-0.4.0 against beta-2026-03-05 for beta-1.95-1
[INFO] extracting crate hotstuff_rs 0.4.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate hotstuff_rs 0.4.0
[INFO] finished tweaking crates.io crate hotstuff_rs 0.4.0
[INFO] tweaked toml for crates.io crate hotstuff_rs 0.4.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate hotstuff_rs 0.4.0 on toolchain beta-2026-03-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "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" "+beta-2026-03-05" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 59 packages to latest compatible versions
[INFO] [stderr]       Adding base64 v0.21.7 (available: v0.22.1)
[INFO] [stderr]       Adding borsh v0.10.4 (available: v1.6.0)
[INFO] [stderr]       Adding fern v0.6.2 (available: v0.7.1)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding rand v0.7.3 (available: v0.10.0)
[INFO] [stderr]       Adding rand_core v0.6.4 (available: v0.10.0)
[INFO] [stderr]       Adding typed-builder v0.16.2 (available: v0.23.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-03-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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" "+beta-2026-03-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0fb085bb17c45ef370adf6fe88b8cfd6f0d8c12663686c9149cc383aa1a287ea
[INFO] running `Command { std: "docker" "start" "-a" "0fb085bb17c45ef370adf6fe88b8cfd6f0d8c12663686c9149cc383aa1a287ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0fb085bb17c45ef370adf6fe88b8cfd6f0d8c12663686c9149cc383aa1a287ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0fb085bb17c45ef370adf6fe88b8cfd6f0d8c12663686c9149cc383aa1a287ea", kill_on_drop: false }`
[INFO] [stdout] 0fb085bb17c45ef370adf6fe88b8cfd6f0d8c12663686c9149cc383aa1a287ea
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 53dc8ecca645c6bbe6e48f49126b05652b2c397234a8c0ac9ee512f1213cf1c3
[INFO] running `Command { std: "docker" "start" "-a" "53dc8ecca645c6bbe6e48f49126b05652b2c397234a8c0ac9ee512f1213cf1c3", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling fern v0.6.2
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling borsh-derive-internal v0.10.4
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.10.4
[INFO] [stderr]    Compiling borsh-derive v0.10.4
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling typed-builder-macro v0.16.2
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling typed-builder v0.16.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling hashbrown v0.13.2
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling borsh v0.10.4
[INFO] [stderr]    Compiling ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling hotstuff_rs v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: methods `chain_id` and `view` are never used
[INFO] [stdout]   --> src/types/signed_messages.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub(crate) trait Vote: SignedMessage {
[INFO] [stdout]    |                  ---- methods in this trait
[INFO] [stdout] 70 |     /// Get the `chain_id` of the chain that the `Vote` is about.
[INFO] [stdout] 71 |     fn chain_id(&self) -> ChainID;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn view(&self) -> ViewNumber;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `quorum` is never used
[INFO] [stdout]    --> src/types/signed_messages.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout]  80 | pub(crate) trait Certificate {
[INFO] [stdout]     |                  ----------- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 142 |     fn quorum(validator_set_power: TotalPower) -> TotalPower {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:592:21
[INFO] [stdout]     |
[INFO] [stdout] 592 |     UpdateViewError(UpdateViewError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 592 -     UpdateViewError(UpdateViewError),
[INFO] [stdout] 592 +     UpdateViewError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:595:21
[INFO] [stdout]     |
[INFO] [stdout] 595 |     ExtendViewError(ExtendViewError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 595 -     ExtendViewError(ExtendViewError),
[INFO] [stdout] 595 +     ExtendViewError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:598:20
[INFO] [stdout]     |
[INFO] [stdout] 598 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 598 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 598 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cur_view` and `next_view` are never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:626:9
[INFO] [stdout]     |
[INFO] [stdout] 624 |     NonIncreasingViewError {
[INFO] [stdout]     |     ---------------------- fields in this variant
[INFO] [stdout] 625 |         /// The current view.
[INFO] [stdout] 626 |         cur_view: ViewNumber,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 629 |         next_view: ViewNumber,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:635:27
[INFO] [stdout]     |
[INFO] [stdout] 635 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stdout]     |     -------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:642:33
[INFO] [stdout]     |
[INFO] [stdout] 642 |     TriedToExtendNonEpochView { view: ViewNumber },
[INFO] [stdout]     |     -------------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:645:27
[INFO] [stdout]     |
[INFO] [stdout] 645 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stdout]     |     -------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/hotstuff/implementation.rs:683:20
[INFO] [stdout]     |
[INFO] [stdout] 683 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HotStuffError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 683 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 683 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/block_sync/client.rs:585:20
[INFO] [stdout]     |
[INFO] [stdout] 585 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BlockSyncClientError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 585 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 585 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/app.rs:258:23
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<K> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                       |         ||
[INFO] [stdout]     |                       |         |the same lifetime is hidden here
[INFO] [stdout]     |                       |         the same lifetime is elided here
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<'_, K> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/types/update_sets.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn inserts(&self) -> hash_map::Iter<K, V> {
[INFO] [stdout]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn inserts(&self) -> hash_map::Iter<'_, K, V> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/types/update_sets.rs:77:20
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn deletes(&self) -> hash_set::Iter<K> {
[INFO] [stdout]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn deletes(&self) -> hash_set::Iter<'_, K> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/types/validator_set.rs:121:23
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn validators(&self) -> slice::Iter<VerifyingKey> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn validators(&self) -> slice::Iter<'_, VerifyingKey> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/block_tree/pluggables.rs:29:49
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stdout]    |                      --                         ^^ the same lifetime is elided here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'b`
[INFO] [stdout]    |
[INFO] [stdout] 29 -     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stdout] 29 +     fn snapshot<'b>(&'b self) -> Self::Snapshot<'b>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.46s
[INFO] running `Command { std: "docker" "inspect" "53dc8ecca645c6bbe6e48f49126b05652b2c397234a8c0ac9ee512f1213cf1c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53dc8ecca645c6bbe6e48f49126b05652b2c397234a8c0ac9ee512f1213cf1c3", kill_on_drop: false }`
[INFO] [stdout] 53dc8ecca645c6bbe6e48f49126b05652b2c397234a8c0ac9ee512f1213cf1c3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5452d620238d44239139b9e928be86b27621c925f5bdb8d5240ed730c4676e1a
[INFO] running `Command { std: "docker" "start" "-a" "5452d620238d44239139b9e928be86b27621c925f5bdb8d5240ed730c4676e1a", kill_on_drop: false }`
[INFO] [stdout] warning: methods `chain_id` and `view` are never used
[INFO] [stdout]   --> src/types/signed_messages.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub(crate) trait Vote: SignedMessage {
[INFO] [stdout]    |                  ---- methods in this trait
[INFO] [stdout] 70 |     /// Get the `chain_id` of the chain that the `Vote` is about.
[INFO] [stdout] 71 |     fn chain_id(&self) -> ChainID;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn view(&self) -> ViewNumber;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `quorum` is never used
[INFO] [stdout]    --> src/types/signed_messages.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout]  80 | pub(crate) trait Certificate {
[INFO] [stdout]     |                  ----------- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 142 |     fn quorum(validator_set_power: TotalPower) -> TotalPower {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:592:21
[INFO] [stdout]     |
[INFO] [stdout] 592 |     UpdateViewError(UpdateViewError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 592 -     UpdateViewError(UpdateViewError),
[INFO] [stdout] 592 +     UpdateViewError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:595:21
[INFO] [stdout]     |
[INFO] [stdout] 595 |     ExtendViewError(ExtendViewError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 595 -     ExtendViewError(ExtendViewError),
[INFO] [stdout] 595 +     ExtendViewError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:598:20
[INFO] [stdout]     |
[INFO] [stdout] 598 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 598 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 598 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cur_view` and `next_view` are never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:626:9
[INFO] [stdout]     |
[INFO] [stdout] 624 |     NonIncreasingViewError {
[INFO] [stdout]     |     ---------------------- fields in this variant
[INFO] [stdout] 625 |         /// The current view.
[INFO] [stdout] 626 |         cur_view: ViewNumber,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 629 |         next_view: ViewNumber,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:635:27
[INFO] [stdout]     |
[INFO] [stdout] 635 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stdout]     |     -------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling hotstuff_rs v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:642:33
[INFO] [stdout]     |
[INFO] [stdout] 642 |     TriedToExtendNonEpochView { view: ViewNumber },
[INFO] [stdout]     |     -------------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:645:27
[INFO] [stdout]     |
[INFO] [stdout] 645 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stdout]     |     -------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/hotstuff/implementation.rs:683:20
[INFO] [stdout]     |
[INFO] [stdout] 683 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HotStuffError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 683 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 683 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/block_sync/client.rs:585:20
[INFO] [stdout]     |
[INFO] [stdout] 585 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BlockSyncClientError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 585 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 585 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/app.rs:258:23
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<K> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                       |         ||
[INFO] [stdout]     |                       |         |the same lifetime is hidden here
[INFO] [stdout]     |                       |         the same lifetime is elided here
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<'_, K> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/types/update_sets.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn inserts(&self) -> hash_map::Iter<K, V> {
[INFO] [stdout]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn inserts(&self) -> hash_map::Iter<'_, K, V> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/types/update_sets.rs:77:20
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn deletes(&self) -> hash_set::Iter<K> {
[INFO] [stdout]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn deletes(&self) -> hash_set::Iter<'_, K> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/types/validator_set.rs:121:23
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn validators(&self) -> slice::Iter<VerifyingKey> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn validators(&self) -> slice::Iter<'_, VerifyingKey> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/block_tree/pluggables.rs:29:49
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stdout]    |                      --                         ^^ the same lifetime is elided here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'b`
[INFO] [stdout]    |
[INFO] [stdout] 29 -     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stdout] 29 +     fn snapshot<'b>(&'b self) -> Self::Snapshot<'b>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verifying_key` is never read
[INFO] [stdout]   --> tests/common/node.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub(crate) struct Node {
[INFO] [stdout]    |                   ---- field in this struct
[INFO] [stdout] 39 |     verifying_key: VerifyingKeyBytes,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `committed_validator_set` and `verifying_key` are never used
[INFO] [stdout]    --> tests/common/node.rs:116:19
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl Node {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub(crate) fn committed_validator_set(&self) -> ValidatorSet {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub(crate) fn verifying_key(&self) -> VerifyingKeyBytes {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `number` and `highest_view_entered` are never used
[INFO] [stdout]    --> tests/common/node.rs:111:19
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl Node {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub(crate) fn number(&self) -> u32 {
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub(crate) fn highest_view_entered(&self) -> ViewNumber {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `number` is never used
[INFO] [stdout]   --> tests/common/number_app.rs:80:19
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl NumberApp {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 80 |     pub(crate) fn number<S: KVGet>(block_tree: BlockTreeSnapshot<S>) -> u32 {
[INFO] [stdout]    |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `verifying_key` is never read
[INFO] [stdout]   --> tests/common/node.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub(crate) struct Node {
[INFO] [stdout]    |                   ---- field in this struct
[INFO] [stdout] 39 |     verifying_key: VerifyingKeyBytes,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `committed_validator_set`, `highest_view_entered`, and `verifying_key` are never used
[INFO] [stdout]    --> tests/common/node.rs:116:19
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl Node {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub(crate) fn committed_validator_set(&self) -> ValidatorSet {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub(crate) fn highest_view_entered(&self) -> ViewNumber {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub(crate) fn verifying_key(&self) -> VerifyingKeyBytes {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `highest_view_entered` is never used
[INFO] [stdout]    --> tests/common/node.rs:125:19
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl Node {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub(crate) fn highest_view_entered(&self) -> ViewNumber {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `chain_id` and `view` are never used
[INFO] [stdout]   --> src/types/signed_messages.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub(crate) trait Vote: SignedMessage {
[INFO] [stdout]    |                  ---- methods in this trait
[INFO] [stdout] 70 |     /// Get the `chain_id` of the chain that the `Vote` is about.
[INFO] [stdout] 71 |     fn chain_id(&self) -> ChainID;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn view(&self) -> ViewNumber;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `quorum` is never used
[INFO] [stdout]    --> src/types/signed_messages.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout]  80 | pub(crate) trait Certificate {
[INFO] [stdout]     |                  ----------- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 142 |     fn quorum(validator_set_power: TotalPower) -> TotalPower {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:592:21
[INFO] [stdout]     |
[INFO] [stdout] 592 |     UpdateViewError(UpdateViewError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 592 -     UpdateViewError(UpdateViewError),
[INFO] [stdout] 592 +     UpdateViewError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:595:21
[INFO] [stdout]     |
[INFO] [stdout] 595 |     ExtendViewError(ExtendViewError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 595 -     ExtendViewError(ExtendViewError),
[INFO] [stdout] 595 +     ExtendViewError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:598:20
[INFO] [stdout]     |
[INFO] [stdout] 598 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 598 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 598 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cur_view` and `next_view` are never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:626:9
[INFO] [stdout]     |
[INFO] [stdout] 624 |     NonIncreasingViewError {
[INFO] [stdout]     |     ---------------------- fields in this variant
[INFO] [stdout] 625 |         /// The current view.
[INFO] [stdout] 626 |         cur_view: ViewNumber,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 629 |         next_view: ViewNumber,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:635:27
[INFO] [stdout]     |
[INFO] [stdout] 635 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stdout]     |     -------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:642:33
[INFO] [stdout]     |
[INFO] [stdout] 642 |     TriedToExtendNonEpochView { view: ViewNumber },
[INFO] [stdout]     |     -------------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view` is never read
[INFO] [stdout]    --> src/pacemaker/implementation.rs:645:27
[INFO] [stdout]     |
[INFO] [stdout] 645 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stdout]     |     -------------------   ^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/hotstuff/implementation.rs:683:20
[INFO] [stdout]     |
[INFO] [stdout] 683 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `HotStuffError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 683 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 683 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/block_sync/client.rs:585:20
[INFO] [stdout]     |
[INFO] [stdout] 585 |     BlockTreeError(BlockTreeError),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BlockSyncClientError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 585 -     BlockTreeError(BlockTreeError),
[INFO] [stdout] 585 +     BlockTreeError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/app.rs:258:23
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<K> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                       |         ||
[INFO] [stdout]     |                       |         |the same lifetime is hidden here
[INFO] [stdout]     |                       |         the same lifetime is elided here
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<'_, K> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/types/update_sets.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn inserts(&self) -> hash_map::Iter<K, V> {
[INFO] [stdout]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 72 |     pub fn inserts(&self) -> hash_map::Iter<'_, K, V> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/types/update_sets.rs:77:20
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn deletes(&self) -> hash_set::Iter<K> {
[INFO] [stdout]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     pub fn deletes(&self) -> hash_set::Iter<'_, K> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/types/validator_set.rs:121:23
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn validators(&self) -> slice::Iter<VerifyingKey> {
[INFO] [stdout]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub fn validators(&self) -> slice::Iter<'_, VerifyingKey> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/block_tree/pluggables.rs:29:49
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stdout]    |                      --                         ^^ the same lifetime is elided here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'b`
[INFO] [stdout]    |
[INFO] [stdout] 29 -     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stdout] 29 +     fn snapshot<'b>(&'b self) -> Self::Snapshot<'b>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 6.03s
[INFO] running `Command { std: "docker" "inspect" "5452d620238d44239139b9e928be86b27621c925f5bdb8d5240ed730c4676e1a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5452d620238d44239139b9e928be86b27621c925f5bdb8d5240ed730c4676e1a", kill_on_drop: false }`
[INFO] [stdout] 5452d620238d44239139b9e928be86b27621c925f5bdb8d5240ed730c4676e1a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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" "+beta-2026-03-05" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] eafce56db89525670df3f8daa9ab380275bddb62ab8c99ed2ae9f950e078f505
[INFO] running `Command { std: "docker" "start" "-a" "eafce56db89525670df3f8daa9ab380275bddb62ab8c99ed2ae9f950e078f505", kill_on_drop: false }`
[INFO] [stderr] warning: methods `chain_id` and `view` are never used
[INFO] [stderr]   --> src/types/signed_messages.rs:71:8
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub(crate) trait Vote: SignedMessage {
[INFO] [stderr]    |                  ---- methods in this trait
[INFO] [stderr] 70 |     /// Get the `chain_id` of the chain that the `Vote` is about.
[INFO] [stderr] 71 |     fn chain_id(&self) -> ChainID;
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 |     fn view(&self) -> ViewNumber;
[INFO] [stderr]    |        ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `quorum` is never used
[INFO] [stderr]    --> src/types/signed_messages.rs:142:8
[INFO] [stderr]     |
[INFO] [stderr]  80 | pub(crate) trait Certificate {
[INFO] [stderr]     |                  ----------- associated function in this trait
[INFO] [stderr] ...
[INFO] [stderr] 142 |     fn quorum(validator_set_power: TotalPower) -> TotalPower {
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/pacemaker/implementation.rs:592:21
[INFO] [stderr]     |
[INFO] [stderr] 592 |     UpdateViewError(UpdateViewError),
[INFO] [stderr]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]     |
[INFO] [stderr] 592 -     UpdateViewError(UpdateViewError),
[INFO] [stderr] 592 +     UpdateViewError(()),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/pacemaker/implementation.rs:595:21
[INFO] [stderr]     |
[INFO] [stderr] 595 |     ExtendViewError(ExtendViewError),
[INFO] [stderr]     |     --------------- ^^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]     |
[INFO] [stderr] 595 -     ExtendViewError(ExtendViewError),
[INFO] [stderr] 595 +     ExtendViewError(()),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/pacemaker/implementation.rs:598:20
[INFO] [stderr]     |
[INFO] [stderr] 598 |     BlockTreeError(BlockTreeError),
[INFO] [stderr]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `PacemakerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]     |
[INFO] [stderr] 598 -     BlockTreeError(BlockTreeError),
[INFO] [stderr] 598 +     BlockTreeError(()),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: fields `cur_view` and `next_view` are never read
[INFO] [stderr]    --> src/pacemaker/implementation.rs:626:9
[INFO] [stderr]     |
[INFO] [stderr] 624 |     NonIncreasingViewError {
[INFO] [stderr]     |     ---------------------- fields in this variant
[INFO] [stderr] 625 |         /// The current view.
[INFO] [stderr] 626 |         cur_view: ViewNumber,
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 629 |         next_view: ViewNumber,
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `view` is never read
[INFO] [stderr]    --> src/pacemaker/implementation.rs:635:27
[INFO] [stderr]     |
[INFO] [stderr] 635 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stderr]     |     -------------------   ^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UpdateViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `view` is never read
[INFO] [stderr]    --> src/pacemaker/implementation.rs:642:33
[INFO] [stderr]     |
[INFO] [stderr] 642 |     TriedToExtendNonEpochView { view: ViewNumber },
[INFO] [stderr]     |     -------------------------   ^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `view` is never read
[INFO] [stderr]    --> src/pacemaker/implementation.rs:645:27
[INFO] [stderr]     |
[INFO] [stderr] 645 |     GetViewTimeoutError { view: ViewNumber },
[INFO] [stderr]     |     -------------------   ^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ExtendViewError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/hotstuff/implementation.rs:683:20
[INFO] [stderr]     |
[INFO] [stderr] 683 |     BlockTreeError(BlockTreeError),
[INFO] [stderr]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `HotStuffError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]     |
[INFO] [stderr] 683 -     BlockTreeError(BlockTreeError),
[INFO] [stderr] 683 +     BlockTreeError(()),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/block_sync/client.rs:585:20
[INFO] [stderr]     |
[INFO] [stderr] 585 |     BlockTreeError(BlockTreeError),
[INFO] [stderr]     |     -------------- ^^^^^^^^^^^^^^
[INFO] [stderr]     |     |
[INFO] [stderr]     |     field in this variant
[INFO] [stderr]     |
[INFO] [stderr]     = note: `BlockSyncClientError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]     |
[INFO] [stderr] 585 -     BlockTreeError(BlockTreeError),
[INFO] [stderr] 585 +     BlockTreeError(()),
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/app.rs:258:23
[INFO] [stderr]     |
[INFO] [stderr] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<K> {
[INFO] [stderr]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                       |         ||
[INFO] [stderr]     |                       |         |the same lifetime is hidden here
[INFO] [stderr]     |                       |         the same lifetime is elided here
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 258 |     pub fn block_tree(&self) -> &AppBlockTreeView<'_, K> {
[INFO] [stderr]     |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/types/update_sets.rs:72:20
[INFO] [stderr]    |
[INFO] [stderr] 72 |     pub fn inserts(&self) -> hash_map::Iter<K, V> {
[INFO] [stderr]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                    |
[INFO] [stderr]    |                    the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 72 |     pub fn inserts(&self) -> hash_map::Iter<'_, K, V> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/types/update_sets.rs:77:20
[INFO] [stderr]    |
[INFO] [stderr] 77 |     pub fn deletes(&self) -> hash_set::Iter<K> {
[INFO] [stderr]    |                    ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                    |
[INFO] [stderr]    |                    the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 77 |     pub fn deletes(&self) -> hash_set::Iter<'_, K> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/types/validator_set.rs:121:23
[INFO] [stderr]     |
[INFO] [stderr] 121 |     pub fn validators(&self) -> slice::Iter<VerifyingKey> {
[INFO] [stderr]     |                       ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                       |
[INFO] [stderr]     |                       the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 121 |     pub fn validators(&self) -> slice::Iter<'_, VerifyingKey> {
[INFO] [stderr]     |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/block_tree/pluggables.rs:29:49
[INFO] [stderr]    |
[INFO] [stderr] 29 |     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stderr]    |                      --                         ^^ the same lifetime is elided here
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'b`
[INFO] [stderr]    |
[INFO] [stderr] 29 -     fn snapshot<'b>(&'b self) -> Self::Snapshot<'_>;
[INFO] [stderr] 29 +     fn snapshot<'b>(&'b self) -> Self::Snapshot<'b>;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `hotstuff_rs` (lib) generated 16 warnings (run `cargo fix --lib -p hotstuff_rs` to apply 5 suggestions)
[INFO] [stderr] warning: method `highest_view_entered` is never used
[INFO] [stderr]    --> tests/common/node.rs:125:19
[INFO] [stderr]     |
[INFO] [stderr]  44 | impl Node {
[INFO] [stderr]     | --------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 125 |     pub(crate) fn highest_view_entered(&self) -> ViewNumber {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `verifying_key` is never read
[INFO] [stderr]   --> tests/common/node.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 38 | pub(crate) struct Node {
[INFO] [stderr]    |                   ---- field in this struct
[INFO] [stderr] 39 |     verifying_key: VerifyingKeyBytes,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `committed_validator_set`, `highest_view_entered`, and `verifying_key` are never used
[INFO] [stderr]    --> tests/common/node.rs:116:19
[INFO] [stderr]     |
[INFO] [stderr]  44 | impl Node {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 116 |     pub(crate) fn committed_validator_set(&self) -> ValidatorSet {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 125 |     pub(crate) fn highest_view_entered(&self) -> ViewNumber {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 134 |     pub(crate) fn verifying_key(&self) -> VerifyingKeyBytes {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `committed_validator_set` and `verifying_key` are never used
[INFO] [stderr]    --> tests/common/node.rs:116:19
[INFO] [stderr]     |
[INFO] [stderr]  44 | impl Node {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 116 |     pub(crate) fn committed_validator_set(&self) -> ValidatorSet {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 134 |     pub(crate) fn verifying_key(&self) -> VerifyingKeyBytes {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `number` and `highest_view_entered` are never used
[INFO] [stderr]    --> tests/common/node.rs:111:19
[INFO] [stderr]     |
[INFO] [stderr]  44 | impl Node {
[INFO] [stderr]     | --------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 111 |     pub(crate) fn number(&self) -> u32 {
[INFO] [stderr]     |                   ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 125 |     pub(crate) fn highest_view_entered(&self) -> ViewNumber {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `number` is never used
[INFO] [stderr]   --> tests/common/number_app.rs:80:19
[INFO] [stderr]    |
[INFO] [stderr] 61 | impl NumberApp {
[INFO] [stderr]    | -------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 80 |     pub(crate) fn number<S: KVGet>(block_tree: BlockTreeSnapshot<S>) -> u32 {
[INFO] [stderr]    |                   ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `hotstuff_rs` (test "progress_and_validator_set_update_test") generated 1 warning
[INFO] [stderr] warning: `hotstuff_rs` (test "block_sync_test") generated 2 warnings
[INFO] [stderr] warning: `hotstuff_rs` (test "pacemaker_initial_view_sync_test") generated 2 warnings (1 duplicate)
[INFO] [stderr] warning: `hotstuff_rs` (test "multiple_validator_set_updates_test") generated 2 warnings
[INFO] [stderr] warning: `hotstuff_rs` (lib test) generated 16 warnings (16 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/hotstuff_rs-860de27b15d9cc86)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test pacemaker::implementation::select_leader_fairness_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/block_sync_test.rs (/opt/rustwide/target/debug/deps/block_sync_test-35c351576f7bbba9)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test block_sync_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 13.40s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/multiple_validator_set_updates_test.rs (/opt/rustwide/target/debug/deps/multiple_validator_set_updates_test-d2e382806b4cc1bc)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test multiple_validator_set_updates_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 40.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/pacemaker_initial_view_sync_test.rs (/opt/rustwide/target/debug/deps/pacemaker_initial_view_sync_test-5acdc6a08d08eeaf)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test pacemaker_initial_view_sync_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 12.27s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/progress_and_validator_set_update_test.rs (/opt/rustwide/target/debug/deps/progress_and_validator_set_update_test-79130a1817947f94)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test progress_and_validator_set_update_test has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "eafce56db89525670df3f8daa9ab380275bddb62ab8c99ed2ae9f950e078f505", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "eafce56db89525670df3f8daa9ab380275bddb62ab8c99ed2ae9f950e078f505", kill_on_drop: false }`
[INFO] [stdout] eafce56db89525670df3f8daa9ab380275bddb62ab8c99ed2ae9f950e078f505
