[INFO] fetching crate pastry-dht 0.1.7...
[INFO] checking pastry-dht-0.1.7 against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] extracting crate pastry-dht 0.1.7 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate pastry-dht 0.1.7
[INFO] finished tweaking crates.io crate pastry-dht 0.1.7
[INFO] tweaked toml for crates.io crate pastry-dht 0.1.7 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate pastry-dht 0.1.7 on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate pastry-dht 0.1.7 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c2ef528a8a46a5b0e829d051e552590f407662631111949c1a45cbe9c6e72985
[INFO] running `Command { std: "docker" "start" "-a" "c2ef528a8a46a5b0e829d051e552590f407662631111949c1a45cbe9c6e72985", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c2ef528a8a46a5b0e829d051e552590f407662631111949c1a45cbe9c6e72985", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c2ef528a8a46a5b0e829d051e552590f407662631111949c1a45cbe9c6e72985", kill_on_drop: false }`
[INFO] [stdout] c2ef528a8a46a5b0e829d051e552590f407662631111949c1a45cbe9c6e72985
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 218c2c489aa4c54745489b56921e41cb95faef1d0f439fee9d58f9264b5343db
[INFO] running `Command { std: "docker" "start" "-a" "218c2c489aa4c54745489b56921e41cb95faef1d0f439fee9d58f9264b5343db", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling futures-core v0.3.29
[INFO] [stderr]     Checking memchr v2.6.3
[INFO] [stderr]     Checking futures-sink v0.3.29
[INFO] [stderr]    Compiling futures-channel v0.3.29
[INFO] [stderr]    Compiling futures-task v0.3.29
[INFO] [stderr]    Compiling futures-util v0.3.29
[INFO] [stderr]     Checking futures-io v0.3.29
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling anyhow v1.0.75
[INFO] [stderr]    Compiling rustversion v1.0.14
[INFO] [stderr]     Checking tracing-core v0.1.31
[INFO] [stderr]     Checking mio v0.8.8
[INFO] [stderr]     Checking socket2 v0.5.3
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]    Compiling rustix v0.38.13
[INFO] [stderr]     Checking http v0.2.9
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling bitflags v2.4.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.7
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking getrandom v0.2.10
[INFO] [stderr]    Compiling prettyplease v0.2.15
[INFO] [stderr]    Compiling regex-syntax v0.7.5
[INFO] [stderr]    Compiling hashbrown v0.14.0
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling async-trait v0.1.73
[INFO] [stderr]    Compiling fastrand v2.0.0
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling home v0.5.5
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]     Checking socket2 v0.4.9
[INFO] [stderr]     Checking smallvec v1.11.1
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling quote v1.0.33
[INFO] [stderr]     Checking tower-layer v0.3.2
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling multimap v0.8.3
[INFO] [stderr]    Compiling syn v2.0.32
[INFO] [stderr]    Compiling log v0.4.20
[INFO] [stderr]    Compiling serde v1.0.188
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking parking_lot_core v0.9.9
[INFO] [stderr]     Checking aho-corasick v1.0.5
[INFO] [stderr]     Checking percent-encoding v2.3.0
[INFO] [stderr]    Compiling indexmap v2.0.0
[INFO] [stderr]    Compiling axum-core v0.3.4
[INFO] [stderr]    Compiling axum v0.6.20
[INFO] [stderr]     Checking http-body v0.4.5
[INFO] [stderr]     Checking matchit v0.7.2
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking cpufeatures v0.2.9
[INFO] [stderr]     Checking base64 v0.21.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]    Compiling petgraph v0.6.4
[INFO] [stderr]    Compiling regex-automata v0.3.8
[INFO] [stderr]     Checking is-terminal v0.4.9
[INFO] [stderr]     Checking futures-executor v0.3.29
[INFO] [stderr]     Checking futures v0.3.29
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling tempfile v3.8.0
[INFO] [stderr]    Compiling regex v1.9.5
[INFO] [stderr]     Checking env_logger v0.10.0
[INFO] [stderr]    Compiling tokio-macros v2.1.0
[INFO] [stderr]    Compiling prost-derive v0.12.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.26
[INFO] [stderr]    Compiling pin-project-internal v1.1.3
[INFO] [stderr]    Compiling async-stream-impl v0.3.5
[INFO] [stderr]    Compiling serial_test_derive v2.0.0
[INFO] [stderr]     Checking serial_test v2.0.0
[INFO] [stderr]     Checking pin-project v1.1.3
[INFO] [stderr]     Checking async-stream v0.3.5
[INFO] [stderr]     Checking tokio v1.32.0
[INFO] [stderr]     Checking tracing v0.1.37
[INFO] [stderr]    Compiling prost v0.12.1
[INFO] [stderr]    Compiling prost-types v0.12.1
[INFO] [stderr]    Compiling prost-build v0.12.1
[INFO] [stderr]    Compiling tonic-build v0.10.2
[INFO] [stderr]    Compiling pastry-dht v0.1.7 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking tokio-util v0.7.8
[INFO] [stderr]     Checking tokio-io-timeout v1.2.0
[INFO] [stderr]     Checking tokio-stream v0.1.14
[INFO] [stderr]     Checking h2 v0.3.21
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking hyper v0.14.27
[INFO] [stderr]     Checking hyper-timeout v0.4.1
[INFO] [stderr]     Checking tonic v0.10.2
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/internal/dht/tests/join.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |         util::{self, get_neighbors},
[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: `Error`
[INFO] [stdout]    --> src/internal/pastry/leaf.rs:431:24
[INFO] [stdout]     |
[INFO] [stdout] 431 |     use crate::error::{Error, Result};
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error::*`, `pastry::shared::Config`, and `util::get_neighbors`
[INFO] [stdout]  --> src/internal/dht/tests/fail.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     error::*,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 3 |     internal::{pastry::shared::Config, util::get_neighbors},
[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: `log::info`
[INFO] [stdout]  --> src/internal/dht/tests/fail.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/internal/dht/tests/fail.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `node::*`, `service::grpc::*`, `setup::*`, and `util::*`
[INFO] [stdout]   --> src/internal/dht/tests/fail.rs:9:13
[INFO] [stdout]    |
[INFO] [stdout]  9 |     super::{node::*, service::grpc::*},
[INFO] [stdout]    |             ^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     setup::*,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 11 |     util::*,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tonic::Request`
[INFO] [stdout]  --> src/internal/dht/tests/join.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tonic::Request;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `error::*`, `get_neighbors`, `pastry::shared::Config`, and `self`
[INFO] [stdout]  --> src/internal/dht/tests/join.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     error::*,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 5 |     internal::{
[INFO] [stdout] 6 |         pastry::shared::Config,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 7 |         util::{self, get_neighbors},
[INFO] [stdout]   |                ^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `node::*`, `service::grpc::*`, `setup::*`, and `util::*`
[INFO] [stdout]   --> src/internal/dht/tests/join.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |     super::{node::*, service::grpc::*},
[INFO] [stdout]    |             ^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     setup::*,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 14 |     util::*,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::info`
[INFO] [stdout]  --> src/internal/dht/tests/query.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use log::info;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tonic::Request`
[INFO] [stdout]  --> src/internal/dht/tests/query.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tonic::Request;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `setup::*` and `super::service::grpc::*`
[INFO] [stdout]  --> src/internal/dht/tests/query.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{super::service::grpc::*, setup::*};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `dht::tests::util::find_responsible` and `pastry::shared::Config`
[INFO] [stdout]  --> src/internal/dht/tests/query.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         dht::tests::util::find_responsible, hring::hasher::Sha256Hasher, pastry::shared::Config,
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/internal/hring/hasher.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> src/internal/hring/ring.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `Result`
[INFO] [stdout]    --> src/internal/pastry/leaf.rs:431:24
[INFO] [stdout]     |
[INFO] [stdout] 431 |     use crate::error::{Error, Result};
[INFO] [stdout]     |                        ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/internal/util.rs:90:9
[INFO] [stdout]    |
[INFO] [stdout] 90 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `internal::dht::service::grpc::proto::QueryType::from_i32`: Use the TryFrom<i32> implementation instead
[INFO] [stdout]   --> src/internal/dht/service/query.rs:40:50
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...                   match QueryType::from_i32(req.query_type).unwrap() {
[INFO] [stdout]    |                                        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `internal::dht::service::grpc::proto::QueryType::from_i32`: Use the TryFrom<i32> implementation instead
[INFO] [stdout]   --> src/internal/dht/service/query.rs:40:50
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...                   match QueryType::from_i32(req.query_type).unwrap() {
[INFO] [stdout]    |                                        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `get_info`, `from_id`, `serve`, and `update_state` are never used
[INFO] [stdout]    --> src/internal/dht/node.rs:84:12
[INFO] [stdout]     |
[INFO] [stdout]  77 | impl Node {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn get_info(&self) -> NodeInfo {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn from_id(
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub async fn serve(&self) -> Result<JoinHandle<Result<()>>> {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub async fn update_state(self, leaf: Vec<NodeInfo>, table: Vec<NodeInfo>) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GetNodeIdResponse` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct GetNodeIdResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LeaveRequest` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct LeaveRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `list` is never used
[INFO] [stdout]   --> src/internal/dht/store.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Store {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn list(&self) -> Vec<(u64, &Vec<u8>)> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_random_key` is never used
[INFO] [stdout]   --> src/internal/dht/tests/query.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn get_random_key(i: i32) -> Result<u64> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INITIAL_PORT` is never used
[INFO] [stdout]   --> src/internal/dht/tests/setup.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const INITIAL_PORT: i32 = 30000;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkConfiguration` is never constructed
[INFO] [stdout]   --> src/internal/dht/tests/setup.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct NetworkConfiguration {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/internal/dht/tests/setup.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl NetworkConfiguration {
[INFO] [stdout]    | ------------------------- associated function in this implementation
[INFO] [stdout] 24 |     pub fn new(num_nodes: u32, pastry_conf: Config) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkNode` is never constructed
[INFO] [stdout]   --> src/internal/dht/tests/setup.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct NetworkNode {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Network` is never constructed
[INFO] [stdout]   --> src/internal/dht/tests/setup.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Network {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/internal/dht/tests/setup.rs:67:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl Network {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  67 |     pub fn new(conf: NetworkConfiguration) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn with_ids(mut self, ids: Vec<u64>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn with_logging(self, filter: log::LevelFilter) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub async fn init(self) -> Result<Self> {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub async fn init_by_join(mut self) -> Result<Self> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub async fn init_by_state(mut self) -> Result<Self> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub async fn add_node(&mut self) -> Result<NodeInfo> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     pub async fn add_node_with_id(&mut self, id: u64) -> Result<NodeInfo> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 286 |     async fn setup_node(&self, node: Node) -> Result<(NodeInfo, JoinHandle<Result<()>>)> {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 311 |     pub async fn get_random_node_connection(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn shutdown(self) -> () {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_ids` is never used
[INFO] [stdout]  --> src/internal/dht/tests/util.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn format_ids(vec: Vec<u64>) -> String {
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_responsible` is never used
[INFO] [stdout]   --> src/internal/dht/tests/util.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn find_responsible(nodes: &Vec<NetworkNode>, key: u64) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `hash_once_to_vec` is never used
[INFO] [stdout]   --> src/internal/hring/hasher.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Sha256Hasher {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn hash_once_to_vec(bytes: &[u8]) -> Vec<u8> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_max_size`, `get_filtered_entries`, `get_first_counter_clockwise_neighbor`, `get_first_clockwise_neighbor`, and `get_furthest_clockwise_neighbor` are never used
[INFO] [stdout]    --> src/internal/pastry/leaf.rs:60:12
[INFO] [stdout]     |
[INFO] [stdout]  24 | impl<T: Clone> LeafSet<T> {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub fn get_max_size(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn get_filtered_entries<F>(&self, filter: F) -> Vec<&T>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn get_first_counter_clockwise_neighbor(&self) -> Option<&T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn get_first_clockwise_neighbor(&self) -> Option<&T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn get_furthest_clockwise_neighbor(&self) -> Option<&T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `leafset_from_vec` is never used
[INFO] [stdout]    --> src/internal/pastry/leaf.rs:433:8
[INFO] [stdout]     |
[INFO] [stdout] 433 |     fn leafset_from_vec(k: usize, initial: u64, v: Vec<u64>) -> LeafSet<u64> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_to_vec` is never used
[INFO] [stdout]    --> src/internal/pastry/leaf.rs:444:8
[INFO] [stdout]     |
[INFO] [stdout] 444 |     fn set_to_vec<T: Clone>(leafset: &LeafSet<T>) -> Vec<u64> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_key` and `get_value` are never used
[INFO] [stdout]   --> src/internal/pastry/shared.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T, U> KeyValuePair<T, U> {
[INFO] [stdout]    | ----------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub fn get_key(&self) -> &T {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn get_value(&self) -> &U {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup` is never used
[INFO] [stdout]    --> src/internal/pastry/table.rs:166:8
[INFO] [stdout]     |
[INFO] [stdout] 166 |     fn setup() -> RoutingTable<u64> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_distance_between_unsigned` is never used
[INFO] [stdout]   --> src/internal/util.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_distance_between_unsigned<T>(a: T, b: T) -> T
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_neighbors` is never used
[INFO] [stdout]   --> src/internal/util.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub fn get_neighbors<T>(vector: &[T], index: usize, k: usize) -> Vec<&T> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:594:42
[INFO] [stdout]     |
[INFO] [stdout] 594 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 595 | |                         let inner = inner.0;
[INFO] [stdout] 596 | |                         let method = GetNodeStateSvc(inner);
[INFO] [stdout] 597 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 608 | |                         Ok(res)
[INFO] [stdout] 609 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:608:25
[INFO] [stdout]     |
[INFO] [stdout] 608 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:641:42
[INFO] [stdout]     |
[INFO] [stdout] 641 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 642 | |                         let inner = inner.0;
[INFO] [stdout] 643 | |                         let method = GetNodeTableEntrySvc(inner);
[INFO] [stdout] 644 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 655 | |                         Ok(res)
[INFO] [stdout] 656 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:655:25
[INFO] [stdout]     |
[INFO] [stdout] 655 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:685:42
[INFO] [stdout]     |
[INFO] [stdout] 685 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 686 | |                         let inner = inner.0;
[INFO] [stdout] 687 | |                         let method = JoinSvc(inner);
[INFO] [stdout] 688 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 699 | |                         Ok(res)
[INFO] [stdout] 700 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:699:25
[INFO] [stdout]     |
[INFO] [stdout] 699 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:729:42
[INFO] [stdout]     |
[INFO] [stdout] 729 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 730 | |                         let inner = inner.0;
[INFO] [stdout] 731 | |                         let method = QuerySvc(inner);
[INFO] [stdout] 732 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 743 | |                         Ok(res)
[INFO] [stdout] 744 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:743:25
[INFO] [stdout]     |
[INFO] [stdout] 743 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:776:42
[INFO] [stdout]     |
[INFO] [stdout] 776 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 777 | |                         let inner = inner.0;
[INFO] [stdout] 778 | |                         let method = TransferKeysSvc(inner);
[INFO] [stdout] 779 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 790 | |                         Ok(res)
[INFO] [stdout] 791 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:790:25
[INFO] [stdout]     |
[INFO] [stdout] 790 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:822:42
[INFO] [stdout]     |
[INFO] [stdout] 822 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 823 | |                         let inner = inner.0;
[INFO] [stdout] 824 | |                         let method = AnnounceArrivalSvc(inner);
[INFO] [stdout] 825 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 836 | |                         Ok(res)
[INFO] [stdout] 837 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:836:25
[INFO] [stdout]     |
[INFO] [stdout] 836 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:868:42
[INFO] [stdout]     |
[INFO] [stdout] 868 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 869 | |                         let inner = inner.0;
[INFO] [stdout] 870 | |                         let method = FixLeafSetSvc(inner);
[INFO] [stdout] 871 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 882 | |                         Ok(res)
[INFO] [stdout] 883 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:882:25
[INFO] [stdout]     |
[INFO] [stdout] 882 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:887:41
[INFO] [stdout]     |
[INFO] [stdout] 887 |                       Box::pin(async move {
[INFO] [stdout]     |  _________________________________________^
[INFO] [stdout] 888 | |                         Ok(
[INFO] [stdout] 889 | |                             http::Response::builder()
[INFO] [stdout] 890 | |                                 .status(200)
[INFO] [stdout] ...   |
[INFO] [stdout] 896 | |                     })
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:888:25
[INFO] [stdout]     |
[INFO] [stdout] 888 | /                         Ok(
[INFO] [stdout] 889 | |                             http::Response::builder()
[INFO] [stdout] 890 | |                                 .status(200)
[INFO] [stdout] 891 | |                                 .header("grpc-status", "12")
[INFO] [stdout] ...   |
[INFO] [stdout] 894 | |                                 .unwrap(),
[INFO] [stdout] 895 | |                         )
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<Vec<u8>, Infallible>
[INFO] [stdout]   --> src/internal/hring/hasher.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         hash_bytes.try_into().unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pastry-dht` (lib) due to 17 previous errors; 37 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: method `get_info` is never used
[INFO] [stdout]   --> src/internal/dht/node.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | impl Node {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn get_info(&self) -> NodeInfo {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GetNodeIdResponse` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct GetNodeIdResponse {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LeaveRequest` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct LeaveRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `list` is never used
[INFO] [stdout]   --> src/internal/dht/store.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Store {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn list(&self) -> Vec<(u64, &Vec<u8>)> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/internal/dht/tests/setup.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl NetworkConfiguration {
[INFO] [stdout]    | ------------------------- associated function in this implementation
[INFO] [stdout] 24 |     pub fn new(num_nodes: u32, pastry_conf: Config) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_logging` and `add_node` are never used
[INFO] [stdout]    --> src/internal/dht/tests/setup.rs:106:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl Network {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn with_logging(self, filter: log::LevelFilter) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub async fn add_node(&mut self) -> Result<NodeInfo> {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_max_size`, `get_filtered_entries`, `get_first_counter_clockwise_neighbor`, `get_first_clockwise_neighbor`, and `get_furthest_clockwise_neighbor` are never used
[INFO] [stdout]    --> src/internal/pastry/leaf.rs:60:12
[INFO] [stdout]     |
[INFO] [stdout]  24 | impl<T: Clone> LeafSet<T> {
[INFO] [stdout]     | ------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  60 |     pub fn get_max_size(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  83 |     pub fn get_filtered_entries<F>(&self, filter: F) -> Vec<&T>
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn get_first_counter_clockwise_neighbor(&self) -> Option<&T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn get_first_clockwise_neighbor(&self) -> Option<&T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn get_furthest_clockwise_neighbor(&self) -> Option<&T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_key` and `get_value` are never used
[INFO] [stdout]   --> src/internal/pastry/shared.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<T, U> KeyValuePair<T, U> {
[INFO] [stdout]    | ----------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub fn get_key(&self) -> &T {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn get_value(&self) -> &U {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_distance_between_unsigned` is never used
[INFO] [stdout]   --> src/internal/util.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_distance_between_unsigned<T>(a: T, b: T) -> T
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:594:42
[INFO] [stdout]     |
[INFO] [stdout] 594 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 595 | |                         let inner = inner.0;
[INFO] [stdout] 596 | |                         let method = GetNodeStateSvc(inner);
[INFO] [stdout] 597 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 608 | |                         Ok(res)
[INFO] [stdout] 609 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:608:25
[INFO] [stdout]     |
[INFO] [stdout] 608 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:641:42
[INFO] [stdout]     |
[INFO] [stdout] 641 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 642 | |                         let inner = inner.0;
[INFO] [stdout] 643 | |                         let method = GetNodeTableEntrySvc(inner);
[INFO] [stdout] 644 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 655 | |                         Ok(res)
[INFO] [stdout] 656 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:655:25
[INFO] [stdout]     |
[INFO] [stdout] 655 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:685:42
[INFO] [stdout]     |
[INFO] [stdout] 685 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 686 | |                         let inner = inner.0;
[INFO] [stdout] 687 | |                         let method = JoinSvc(inner);
[INFO] [stdout] 688 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 699 | |                         Ok(res)
[INFO] [stdout] 700 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:699:25
[INFO] [stdout]     |
[INFO] [stdout] 699 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:729:42
[INFO] [stdout]     |
[INFO] [stdout] 729 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 730 | |                         let inner = inner.0;
[INFO] [stdout] 731 | |                         let method = QuerySvc(inner);
[INFO] [stdout] 732 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 743 | |                         Ok(res)
[INFO] [stdout] 744 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:743:25
[INFO] [stdout]     |
[INFO] [stdout] 743 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:776:42
[INFO] [stdout]     |
[INFO] [stdout] 776 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 777 | |                         let inner = inner.0;
[INFO] [stdout] 778 | |                         let method = TransferKeysSvc(inner);
[INFO] [stdout] 779 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 790 | |                         Ok(res)
[INFO] [stdout] 791 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:790:25
[INFO] [stdout]     |
[INFO] [stdout] 790 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:822:42
[INFO] [stdout]     |
[INFO] [stdout] 822 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 823 | |                         let inner = inner.0;
[INFO] [stdout] 824 | |                         let method = AnnounceArrivalSvc(inner);
[INFO] [stdout] 825 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 836 | |                         Ok(res)
[INFO] [stdout] 837 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:836:25
[INFO] [stdout]     |
[INFO] [stdout] 836 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:868:42
[INFO] [stdout]     |
[INFO] [stdout] 868 |                       let fut = async move {
[INFO] [stdout]     |  __________________________________________^
[INFO] [stdout] 869 | |                         let inner = inner.0;
[INFO] [stdout] 870 | |                         let method = FixLeafSetSvc(inner);
[INFO] [stdout] 871 | |                         let codec = tonic::codec::ProstCodec::default();
[INFO] [stdout] ...   |
[INFO] [stdout] 882 | |                         Ok(res)
[INFO] [stdout] 883 | |                     };
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:882:25
[INFO] [stdout]     |
[INFO] [stdout] 882 |                         Ok(res)
[INFO] [stdout]     |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:887:41
[INFO] [stdout]     |
[INFO] [stdout] 887 |                       Box::pin(async move {
[INFO] [stdout]     |  _________________________________________^
[INFO] [stdout] 888 | |                         Ok(
[INFO] [stdout] 889 | |                             http::Response::builder()
[INFO] [stdout] 890 | |                                 .status(200)
[INFO] [stdout] ...   |
[INFO] [stdout] 896 | |                     })
[INFO] [stdout]     | |_____________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<response::Response<http_body::combinators::box_body::UnsyncBoxBody<prost::bytes::Bytes, Status>>, Infallible>
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/pastry-dht-5eca8312bbcc106f/out/dht.node.rs:888:25
[INFO] [stdout]     |
[INFO] [stdout] 888 | /                         Ok(
[INFO] [stdout] 889 | |                             http::Response::builder()
[INFO] [stdout] 890 | |                                 .status(200)
[INFO] [stdout] 891 | |                                 .header("grpc-status", "12")
[INFO] [stdout] ...   |
[INFO] [stdout] 894 | |                                 .unwrap(),
[INFO] [stdout] 895 | |                         )
[INFO] [stdout]     | |_________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<Vec<u8>, Infallible>
[INFO] [stdout]   --> src/internal/hring/hasher.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         hash_bytes.try_into().unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pastry-dht` (lib test) due to 17 previous errors; 12 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "218c2c489aa4c54745489b56921e41cb95faef1d0f439fee9d58f9264b5343db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "218c2c489aa4c54745489b56921e41cb95faef1d0f439fee9d58f9264b5343db", kill_on_drop: false }`
[INFO] [stdout] 218c2c489aa4c54745489b56921e41cb95faef1d0f439fee9d58f9264b5343db
