[INFO] cloning repository https://github.com/rootHytx/bloccChainz
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rootHytx/bloccChainz" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FrootHytx%2FbloccChainz", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FrootHytx%2FbloccChainz'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7ecf93e9deede8b0e0a1ae830a37d4395bab2014
[INFO] checking rootHytx/bloccChainz against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FrootHytx%2FbloccChainz" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/rootHytx/bloccChainz
[INFO] finished tweaking git repo https://github.com/rootHytx/bloccChainz
[INFO] tweaked toml for git repo https://github.com/rootHytx/bloccChainz written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/rootHytx/bloccChainz on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/rootHytx/bloccChainz 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" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tonic-build v0.11.0
[INFO] [stderr]   Downloaded prost-derive v0.12.4
[INFO] [stderr]   Downloaded block-buffer v0.11.0-pre.5
[INFO] [stderr]   Downloaded hybrid-array v0.2.0-rc.8
[INFO] [stderr]   Downloaded crypto-common v0.2.0-pre.5
[INFO] [stderr]   Downloaded digest v0.11.0-pre.8
[INFO] [stderr]   Downloaded rand_chacha v0.9.0-alpha.1
[INFO] [stderr]   Downloaded neli-proc-macros v0.1.3
[INFO] [stderr]   Downloaded rand v0.9.0-alpha.1
[INFO] [stderr]   Downloaded prettyplease v0.2.19
[INFO] [stderr]   Downloaded prost-types v0.12.4
[INFO] [stderr]   Downloaded zerocopy v0.8.0-alpha.6
[INFO] [stderr]   Downloaded neli v0.6.4
[INFO] [stderr]   Downloaded syn v2.0.59
[INFO] [stderr]   Downloaded local-ip-address v0.6.1
[INFO] [stderr]   Downloaded proc-macro2 v1.0.80
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.0-alpha.6
[INFO] [stderr]   Downloaded cc v1.0.94
[INFO] [stderr]   Downloaded rand_core v0.9.0-alpha.1
[INFO] [stderr]   Downloaded tonic v0.11.0
[INFO] [stderr]   Downloaded prost v0.12.4
[INFO] [stderr]   Downloaded prost-build v0.12.4
[INFO] [stderr]   Downloaded openssl-src v300.2.3+3.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f237849539af96074498eb6a15e38825a8b4b6a242b8d1575e10ee15dbdf9183
[INFO] running `Command { std: "docker" "start" "-a" "f237849539af96074498eb6a15e38825a8b4b6a242b8d1575e10ee15dbdf9183", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f237849539af96074498eb6a15e38825a8b4b6a242b8d1575e10ee15dbdf9183", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f237849539af96074498eb6a15e38825a8b4b6a242b8d1575e10ee15dbdf9183", kill_on_drop: false }`
[INFO] [stdout] f237849539af96074498eb6a15e38825a8b4b6a242b8d1575e10ee15dbdf9183
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cd93505590a6be102897a0a41f20bf8981f1fc2e266ba42ab4c1e33d7fdc5418
[INFO] running `Command { std: "docker" "start" "-a" "cd93505590a6be102897a0a41f20bf8981f1fc2e266ba42ab4c1e33d7fdc5418", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.80
[INFO] [stderr]    Compiling either v1.11.0
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling anyhow v1.0.82
[INFO] [stderr]    Compiling rustversion v1.0.15
[INFO] [stderr]     Checking futures-task v0.3.30
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling rustix v0.38.32
[INFO] [stderr]    Compiling bitflags v2.5.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.13
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling bytes v1.6.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]    Compiling cc v1.0.94
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling regex-syntax v0.8.3
[INFO] [stderr]    Compiling prettyplease v0.2.19
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]    Compiling fastrand v2.0.2
[INFO] [stderr]    Compiling zerocopy v0.8.0-alpha.6
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling fixedbitset v0.4.2
[INFO] [stderr]    Compiling axum-core v0.3.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling syn v2.0.59
[INFO] [stderr]    Compiling petgraph v0.6.4
[INFO] [stderr]    Compiling multimap v0.10.0
[INFO] [stderr]     Checking tower-layer v0.3.2
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]    Compiling axum v0.6.20
[INFO] [stderr]    Compiling thiserror v1.0.61
[INFO] [stderr]    Compiling openssl-src v300.2.3+3.2.1
[INFO] [stderr]    Compiling openssl v0.10.64
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]    Compiling openssl-sys v0.9.102
[INFO] [stderr]     Checking hybrid-array v0.2.0-rc.8
[INFO] [stderr]     Checking crypto-common v0.2.0-pre.5
[INFO] [stderr]     Checking rand_core v0.9.0-alpha.1
[INFO] [stderr]    Compiling tempfile v3.10.1
[INFO] [stderr]     Checking rand_chacha v0.9.0-alpha.1
[INFO] [stderr]    Compiling regex-automata v0.4.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rand v0.9.0-alpha.1
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking block-buffer v0.11.0-pre.5
[INFO] [stderr]     Checking digest v0.11.0-pre.8
[INFO] [stderr]    Compiling regex v1.10.4
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling prost-derive v0.12.4
[INFO] [stderr]    Compiling async-trait v0.1.80
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling async-stream-impl v0.3.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking async-stream v0.3.5
[INFO] [stderr]     Checking tokio v1.37.0
[INFO] [stderr]    Compiling prost v0.12.4
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]    Compiling prost-types v0.12.4
[INFO] [stderr]    Compiling prost-build v0.12.4
[INFO] [stderr]    Compiling tonic-build v0.11.0
[INFO] [stderr]    Compiling ssd v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]     Checking tokio-io-timeout v1.2.0
[INFO] [stderr]     Checking tokio-stream v0.1.15
[INFO] [stderr]     Checking sha256 v1.5.0
[INFO] [stderr]     Checking h2 v0.3.26
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]    Compiling neli-proc-macros v0.1.3
[INFO] [stderr]     Checking neli v0.6.4
[INFO] [stderr]     Checking local-ip-address v0.6.1
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]     Checking hyper-timeout v0.4.1
[INFO] [stderr]     Checking tonic v0.11.0
[INFO] [stdout] warning: unused import: `endpoint::*`
[INFO] [stdout]  --> src/single_client.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use endpoint::*;
[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: `rand::Rng`
[INFO] [stdout]  --> src/single_client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/single_client.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/single_client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::net::SocketAddr`
[INFO] [stdout]  --> src/single_client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]   --> src/single_client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::task;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response` and `Status`
[INFO] [stdout]   --> src/single_client.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tonic::{Response, Status};
[INFO] [stdout]    |             ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Endpoint` and `Server`
[INFO] [stdout]   --> src/single_client.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tonic::transport::{Endpoint, Server};
[INFO] [stdout]    |                        ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::*`
[INFO] [stdout]   --> src/single_client.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use node::*;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proto::miner_server::*`
[INFO] [stdout]   --> src/single_client.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use proto::miner_server::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BucketNode`, `JoinResponse`, `KBucket`, `NodeInfo`, and `Node`
[INFO] [stdout]   --> src/single_client.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::proto::{NodeInfo, BucketNode, KBucket, Node, JoinResponse};
[INFO] [stdout]    |                    ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^  ^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]   --> src/single_client.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::signatures::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `blockchain::*`
[INFO] [stdout]   --> src/single_client.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use blockchain::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]  --> src/endpoint.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use prost::Message;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `update_request`
[INFO] [stdout]  --> src/endpoint.rs:6:116
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, mine_request, neighbours_request, transaction_request, update_blockchain_request, update_request};
[INFO] [stdout]   |                                                                                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsFd` and `AsRawFd`
[INFO] [stdout]  --> src/node.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::fd::{AsFd, AsRawFd};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpSocket`
[INFO] [stdout]  --> src/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::TcpSocket;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/blockchain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/blockchain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::proto::endpoint_server::Endpoint`
[INFO] [stdout]  --> src/blockchain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::endpoint_server::Endpoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `find_node` and `update_request`
[INFO] [stdout]  --> src/blockchain.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, update_request};
[INFO] [stdout]   |                       ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]  --> src/blockchain.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::endpoint::*`
[INFO] [stdout]   --> src/blockchain.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::endpoint::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NodeInfo`, `Node`, `RetrieveBlockchainRequest`, `RetrieveBlockchainResponse`, `Signature`, `TransactionRequest`, and `TransactionResponse`
[INFO] [stdout]   --> src/blockchain.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | ...onse, Node, NodeInfo, RetrieveBlockchainRequest, RetrieveBlockchainResponse, Signature, TransactionRequest, TransactionResponse};
[INFO] [stdout]    |          ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RetrieveBlockchainResponse`
[INFO] [stdout]  --> src/requests.rs:5:88
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::{NeighboursRequest, Node, NodeInfo, UpdateRequest, Signature, Block, RetrieveBlockchainResponse, RetrieveBlockchainRequ...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/signatures.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `Private`, and `Public`
[INFO] [stdout]  --> src/signatures.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use openssl::pkey::{PKey, Private, Public, Id};
[INFO] [stdout]   |                           ^^^^^^^  ^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TrySha256Digest` and `digest`
[INFO] [stdout]  --> src/signatures.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha256::{digest, TrySha256Digest};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MineRequest` and `MineResponse`
[INFO] [stdout]  --> src/signatures.rs:8:89
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::proto::{Block, FindNodeRequest, FindNodeResponse, JoinRequest, JoinResponse, MineRequest, MineResponse, NeighboursRequest, Nei...
[INFO] [stdout]   |                                                                                         ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv4Addr`
[INFO] [stdout]  --> src/nodes_init.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{Ipv4Addr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proto::miner_server::*`
[INFO] [stdout]  --> src/server.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use proto::miner_server::*;
[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: `crate::signatures::*`
[INFO] [stdout]  --> src/server.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `blockchain::*`
[INFO] [stdout]  --> src/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use blockchain::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]  --> src/endpoint.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use prost::Message;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `update_request`
[INFO] [stdout]  --> src/endpoint.rs:6:116
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, mine_request, neighbours_request, transaction_request, update_blockchain_request, update_request};
[INFO] [stdout]   |                                                                                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsFd` and `AsRawFd`
[INFO] [stdout]  --> src/node.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::fd::{AsFd, AsRawFd};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpSocket`
[INFO] [stdout]  --> src/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::TcpSocket;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RetrieveBlockchainResponse`
[INFO] [stdout]  --> src/requests.rs:5:88
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::{NeighboursRequest, Node, NodeInfo, UpdateRequest, Signature, Block, RetrieveBlockchainResponse, RetrieveBlockchainRequ...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/signatures.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `Private`, and `Public`
[INFO] [stdout]  --> src/signatures.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use openssl::pkey::{PKey, Private, Public, Id};
[INFO] [stdout]   |                           ^^^^^^^  ^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TrySha256Digest` and `digest`
[INFO] [stdout]  --> src/signatures.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha256::{digest, TrySha256Digest};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MineRequest` and `MineResponse`
[INFO] [stdout]  --> src/signatures.rs:8:89
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::proto::{Block, FindNodeRequest, FindNodeResponse, JoinRequest, JoinResponse, MineRequest, MineResponse, NeighboursRequest, Nei...
[INFO] [stdout]   |                                                                                         ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/blockchain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/blockchain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::proto::endpoint_server::Endpoint`
[INFO] [stdout]  --> src/blockchain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::endpoint_server::Endpoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `find_node` and `update_request`
[INFO] [stdout]  --> src/blockchain.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, update_request};
[INFO] [stdout]   |                       ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]  --> src/blockchain.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::endpoint::*`
[INFO] [stdout]   --> src/blockchain.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::endpoint::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NodeInfo`, `Node`, `RetrieveBlockchainRequest`, `RetrieveBlockchainResponse`, `Signature`, `TransactionRequest`, and `TransactionResponse`
[INFO] [stdout]   --> src/blockchain.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | ...onse, Node, NodeInfo, RetrieveBlockchainRequest, RetrieveBlockchainResponse, Signature, TransactionRequest, TransactionResponse};
[INFO] [stdout]    |          ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv4Addr`
[INFO] [stdout]  --> src/nodes_init.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{Ipv4Addr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `endpoint::*`
[INFO] [stdout]  --> src/auto_client.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use endpoint::*;
[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: `util::*`
[INFO] [stdout]  --> src/auto_client.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use util::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/auto_client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `requests::*`
[INFO] [stdout]  --> src/auto_client.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use requests::*;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/auto_client.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/auto_client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::net::SocketAddr`
[INFO] [stdout]  --> src/auto_client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]   --> src/auto_client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::task;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response` and `Status`
[INFO] [stdout]   --> src/auto_client.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tonic::{Response, Status};
[INFO] [stdout]    |             ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Endpoint` and `Server`
[INFO] [stdout]   --> src/auto_client.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tonic::transport::{Endpoint, Server};
[INFO] [stdout]    |                        ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::*`
[INFO] [stdout]   --> src/auto_client.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use node::*;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proto::miner_server::*`
[INFO] [stdout]   --> src/auto_client.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use proto::miner_server::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BucketNode`, `JoinResponse`, `KBucket`, `NodeInfo`, and `Node`
[INFO] [stdout]   --> src/auto_client.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::proto::{NodeInfo, BucketNode, KBucket, Node, JoinResponse};
[INFO] [stdout]    |                    ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^  ^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]   --> src/auto_client.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::signatures::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `blockchain::*`
[INFO] [stdout]   --> src/auto_client.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use blockchain::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]  --> src/endpoint.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use prost::Message;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `update_request`
[INFO] [stdout]  --> src/endpoint.rs:6:116
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, mine_request, neighbours_request, transaction_request, update_blockchain_request, update_request};
[INFO] [stdout]   |                                                                                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsFd` and `AsRawFd`
[INFO] [stdout]  --> src/node.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::fd::{AsFd, AsRawFd};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpSocket`
[INFO] [stdout]  --> src/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::TcpSocket;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/blockchain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/blockchain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::proto::endpoint_server::Endpoint`
[INFO] [stdout]  --> src/blockchain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::endpoint_server::Endpoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `endpoint::*`
[INFO] [stdout]  --> src/single_client.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use endpoint::*;
[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 imports: `find_node` and `update_request`
[INFO] [stdout]  --> src/blockchain.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, update_request};
[INFO] [stdout]   |                       ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]  --> src/blockchain.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::endpoint::*`
[INFO] [stdout]   --> src/blockchain.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::endpoint::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/single_client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NodeInfo`, `Node`, `RetrieveBlockchainRequest`, `RetrieveBlockchainResponse`, `Signature`, `TransactionRequest`, and `TransactionResponse`
[INFO] [stdout]   --> src/blockchain.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | ...onse, Node, NodeInfo, RetrieveBlockchainRequest, RetrieveBlockchainResponse, Signature, TransactionRequest, TransactionResponse};
[INFO] [stdout]    |          ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/single_client.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RetrieveBlockchainResponse`
[INFO] [stdout]  --> src/requests.rs:5:88
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::{NeighboursRequest, Node, NodeInfo, UpdateRequest, Signature, Block, RetrieveBlockchainResponse, RetrieveBlockchainRequ...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/signatures.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/single_client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `Private`, and `Public`
[INFO] [stdout]  --> src/signatures.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use openssl::pkey::{PKey, Private, Public, Id};
[INFO] [stdout]   |                           ^^^^^^^  ^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TrySha256Digest` and `digest`
[INFO] [stdout]  --> src/signatures.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha256::{digest, TrySha256Digest};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::net::SocketAddr`
[INFO] [stdout]  --> src/single_client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MineRequest` and `MineResponse`
[INFO] [stdout]  --> src/signatures.rs:8:89
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::proto::{Block, FindNodeRequest, FindNodeResponse, JoinRequest, JoinResponse, MineRequest, MineResponse, NeighboursRequest, Nei...
[INFO] [stdout]   |                                                                                         ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv4Addr`
[INFO] [stdout]  --> src/nodes_init.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{Ipv4Addr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]   --> src/single_client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::task;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response` and `Status`
[INFO] [stdout]   --> src/single_client.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tonic::{Response, Status};
[INFO] [stdout]    |             ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Endpoint` and `Server`
[INFO] [stdout]   --> src/single_client.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tonic::transport::{Endpoint, Server};
[INFO] [stdout]    |                        ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::*`
[INFO] [stdout]   --> src/single_client.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use node::*;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proto::miner_server::*`
[INFO] [stdout]   --> src/single_client.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use proto::miner_server::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BucketNode`, `JoinResponse`, `KBucket`, `NodeInfo`, and `Node`
[INFO] [stdout]   --> src/single_client.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::proto::{NodeInfo, BucketNode, KBucket, Node, JoinResponse};
[INFO] [stdout]    |                    ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^  ^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]   --> src/single_client.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::signatures::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `blockchain::*`
[INFO] [stdout]   --> src/single_client.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use blockchain::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]  --> src/endpoint.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use prost::Message;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `update_request`
[INFO] [stdout]  --> src/endpoint.rs:6:116
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, mine_request, neighbours_request, transaction_request, update_blockchain_request, update_request};
[INFO] [stdout]   |                                                                                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsFd` and `AsRawFd`
[INFO] [stdout]  --> src/node.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::fd::{AsFd, AsRawFd};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpSocket`
[INFO] [stdout]  --> src/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::TcpSocket;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/blockchain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/blockchain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::proto::endpoint_server::Endpoint`
[INFO] [stdout]  --> src/blockchain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::endpoint_server::Endpoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `find_node` and `update_request`
[INFO] [stdout]  --> src/blockchain.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, update_request};
[INFO] [stdout]   |                       ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]  --> src/blockchain.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::endpoint::*`
[INFO] [stdout]   --> src/blockchain.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::endpoint::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NodeInfo`, `Node`, `RetrieveBlockchainRequest`, `RetrieveBlockchainResponse`, `Signature`, `TransactionRequest`, and `TransactionResponse`
[INFO] [stdout]   --> src/blockchain.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | ...onse, Node, NodeInfo, RetrieveBlockchainRequest, RetrieveBlockchainResponse, Signature, TransactionRequest, TransactionResponse};
[INFO] [stdout]    |          ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RetrieveBlockchainResponse`
[INFO] [stdout]  --> src/requests.rs:5:88
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::{NeighboursRequest, Node, NodeInfo, UpdateRequest, Signature, Block, RetrieveBlockchainResponse, RetrieveBlockchainRequ...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/signatures.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `Private`, and `Public`
[INFO] [stdout]  --> src/signatures.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use openssl::pkey::{PKey, Private, Public, Id};
[INFO] [stdout]   |                           ^^^^^^^  ^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TrySha256Digest` and `digest`
[INFO] [stdout]  --> src/signatures.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha256::{digest, TrySha256Digest};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MineRequest` and `MineResponse`
[INFO] [stdout]  --> src/signatures.rs:8:89
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::proto::{Block, FindNodeRequest, FindNodeResponse, JoinRequest, JoinResponse, MineRequest, MineResponse, NeighboursRequest, Nei...
[INFO] [stdout]   |                                                                                         ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv4Addr`
[INFO] [stdout]  --> src/nodes_init.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{Ipv4Addr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `endpoint::*`
[INFO] [stdout]  --> src/auto_client.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use endpoint::*;
[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: `util::*`
[INFO] [stdout]  --> src/auto_client.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use util::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/auto_client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `requests::*`
[INFO] [stdout]  --> src/auto_client.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use requests::*;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/auto_client.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/auto_client.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::net::SocketAddr`
[INFO] [stdout]  --> src/auto_client.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use core::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]   --> src/auto_client.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio::task;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Response` and `Status`
[INFO] [stdout]   --> src/auto_client.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tonic::{Response, Status};
[INFO] [stdout]    |             ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Endpoint` and `Server`
[INFO] [stdout]   --> src/auto_client.rs:13:24
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tonic::transport::{Endpoint, Server};
[INFO] [stdout]    |                        ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `node::*`
[INFO] [stdout]   --> src/auto_client.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use node::*;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proto::miner_server::*`
[INFO] [stdout]   --> src/auto_client.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use proto::miner_server::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BucketNode`, `JoinResponse`, `KBucket`, `NodeInfo`, and `Node`
[INFO] [stdout]   --> src/auto_client.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::proto::{NodeInfo, BucketNode, KBucket, Node, JoinResponse};
[INFO] [stdout]    |                    ^^^^^^^^  ^^^^^^^^^^  ^^^^^^^  ^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]   --> src/auto_client.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::signatures::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `blockchain::*`
[INFO] [stdout]   --> src/auto_client.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use blockchain::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]  --> src/endpoint.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use prost::Message;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `update_request`
[INFO] [stdout]  --> src/endpoint.rs:6:116
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, mine_request, neighbours_request, transaction_request, update_blockchain_request, update_request};
[INFO] [stdout]   |                                                                                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsFd` and `AsRawFd`
[INFO] [stdout]  --> src/node.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::fd::{AsFd, AsRawFd};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpSocket`
[INFO] [stdout]  --> src/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::TcpSocket;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/blockchain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/blockchain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::proto::endpoint_server::Endpoint`
[INFO] [stdout]  --> src/blockchain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::endpoint_server::Endpoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `find_node` and `update_request`
[INFO] [stdout]  --> src/blockchain.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, update_request};
[INFO] [stdout]   |                       ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]  --> src/blockchain.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::endpoint::*`
[INFO] [stdout]   --> src/blockchain.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::endpoint::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NodeInfo`, `Node`, `RetrieveBlockchainRequest`, `RetrieveBlockchainResponse`, `Signature`, `TransactionRequest`, and `TransactionResponse`
[INFO] [stdout]   --> src/blockchain.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | ...onse, Node, NodeInfo, RetrieveBlockchainRequest, RetrieveBlockchainResponse, Signature, TransactionRequest, TransactionResponse};
[INFO] [stdout]    |          ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RetrieveBlockchainResponse`
[INFO] [stdout]  --> src/requests.rs:5:88
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::{NeighboursRequest, Node, NodeInfo, UpdateRequest, Signature, Block, RetrieveBlockchainResponse, RetrieveBlockchainRequ...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/signatures.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `Private`, and `Public`
[INFO] [stdout]  --> src/signatures.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use openssl::pkey::{PKey, Private, Public, Id};
[INFO] [stdout]   |                           ^^^^^^^  ^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TrySha256Digest` and `digest`
[INFO] [stdout]  --> src/signatures.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha256::{digest, TrySha256Digest};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MineRequest` and `MineResponse`
[INFO] [stdout]  --> src/signatures.rs:8:89
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::proto::{Block, FindNodeRequest, FindNodeResponse, JoinRequest, JoinResponse, MineRequest, MineResponse, NeighboursRequest, Nei...
[INFO] [stdout]   |                                                                                         ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv4Addr`
[INFO] [stdout]  --> src/nodes_init.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{Ipv4Addr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proto::miner_server::*`
[INFO] [stdout]  --> src/server.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use proto::miner_server::*;
[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: `crate::signatures::*`
[INFO] [stdout]  --> src/server.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `blockchain::*`
[INFO] [stdout]  --> src/server.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use blockchain::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prost::Message`
[INFO] [stdout]  --> src/endpoint.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use prost::Message;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `update_request`
[INFO] [stdout]  --> src/endpoint.rs:6:116
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, mine_request, neighbours_request, transaction_request, update_blockchain_request, update_request};
[INFO] [stdout]   |                                                                                                                    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/node.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsFd` and `AsRawFd`
[INFO] [stdout]  --> src/node.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::fd::{AsFd, AsRawFd};
[INFO] [stdout]   |                   ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpSocket`
[INFO] [stdout]  --> src/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::TcpSocket;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RetrieveBlockchainResponse`
[INFO] [stdout]  --> src/requests.rs:5:88
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::{NeighboursRequest, Node, NodeInfo, UpdateRequest, Signature, Block, RetrieveBlockchainResponse, RetrieveBlockchainRequ...
[INFO] [stdout]   |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/signatures.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Id`, `Private`, and `Public`
[INFO] [stdout]  --> src/signatures.rs:3:27
[INFO] [stdout]   |
[INFO] [stdout] 3 | use openssl::pkey::{PKey, Private, Public, Id};
[INFO] [stdout]   |                           ^^^^^^^  ^^^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TrySha256Digest` and `digest`
[INFO] [stdout]  --> src/signatures.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | use sha256::{digest, TrySha256Digest};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MineRequest` and `MineResponse`
[INFO] [stdout]  --> src/signatures.rs:8:89
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::proto::{Block, FindNodeRequest, FindNodeResponse, JoinRequest, JoinResponse, MineRequest, MineResponse, NeighboursRequest, Nei...
[INFO] [stdout]   |                                                                                         ^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::format`
[INFO] [stdout]  --> src/blockchain.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::fmt::format;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/blockchain.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::proto::endpoint_server::Endpoint`
[INFO] [stdout]  --> src/blockchain.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::proto::endpoint_server::Endpoint;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `find_node` and `update_request`
[INFO] [stdout]  --> src/blockchain.rs:6:23
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::requests::{find_node, update_request};
[INFO] [stdout]   |                       ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::signatures::*`
[INFO] [stdout]  --> src/blockchain.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::signatures::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::endpoint::*`
[INFO] [stdout]   --> src/blockchain.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::endpoint::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `NodeInfo`, `Node`, `RetrieveBlockchainRequest`, `RetrieveBlockchainResponse`, `Signature`, `TransactionRequest`, and `TransactionResponse`
[INFO] [stdout]   --> src/blockchain.rs:11:83
[INFO] [stdout]    |
[INFO] [stdout] 11 | ...onse, Node, NodeInfo, RetrieveBlockchainRequest, RetrieveBlockchainResponse, Signature, TransactionRequest, TransactionResponse};
[INFO] [stdout]    |          ^^^^  ^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv4Addr`
[INFO] [stdout]  --> src/nodes_init.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::net::{Ipv4Addr, SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     for mut i in 1..BOOTSTRAP_PORTS.len() {
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/server.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |     for mut i in 1..BOOTSTRAP_PORTS.len() {
[INFO] [stdout]    |         ----^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]   --> src/signatures.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn sign_remove_request(source_id:String, node:NodeInfo, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]    |                            ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> src/blockchain.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     async fn abort(&self, request: Request<AbortRequest>) -> Result<Response<AbortResponse>, Status> {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut current_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut queued_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut active_bids = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in 0..PREFIX_LENGTH{
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GENESIS` is never used
[INFO] [stdout]   --> src/util.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const GENESIS: &str = "00f151242e0010e58cde0d6644d9db53a8552f0e2d26628c9a72199005b5a76e";
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/util.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn parse_input() -> i32{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Neighbour` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Neighbour {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingRequest` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct PingRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingResponse` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct PingResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bid` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct Bid {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retrieve_blockchain_request` is never used
[INFO] [stdout]    --> src/requests.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn retrieve_blockchain_request(source:Node, url:String) -> Vec<Block>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_transactions_request` is never used
[INFO] [stdout]    --> src/requests.rs:147:14
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub async fn obtain_transactions_request(source:Node, url:String) -> Vec<String>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_obtain_transactions_request` is never used
[INFO] [stdout]    --> src/signatures.rs:176:8
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn sign_obtain_transactions_request(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_obtain_transactions_response` is never used
[INFO] [stdout]    --> src/signatures.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn verify_obtain_transactions_response(response:ObtainTransactionsResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn sign_retrieve_blockchain_response(source_id:String, blockchain:Vec<Block>, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:218:8
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub fn verify_retrieve_blockchain_response(response: RetrieveBlockchainResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_update_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn sign_update_blockchain_response(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active_bids` is never read
[INFO] [stdout]   --> src/blockchain.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct MinerInfo{
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 48 |     pub current_transactions: std::sync::Arc<tokio::sync::RwLock<Vec<String>>>,
[INFO] [stdout] 49 |     pub active_bids: std::sync::Arc<tokio::sync::RwLock<Vec<Bid>>>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MinerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/blockchain.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         format!("{}{}", res, 0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let _ = format!("{}{}", res, 0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> src/blockchain.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     async fn abort(&self, request: Request<AbortRequest>) -> Result<Response<AbortResponse>, Status> {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut current_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut queued_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut active_bids = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in 0..PREFIX_LENGTH{
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]   --> src/signatures.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn sign_remove_request(source_id:String, node:NodeInfo, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]    |                            ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> src/blockchain.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     async fn abort(&self, request: Request<AbortRequest>) -> Result<Response<AbortResponse>, Status> {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut current_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut queued_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut active_bids = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in 0..PREFIX_LENGTH{
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/auto_client.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let mut miner_number = entry(0);
[INFO] [stdout]    |         ----^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/auto_client.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let mut client_number = entry(1);
[INFO] [stdout]    |         ----^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/auto_client.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |             for i in 0..miner_number.trim().parse::<i32>().unwrap(){
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/auto_client.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |             for i in 0..client_number.trim().parse::<i32>().unwrap(){
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]   --> src/signatures.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn sign_remove_request(source_id:String, node:NodeInfo, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]    |                            ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GENESIS` is never used
[INFO] [stdout]   --> src/util.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const GENESIS: &str = "00f151242e0010e58cde0d6644d9db53a8552f0e2d26628c9a72199005b5a76e";
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/util.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn parse_input() -> i32{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Neighbour` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Neighbour {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bid` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct Bid {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingRequest` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct PingRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingResponse` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct PingResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active_bids` is never read
[INFO] [stdout]   --> src/blockchain.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct MinerInfo{
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 48 |     pub current_transactions: std::sync::Arc<tokio::sync::RwLock<Vec<String>>>,
[INFO] [stdout] 49 |     pub active_bids: std::sync::Arc<tokio::sync::RwLock<Vec<Bid>>>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MinerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retrieve_blockchain_request` is never used
[INFO] [stdout]    --> src/requests.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn retrieve_blockchain_request(source:Node, url:String) -> Vec<Block>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_transactions_request` is never used
[INFO] [stdout]    --> src/requests.rs:147:14
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub async fn obtain_transactions_request(source:Node, url:String) -> Vec<String>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_obtain_transactions_request` is never used
[INFO] [stdout]    --> src/signatures.rs:176:8
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn sign_obtain_transactions_request(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_obtain_transactions_response` is never used
[INFO] [stdout]    --> src/signatures.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn verify_obtain_transactions_response(response:ObtainTransactionsResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn sign_retrieve_blockchain_response(source_id:String, blockchain:Vec<Block>, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:218:8
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub fn verify_retrieve_blockchain_response(response: RetrieveBlockchainResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_update_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn sign_update_blockchain_response(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> src/blockchain.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     async fn abort(&self, request: Request<AbortRequest>) -> Result<Response<AbortResponse>, Status> {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut current_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut queued_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut active_bids = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in 0..PREFIX_LENGTH{
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/blockchain.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         format!("{}{}", res, 0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let _ = format!("{}{}", res, 0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/auto_client.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     let mut miner_number = entry(0);
[INFO] [stdout]    |         ----^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/auto_client.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let mut client_number = entry(1);
[INFO] [stdout]    |         ----^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/auto_client.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |             for i in 0..miner_number.trim().parse::<i32>().unwrap(){
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/auto_client.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |             for i in 0..client_number.trim().parse::<i32>().unwrap(){
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]   --> src/signatures.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn sign_remove_request(source_id:String, node:NodeInfo, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]    |                            ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GENESIS` is never used
[INFO] [stdout]   --> src/util.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const GENESIS: &str = "00f151242e0010e58cde0d6644d9db53a8552f0e2d26628c9a72199005b5a76e";
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/util.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn parse_input() -> i32{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Neighbour` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Neighbour {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bid` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct Bid {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingRequest` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct PingRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingResponse` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct PingResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active_bids` is never read
[INFO] [stdout]   --> src/blockchain.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct MinerInfo{
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 48 |     pub current_transactions: std::sync::Arc<tokio::sync::RwLock<Vec<String>>>,
[INFO] [stdout] 49 |     pub active_bids: std::sync::Arc<tokio::sync::RwLock<Vec<Bid>>>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MinerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retrieve_blockchain_request` is never used
[INFO] [stdout]    --> src/requests.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn retrieve_blockchain_request(source:Node, url:String) -> Vec<Block>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_transactions_request` is never used
[INFO] [stdout]    --> src/requests.rs:147:14
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub async fn obtain_transactions_request(source:Node, url:String) -> Vec<String>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_obtain_transactions_request` is never used
[INFO] [stdout]    --> src/signatures.rs:176:8
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn sign_obtain_transactions_request(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_obtain_transactions_response` is never used
[INFO] [stdout]    --> src/signatures.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn verify_obtain_transactions_response(response:ObtainTransactionsResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn sign_retrieve_blockchain_response(source_id:String, blockchain:Vec<Block>, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:218:8
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub fn verify_retrieve_blockchain_response(response: RetrieveBlockchainResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_update_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn sign_update_blockchain_response(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/blockchain.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         format!("{}{}", res, 0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let _ = format!("{}{}", res, 0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]   --> src/signatures.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn sign_remove_request(source_id:String, node:NodeInfo, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]    |                            ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> src/blockchain.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     async fn abort(&self, request: Request<AbortRequest>) -> Result<Response<AbortResponse>, Status> {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut current_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut queued_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut active_bids = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in 0..PREFIX_LENGTH{
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GENESIS` is never used
[INFO] [stdout]   --> src/util.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const GENESIS: &str = "00f151242e0010e58cde0d6644d9db53a8552f0e2d26628c9a72199005b5a76e";
[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 `Neighbour` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Neighbour {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bid` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct Bid {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingRequest` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct PingRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingResponse` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct PingResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active_bids` is never read
[INFO] [stdout]   --> src/blockchain.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct MinerInfo{
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 48 |     pub current_transactions: std::sync::Arc<tokio::sync::RwLock<Vec<String>>>,
[INFO] [stdout] 49 |     pub active_bids: std::sync::Arc<tokio::sync::RwLock<Vec<Bid>>>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MinerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retrieve_blockchain_request` is never used
[INFO] [stdout]    --> src/requests.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn retrieve_blockchain_request(source:Node, url:String) -> Vec<Block>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_transactions_request` is never used
[INFO] [stdout]    --> src/requests.rs:147:14
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub async fn obtain_transactions_request(source:Node, url:String) -> Vec<String>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_obtain_transactions_request` is never used
[INFO] [stdout]    --> src/signatures.rs:176:8
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn sign_obtain_transactions_request(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_obtain_transactions_response` is never used
[INFO] [stdout]    --> src/signatures.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn verify_obtain_transactions_response(response:ObtainTransactionsResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn sign_retrieve_blockchain_response(source_id:String, blockchain:Vec<Block>, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:218:8
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub fn verify_retrieve_blockchain_response(response: RetrieveBlockchainResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_update_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn sign_update_blockchain_response(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GENESIS` is never used
[INFO] [stdout]   --> src/util.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const GENESIS: &str = "00f151242e0010e58cde0d6644d9db53a8552f0e2d26628c9a72199005b5a76e";
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_input` is never used
[INFO] [stdout]   --> src/util.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn parse_input() -> i32{
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Neighbour` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Neighbour {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingRequest` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct PingRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingResponse` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct PingResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bid` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct Bid {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retrieve_blockchain_request` is never used
[INFO] [stdout]    --> src/requests.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn retrieve_blockchain_request(source:Node, url:String) -> Vec<Block>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_transactions_request` is never used
[INFO] [stdout]    --> src/requests.rs:147:14
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub async fn obtain_transactions_request(source:Node, url:String) -> Vec<String>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_obtain_transactions_request` is never used
[INFO] [stdout]    --> src/signatures.rs:176:8
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn sign_obtain_transactions_request(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_obtain_transactions_response` is never used
[INFO] [stdout]    --> src/signatures.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn verify_obtain_transactions_response(response:ObtainTransactionsResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn sign_retrieve_blockchain_response(source_id:String, blockchain:Vec<Block>, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:218:8
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub fn verify_retrieve_blockchain_response(response: RetrieveBlockchainResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_update_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn sign_update_blockchain_response(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active_bids` is never read
[INFO] [stdout]   --> src/blockchain.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct MinerInfo{
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 48 |     pub current_transactions: std::sync::Arc<tokio::sync::RwLock<Vec<String>>>,
[INFO] [stdout] 49 |     pub active_bids: std::sync::Arc<tokio::sync::RwLock<Vec<Bid>>>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MinerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/blockchain.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         format!("{}{}", res, 0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let _ = format!("{}{}", res, 0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/blockchain.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         format!("{}{}", res, 0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let _ = format!("{}{}", res, 0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `request`
[INFO] [stdout]   --> src/blockchain.rs:41:27
[INFO] [stdout]    |
[INFO] [stdout] 41 |     async fn abort(&self, request: Request<AbortRequest>) -> Result<Response<AbortResponse>, Status> {
[INFO] [stdout]    |                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_request`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |         let mut current_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:58:13
[INFO] [stdout]    |
[INFO] [stdout] 58 |         let mut queued_transactions = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain.rs:59:13
[INFO] [stdout]    |
[INFO] [stdout] 59 |         let mut active_bids = std::sync::Arc::from(tokio::sync::RwLock::from(Vec::new()));
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     for i in 0..PREFIX_LENGTH{
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_id`
[INFO] [stdout]   --> src/signatures.rs:78:28
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub fn sign_remove_request(source_id:String, node:NodeInfo, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]    |                            ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GENESIS` is never used
[INFO] [stdout]   --> src/util.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const GENESIS: &str = "00f151242e0010e58cde0d6644d9db53a8552f0e2d26628c9a72199005b5a76e";
[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 `Neighbour` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Neighbour {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bid` is never constructed
[INFO] [stdout]   --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct Bid {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingRequest` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub struct PingRequest {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PingResponse` is never constructed
[INFO] [stdout]    --> /opt/rustwide/target/debug/build/ssd-0497a058cfd71b30/out/kademlia.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct PingResponse {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active_bids` is never read
[INFO] [stdout]   --> src/blockchain.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct MinerInfo{
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 48 |     pub current_transactions: std::sync::Arc<tokio::sync::RwLock<Vec<String>>>,
[INFO] [stdout] 49 |     pub active_bids: std::sync::Arc<tokio::sync::RwLock<Vec<Bid>>>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MinerInfo` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `retrieve_blockchain_request` is never used
[INFO] [stdout]    --> src/requests.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub async fn retrieve_blockchain_request(source:Node, url:String) -> Vec<Block>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `obtain_transactions_request` is never used
[INFO] [stdout]    --> src/requests.rs:147:14
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub async fn obtain_transactions_request(source:Node, url:String) -> Vec<String>{
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_obtain_transactions_request` is never used
[INFO] [stdout]    --> src/signatures.rs:176:8
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub fn sign_obtain_transactions_request(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_obtain_transactions_response` is never used
[INFO] [stdout]    --> src/signatures.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn verify_obtain_transactions_response(response:ObtainTransactionsResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn sign_retrieve_blockchain_response(source_id:String, blockchain:Vec<Block>, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_retrieve_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:218:8
[INFO] [stdout]     |
[INFO] [stdout] 218 | pub fn verify_retrieve_blockchain_response(response: RetrieveBlockchainResponse){
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sign_update_blockchain_response` is never used
[INFO] [stdout]    --> src/signatures.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub fn sign_update_blockchain_response(source_id:String, skey:Vec<u8>) -> Vec<u8>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `must_use` that must be used
[INFO] [stdout]    --> src/blockchain.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         format!("{}{}", res, 0);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let _ = format!("{}{}", res, 0);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 48s
[INFO] running `Command { std: "docker" "inspect" "cd93505590a6be102897a0a41f20bf8981f1fc2e266ba42ab4c1e33d7fdc5418", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd93505590a6be102897a0a41f20bf8981f1fc2e266ba42ab4c1e33d7fdc5418", kill_on_drop: false }`
[INFO] [stdout] cd93505590a6be102897a0a41f20bf8981f1fc2e266ba42ab4c1e33d7fdc5418
