[INFO] cloning repository https://github.com/heyaranzheng/history-chain
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/heyaranzheng/history-chain" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fheyaranzheng%2Fhistory-chain", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fheyaranzheng%2Fhistory-chain'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fff1775513e1c894b61df4c9699727fcbf9bc82a
[INFO] testing heyaranzheng/history-chain against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fheyaranzheng%2Fhistory-chain" "/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/heyaranzheng/history-chain
[INFO] finished tweaking git repo https://github.com/heyaranzheng/history-chain
[INFO] tweaked toml for git repo https://github.com/heyaranzheng/history-chain written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/heyaranzheng/history-chain on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 237 packages to latest Rust 1.94.0-nightly compatible versions
[INFO] [stderr]       Adding bincode v2.0.1 (available: v3.0.0)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding rand v0.8.5 (available: v0.9.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded env_filter v0.1.4
[INFO] [stderr]   Downloaded jiff-static v0.2.18
[INFO] [stderr]   Downloaded jiff v0.2.18
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1adb6dc5ef18b070a688383f60682ae87025405541c1fe0a4b6162e4874bf755
[INFO] running `Command { std: "docker" "start" "-a" "1adb6dc5ef18b070a688383f60682ae87025405541c1fe0a4b6162e4874bf755", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1adb6dc5ef18b070a688383f60682ae87025405541c1fe0a4b6162e4874bf755", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1adb6dc5ef18b070a688383f60682ae87025405541c1fe0a4b6162e4874bf755", kill_on_drop: false }`
[INFO] [stdout] 1adb6dc5ef18b070a688383f60682ae87025405541c1fe0a4b6162e4874bf755
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b22bdd1bf1ffc5e882c1912ea46cb39eff29ad48eb0614d233acb38178994db9
[INFO] running `Command { std: "docker" "start" "-a" "b22bdd1bf1ffc5e882c1912ea46cb39eff29ad48eb0614d233acb38178994db9", kill_on_drop: false }`
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling zmij v1.0.14
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling crc-catalog v2.4.0
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling socket2 v0.6.1
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling virtue v0.0.18
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ed25519 v2.2.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling jiff v0.2.18
[INFO] [stderr]    Compiling unty v0.0.4
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling tokio v1.49.0
[INFO] [stderr]    Compiling uuid v1.19.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling bincode_derive v2.0.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling bincode v2.0.1
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling env_filter v0.1.4
[INFO] [stderr]    Compiling ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]    Compiling sqlx v0.8.6
[INFO] [stderr]    Compiling history-chain v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/db.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncSeekExt, AsyncWrite, AsyncWriteExt};
[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: `std::env`
[INFO] [stdout]  --> src/db.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/db.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/db.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainLimit`, `ChainRef`, and `self`
[INFO] [stdout]   --> src/db.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::chain::{self, ChainLimit, BlockChain, ChainRef, ChainInfoBuilder, Chain};
[INFO] [stdout]    |                    ^^^^  ^^^^^^^^^^              ^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataBlockArgs`, `DataBlock`, `DigestBlockArgs`, and `DigestBlock`
[INFO] [stdout]   --> src/db.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::block::{Block, DataBlock, DataBlockArgs, DigestBlock, DigestBlockArgs};
[INFO] [stdout]    |                           ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/db.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::serializer::{self, Serialize, Serializer};
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]  --> src/network/tcp.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::net::{TcpStream, TcpListener};
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/network/tcp.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tokio::sync:: {Mutex, };
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/tcp.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/network/tcp.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]  --> src/network/tcp.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/network/tcp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_CONNECTIONS` and `TCP_RECV_PORT`
[INFO] [stdout]  --> src/network/tcp.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::constants::{TCP_RECV_PORT, MAX_CONNECTIONS};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]  --> src/network/tcp.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::herrors;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/network/tcp.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/tcp.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::signal::Signal`
[INFO] [stdout]   --> src/network/tcp.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::network::signal::Signal;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/network/udp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/udp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `create_channel`
[INFO] [stdout]   --> src/network/udp.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::req_resp::{RequestWorker, Request, create_channel};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHANNEL_CAPACITY` and `ZERO_HASH`
[INFO] [stdout]   --> src/network/udp.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::constants::{ CHANNEL_CAPACITY,
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, UDP_CHECK_PORT, ZERO_HASH,
[INFO] [stdout]    |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/network/udp.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::herrors::{HError, self};
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]   --> src/network/udp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::nodes::Identity;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::encode`
[INFO] [stdout]    --> src/network/udp.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |     use sqlx::encode;
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::timeout`
[INFO] [stdout]    --> src/network/udp.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |     use tokio::time::timeout;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]    --> src/network/udp.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |     use tokio_util::sync::CancellationToken;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_UDP_MSG_SIZE` and `ZERO_HASH`
[INFO] [stdout]    --> src/network/udp.rs:227:28
[INFO] [stdout]     |
[INFO] [stdout] 227 |     use crate::constants::{ZERO_HASH, MAX_UDP_MSG_SIZE};
[INFO] [stdout]     |                            ^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]    --> src/network/udp.rs:228:26
[INFO] [stdout]     |
[INFO] [stdout] 228 |     use crate::network::{Message, Payload};
[INFO] [stdout]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]    --> src/network/udp.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |     use crate::nodes::Identity;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/network/network.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/network/network.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]   --> src/network/network.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     use crate::network::protocol::{Message, Payload};
[INFO] [stdout]    |                                    ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/network.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     use crate::network::udp::UdpConnection;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/network/protocol.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddr`
[INFO] [stdout]  --> src/network/protocol.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config`
[INFO] [stdout]  --> src/network/protocol.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::{Decode, Encode, config};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/network/protocol.rs:5:46
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite,};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpStream`
[INFO] [stdout]  --> src/network/protocol.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/protocol.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/network/protocol.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_MSG_SIZE`
[INFO] [stdout]   --> src/network/protocol.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::{MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, ZERO_HASH};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignRequest`
[INFO] [stdout]   --> src/network/protocol.rs:14:40
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::nodes::{Identity, NodeInfo, SignRequest, SignHandle};
[INFO] [stdout]    |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/protocol.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::network::udp::UdpConnection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/protocol.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncSeekExt`
[INFO] [stdout]    --> src/network/protocol.rs:647:9
[INFO] [stdout]     |
[INFO] [stdout] 647 |     use tokio::io::AsyncSeekExt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `network::signal` and `nodes::SignHandle`
[INFO] [stdout]    --> src/network/protocol.rs:649:17
[INFO] [stdout]     |
[INFO] [stdout] 649 |     use crate::{network::signal, nodes::SignHandle};
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decode` and `Encode`
[INFO] [stdout]    --> src/network/protocol.rs:650:19
[INFO] [stdout]     |
[INFO] [stdout] 650 |     use bincode::{Decode, Encode};
[INFO] [stdout]     |                   ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/network/protocol.rs:652:9
[INFO] [stdout]     |
[INFO] [stdout] 652 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]   --> src/network/register.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `Worker`
[INFO] [stdout]   --> src/network/register.rs:13:63
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::req_resp::{self, Request, RequestWorker, Response, Worker, WorkReceiver};
[INFO] [stdout]    |                                                               ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]    --> src/network/register.rs:470:9
[INFO] [stdout]     |
[INFO] [stdout] 470 |     use std::thread::sleep;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/network/register.rs:472:9
[INFO] [stdout]     |
[INFO] [stdout] 472 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::new`
[INFO] [stdout]    --> src/network/register.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |     use crate::fpsc::new;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]    --> src/network/register.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |     use crate::herrors::HError;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]    --> src/network/register.rs:476:26
[INFO] [stdout]     |
[INFO] [stdout] 476 |     use crate::network::{Payload, Message};
[INFO] [stdout]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `Response`
[INFO] [stdout]    --> src/network/register.rs:477:27
[INFO] [stdout]     |
[INFO] [stdout] 477 |     use crate::req_resp::{Request, Response, RequestWorker};
[INFO] [stdout]     |                           ^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PayloadTypes`
[INFO] [stdout]   --> src/network/mod.rs:11:70
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use register::{AsyncHandler, AsyncRegister, AsyncPayloadHandler, PayloadTypes};
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/nodes/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRegister`
[INFO] [stdout]   --> src/nodes/node.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::{AsyncHandler, AsyncPayloadHandler, AsyncRegister, udp_send_to}; 
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `Carrier`, and `Digester`
[INFO] [stdout]   --> src/nodes/node.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stdout]    |                    ^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainExecutor` and `Executor`
[INFO] [stdout]   --> src/nodes/node.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::executor::{Executor, ChainExecutor};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::archive::Archiver`
[INFO] [stdout]   --> src/nodes/node.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::archive::Archiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger_error`
[INFO] [stdout]   --> src/nodes/node.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::herrors::{HError, logger_error, logger_error_with_error, self};
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `self`
[INFO] [stdout]   --> src/nodes/node.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::req_resp::{self, RequestWorker, WorkReceiver, create_channel, Request};
[INFO] [stdout]    |                       ^^^^                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/center.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/center.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/center.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/center.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::nodes::{Node, NodeState, Reputation};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/normal.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/normal.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/normal.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/normal.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::nodes::node::{Node, NodeState, Reputation};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/nodes/identity.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Receiver`
[INFO] [stdout]  --> src/nodes/identity.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc::{self, Sender, Receiver};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::MAX_UDP_MSG_SIZE`
[INFO] [stdout]   --> src/nodes/identity.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::MAX_UDP_MSG_SIZE;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/nodes/identity.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/nodes/identity.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/executor.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/executor.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::block::{ Block, BlockArgs, Carrier, DataBlockArgs, DigestBlockArgs, Digester };
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/executor.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainInfo`
[INFO] [stdout]  --> src/executor.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::chain::{Chain, BlockChain, ChainInfo, ChainLimit};
[INFO] [stdout]   |                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/constants.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/producer_cosumer.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                 ^^^^^^^^^^                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:369:21
[INFO] [stdout]     |
[INFO] [stdout] 369 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:371:9
[INFO] [stdout]     |
[INFO] [stdout] 371 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:40
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:306:21
[INFO] [stdout]     |
[INFO] [stdout] 306 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/mod.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/fpsc/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::producer_cosumer::ConsumerBuf`
[INFO] [stdout]   --> src/fpsc/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use crate::fpsc::producer_cosumer::ConsumerBuf;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc`
[INFO] [stdout]   --> src/fpsc/mod.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     use crate::fpsc;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constants::ZERO_HASH`
[INFO] [stdout]  --> src/hash.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{constants::ZERO_HASH, herrors::HError}; 
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/block.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/block.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::uuidbytes::{self, UuidBytes};
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainLimit`
[INFO] [stdout]  --> src/block.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::chain::{BlockChain, ChainLimit};
[INFO] [stdout]   |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLockReadGuard`, `RwLockWriteGuard`, and `RwLock`
[INFO] [stdout]  --> src/keeper.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/keeper.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/keeper.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]  --> src/keeper.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]   |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/keeper.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/keeper.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DigestBlockArgs`
[INFO] [stdout]   --> src/keeper.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::block::{Block, Digester, Carrier, DigestBlockArgs};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/keeper.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainInfo`, and `ChainRef`
[INFO] [stdout]   --> src/keeper.rs:12:39
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::chain::{BlockChain, Chain, ChainInfo, ChainInfoBuilder, ChainRef, ChainLimit,
[INFO] [stdout]    |                                       ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/archive.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Chain`
[INFO] [stdout]   --> src/network/protocol.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::chain::{Chain, BlockChain};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]   --> src/network/protocol.rs:13:31
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:55
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/db.rs:319:24
[INFO] [stdout]     |
[INFO] [stdout] 319 |             if let Err(e) = meta_iterator {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[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/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[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: `bundle_file`
[INFO] [stdout]    --> src/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bundle_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain`
[INFO] [stdout]    --> src/db.rs:347:35
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn save_chain<B>(&self, chain: &BlockChain<B>) -> Result<(), HError>
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uuid`
[INFO] [stdout]    --> src/db.rs:356:35
[INFO] [stdout]     |
[INFO] [stdout] 356 |     async fn find_chain<B>(&self, uuid: UuidBytes) -> Option<BlockChain<B>>
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_uuid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:33:37
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:33:62
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                              ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:39:36
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:39:61
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:47:58
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                          ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:53:36
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:53:61
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:70:36
[INFO] [stdout]    |
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:70:61
[INFO] [stdout]    |
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         unsafe {self.ringbuf.capacity() }
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `capacity`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let capacity = self.capacity();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:235:41
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:238:44
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                            ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `CentralNode<B, D>` is more private than the item `Nodebuilder::<B, D>::build`
[INFO] [stdout]    --> src/nodes/center.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Nodebuilder::<B, D>::build` is reachable at visibility `pub(in crate::nodes)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `CentralNode<B, D>` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/nodes/center.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | struct CentralNode <B, D> 
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `HError` is never used
[INFO] [stdout]  --> src/herrors.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum HError {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PipeError` is never used
[INFO] [stdout]   --> src/herrors.rs:81:10
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub enum PipeError {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init` is never used
[INFO] [stdout]    --> src/herrors.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn logger_init() {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_with_level` is never used
[INFO] [stdout]    --> src/herrors.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn logger_init_with_level(level: log::LevelFilter) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_info` is never used
[INFO] [stdout]    --> src/herrors.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn logger_init_above_info() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_debug` is never used
[INFO] [stdout]    --> src/herrors.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn logger_init_above_debug() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_trace` is never used
[INFO] [stdout]    --> src/herrors.rs:122:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn logger_init_above_trace() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_error` is never used
[INFO] [stdout]    --> src/herrors.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn logger_init_above_error() {  
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_info` is never used
[INFO] [stdout]    --> src/herrors.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn logger_info(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_error` is never used
[INFO] [stdout]    --> src/herrors.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn logger_error(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_error_with_error` is never used
[INFO] [stdout]    --> src/herrors.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub fn logger_error_with_error(error: &HError) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_debug` is never used
[INFO] [stdout]    --> src/herrors.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn logger_debug(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_debug_with_error` is never used
[INFO] [stdout]    --> src/herrors.rs:147:8
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn logger_debug_with_error(error: &HError) {   
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_result` is never used
[INFO] [stdout]    --> src/herrors.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn logger_result<T>(result: Result<T, HError>) -> Option<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DataBase` is never used
[INFO] [stdout]   --> src/db.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait DataBase {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Meta` is never used
[INFO] [stdout]   --> src/db.rs:38:11
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub trait Meta {
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MetaData` is never constructed
[INFO] [stdout]   --> src/db.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct MetaData {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/db.rs:56:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl MetaData {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  55 |     ///create a new meta data with the given name and uuid.
[INFO] [stdout]  56 |     pub fn new(name: String, uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn encode_into(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub fn decode_from(buffer: &[u8]) -> Result<MetaData, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     async fn save_meta_to_file(&self, path: &PathBuf) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     async fn get_one_meta_from_file(file_stream: &mut File) -> Result<(MetaData, usize), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn set_name(mut self, name: String) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn set_uuid(mut self, uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn uuid(&self) -> UuidBytes {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn name(&self) -> &String {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MetaDataIterator` is never constructed
[INFO] [stdout]    --> src/db.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct MetaDataIterator {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `reset`, and `next` are never used
[INFO] [stdout]    --> src/db.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl MetaDataIterator {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 171 |     ///create a new MetaDataIterator
[INFO] [stdout] 172 |     pub async fn new(file_path: PathBuf) -> Result<Self, HError> {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn reset(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     async fn next(&mut self) -> Option<Result<MetaData, HError>> {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileDataBase` is never constructed
[INFO] [stdout]    --> src/db.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct FileDataBase{
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/db.rs:234:12
[INFO] [stdout]     |
[INFO] [stdout] 229 | impl FileDataBase {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn new(data_absolute_dir_opt: Option<String>) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_BUNDLE_FILE` is never used
[INFO] [stdout]    --> src/db.rs:365:7
[INFO] [stdout]     |
[INFO] [stdout] 365 | const DEFAULT_BUNDLE_FILE: &str = "chains.bundle";
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bundle` is never constructed
[INFO] [stdout]    --> src/db.rs:378:12
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct Bundle <B>
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `default_new`, `update_description_with_chain`, `save_to_file`, `save_chains_to_bundle`, `encode_to_stream`, and `load_chains_from_bundle` are never used
[INFO] [stdout]    --> src/db.rs:391:12
[INFO] [stdout]     |
[INFO] [stdout] 388 | / impl <B> Bundle <B> 
[INFO] [stdout] 389 | |     where B: Block + Encode + Decode<()> + Send + Unpin,
[INFO] [stdout]     | |________________________________________________________- associated items in this implementation
[INFO] [stdout] 390 |   {
[INFO] [stdout] 391 |       pub fn default_new() -> Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |       fn update_description_with_chain(&mut self, chain: &BlockChain<B>) 
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 437 |       pub async fn save_to_file(&mut self, chain: BlockChain<B> ) 
[INFO] [stdout]     |                    ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 469 |       async fn save_chains_to_bundle(&mut self, chains:& Vec<BlockChain<B>>)
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 501 |       async fn encode_to_stream<R> (
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 540 |       pub async fn load_chains_from_bundle(&mut self) 
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Signal` is never used
[INFO] [stdout]  --> src/network/signal.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Signal {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_accept_result` is never used
[INFO] [stdout]   --> src/network/signal.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Signal {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     ///create a new listen result signal
[INFO] [stdout] 12 |     pub fn from_accept_result( listen_result: (TcpStream, SocketAddr)) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `UdpConnection` is never used
[INFO] [stdout]   --> src/network/udp.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub trait UdpConnection: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `udp_send_to` is never used
[INFO] [stdout]    --> src/network/udp.rs:205:18
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub async fn udp_send_to(
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Test` is never constructed
[INFO] [stdout]    --> src/network/udp.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 |     struct Test;
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Network` is never used
[INFO] [stdout]  --> src/network/network.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub trait Network: UdpConnection + Send + Sync
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NetworkState` is never used
[INFO] [stdout]   --> src/network/network.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum NetworkState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkHandler` is never constructed
[INFO] [stdout]   --> src/network/network.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NetworkHandler {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SignatureBytes` is never used
[INFO] [stdout]   --> src/network/protocol.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | type SignatureBytes = [u8; 64];
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]   --> src/network/protocol.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct Header {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/network/protocol.rs:35:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Header {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  35 |     fn new(msg_length: u32, signature: SignatureBytes, public_key: HashValue) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  44 |     pub fn header_size() -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn encode_into_slice(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     fn decode_from_slice  (data: &[u8]) -> Result<Header, HError> 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub async fn from_stream <T> ( stream: &mut T) -> Result<Header, HError> 
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn into_stream<T>(&self, stream: &mut T) -> Result<(), HError> 
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn caculate_encode_size(&self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn verify_header(&self, data: &[u8]) -> Result<(), HError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Payload` is never used
[INFO] [stdout]    --> src/network/protocol.rs:162:10
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub enum Payload
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/network/protocol.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl Payload {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn from(msg: Message) -> Payload {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestInfo` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:191:12
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub struct RequestInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VoteBlockArgs` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub struct VoteBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/protocol.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | impl VoteBlockArgs {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 212 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VoteBlock` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct VoteBlock {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `private_new` and `new` are never used
[INFO] [stdout]    --> src/network/protocol.rs:269:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | impl VoteBlock {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] 269 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn new(args: VoteBlockArgs) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockRec` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:414:12
[INFO] [stdout]     |
[INFO] [stdout] 414 | pub struct BlockRec {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Message` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:422:12
[INFO] [stdout]     |
[INFO] [stdout] 422 | pub struct Message {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/network/protocol.rs:435:12
[INFO] [stdout]     |
[INFO] [stdout] 434 | impl Message {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 435 |     pub fn new(sender: HashValue, receiver: HashValue, payload: Payload ) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 445 |     fn new_with_zero() -> Self{
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn decode_from_slice_with_header(my_name: &HashValue, slice: &[u8], header: &Header) 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 496 |     pub fn decode_from_slice(my_name: &HashValue, slice: &[u8]) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 528 |     pub fn encode_into_slice(&self, identity:&mut Identity, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 564 |     pub async fn encode(&self, sign_handle: &SignHandle, buffer: &mut [u8] )
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 603 |     pub async fn into_stream<S> (&self, identity: &mut Identity, stream: &mut S) -> Result<(), HError>
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 617 |     async fn from_stream <S>  (my_name: &HashValue, stream: &mut S) -> Result<Message, HError> 
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PayloadTypes` is never used
[INFO] [stdout]   --> src/network/register.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum PayloadTypes {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_payload` is never used
[INFO] [stdout]   --> src/network/register.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl PayloadTypes {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 34 |     ///return a PayloadTypes from a Payload
[INFO] [stdout] 35 |     pub fn from_payload(payload: &Payload) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsyncHandler` is never used
[INFO] [stdout]   --> src/network/register.rs:53:11
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub trait AsyncHandler{
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AsyncRegister` is never constructed
[INFO] [stdout]    --> src/network/register.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct AsyncRegister
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl AsyncRegister {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 126 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AsyncPayloadHandler` is never constructed
[INFO] [stdout]    --> src/network/register.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub struct AsyncPayloadHandler {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 137 | impl AsyncPayloadHandler {
[INFO] [stdout]     | ------------------------ associated function in this implementation
[INFO] [stdout] 138 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Register` is never constructed
[INFO] [stdout]    --> src/network/register.rs:278:12
[INFO] [stdout]     |
[INFO] [stdout] 278 | pub struct Register{
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `reg` and `new` are never used
[INFO] [stdout]    --> src/network/register.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl Register {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 283 |     /// register a handler for a specific payload type.
[INFO] [stdout] 284 |     fn reg(
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HandlerContext` is never constructed
[INFO] [stdout]    --> src/network/register.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | pub struct HandlerContext {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_request_worker`, and `send` are never used
[INFO] [stdout]    --> src/network/register.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | impl HandlerContext {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 309 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn get_request_worker(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 322 |     async fn send(
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SyncHandler` is never used
[INFO] [stdout]    --> src/network/register.rs:345:11
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub trait SyncHandler {
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadHandler` is never constructed
[INFO] [stdout]    --> src/network/register.rs:365:12
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub struct PayloadHandler {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:370:8
[INFO] [stdout]     |
[INFO] [stdout] 369 | impl PayloadHandler {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] 370 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Handler` is never used
[INFO] [stdout]   --> src/network/handlers.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | trait Handler
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MessageHandler` is never constructed
[INFO] [stdout]   --> src/network/handlers.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct MessageHandler  {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `handle_message` are never used
[INFO] [stdout]   --> src/network/handlers.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl MessageHandler {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 64 |     pub fn new(pipe_to_chain_keeper: Pipe<Message>)
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeInfo` is never constructed
[INFO] [stdout]   --> src/nodes/node.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct NodeInfo {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/nodes/node.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl NodeInfo {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  58 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  73 |     pub fn name(&self) -> Result<HashValue, HError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn address(&self) -> Result<Vec<SocketAddr>, HError> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn caller(&self) -> Result<HashValue, HError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn reputation(&self) -> Result<Reputation, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn last_conn(&self) -> Result<u64, HError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn last_state(&self) -> Result<NodeState, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `NodeAppend` is never used
[INFO] [stdout]    --> src/nodes/node.rs:143:11
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub trait NodeAppend {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Node` is never used
[INFO] [stdout]    --> src/nodes/node.rs:162:11
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub trait Node: UdpConnection + Sized + NodeAppend{       
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reputation` is never constructed
[INFO] [stdout]    --> src/nodes/node.rs:700:12
[INFO] [stdout]     |
[INFO] [stdout] 700 | pub struct Reputation {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/nodes/node.rs:705:12
[INFO] [stdout]     |
[INFO] [stdout] 704 | impl Reputation {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 705 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NodeState` is never used
[INFO] [stdout]    --> src/nodes/node.rs:715:10
[INFO] [stdout]     |
[INFO] [stdout] 715 | pub enum NodeState {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]    --> src/nodes/node.rs:725:6
[INFO] [stdout]     |
[INFO] [stdout] 725 | type NodeName = HashValue;
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `msg_delivery` is never used
[INFO] [stdout]    --> src/nodes/node.rs:662:18
[INFO] [stdout]     |
[INFO] [stdout] 662 |     pub async fn msg_delivery(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]   --> src/nodes/center.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type NodeName = HashValue;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Central` is never used
[INFO] [stdout]   --> src/nodes/center.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Central {
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CentralNode` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct CentralNode <B, D> 
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/center.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | / impl <B, D> CentralNode <B, D>
[INFO] [stdout] 40 | |     where B: Block + Carrier,
[INFO] [stdout] 41 | |           D: Block + Digester,
[INFO] [stdout]    | |______________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |       fn new(name: NodeName, address: String) -> Self{
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nodebuilder` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Nodebuilder<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/nodes/center.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | / impl <B, D> Nodebuilder<B, D> 
[INFO] [stdout]  77 | |     where B: Block + Carrier,
[INFO] [stdout]  78 | |           D: Block + Digester,
[INFO] [stdout]     | |______________________________- associated items in this implementation
[INFO] [stdout]  79 |   {
[INFO] [stdout]  80 |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |       pub fn name(&mut self, name: NodeName) -> &mut Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |       pub fn address(&mut self, address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |       pub fn center_address(&mut self, center_address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |       pub fn executor(&mut self, executor: ChainExecutor<B, D>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |       pub fn reputation(&mut self, reputation: Reputation) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |       pub fn friends (&mut self, friends: Option<HashMap< NodeName, NormalNode<B, D>>>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |       fn check_fields<T>(&self, option: &Option<T>, fild_name: &str)-> Result<(), HError> {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |       pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]  --> src/nodes/normal.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type NodeName = HashValue;
[INFO] [stdout]   |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NormalNode` is never constructed
[INFO] [stdout]   --> src/nodes/normal.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct NormalNode<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/normal.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | / impl <B, D> NormalNode <B, D>
[INFO] [stdout] 33 | |     where B: Block + Carrier,
[INFO] [stdout] 34 | |           D: Block + Digester
[INFO] [stdout]    | |_____________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |       fn new(name: NodeName, capacity: usize) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignRequest` is never constructed
[INFO] [stdout]   --> src/nodes/identity.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SignRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/identity.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl SignRequest {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn new(bytes_vec: Vec<u8>, response: oneshot::Sender<Result<[u8; 64], HError>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignHandle` is never constructed
[INFO] [stdout]   --> src/nodes/identity.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct SignHandle {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `spawn_new`, `verify`, `send`, `public_key_bytes`, and `sign` are never used
[INFO] [stdout]    --> src/nodes/identity.rs:79:18
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl SignHandle {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub async fn spawn_new(mut identity: Identity, capacity: usize, cancel_token: CancellationToken) -> 
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn verify(&self, message: &[u8], signature: &[u8; 64]) -> Result<(), HError> 
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub async fn send(&self, sign_request: SignRequest) -> Result<(), HError>
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn public_key_bytes(&self) -> [u8;32]
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub async fn sign(&self, bytes: &[u8]) -> 
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Identity` is never constructed
[INFO] [stdout]    --> src/nodes/identity.rs:210:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct Identity{
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_keypair`, `new`, `sign_msg`, `public_key_to_bytes`, and `verify_signature_bytes` are never used
[INFO] [stdout]    --> src/nodes/identity.rs:217:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl Identity {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 216 |     /// a helper function for Identity::new()
[INFO] [stdout] 217 |     fn create_keypair() -> (VerifyingKey, SigningKey) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn sign_msg(&mut self, message: &[u8]) -> Result<[u8; 64], HError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn public_key_to_bytes(&self) -> [u8; 32] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn verify_signature_bytes(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Executor` is never used
[INFO] [stdout]   --> src/executor.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Executor: Archiver {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainExecutor` is never constructed
[INFO] [stdout]   --> src/executor.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct ChainExecutor < B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/executor.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 43 | / impl < B, D> ChainExecutor <B, D> 
[INFO] [stdout] 44 | |     where B: Block + Carrier,
[INFO] [stdout] 45 | |           D: Block + Digester ,
[INFO] [stdout]    | |_______________________________- associated function in this implementation
[INFO] [stdout] 46 |   {
[INFO] [stdout] 47 |       pub  fn new(limit: ChainLimit) -> Self
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Location` is never used
[INFO] [stdout]  --> src/constants.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Location = usize;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Bytes` is never used
[INFO] [stdout]  --> src/constants.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type Bytes = Vec<u8>;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_HASH` is never used
[INFO] [stdout]  --> src/constants.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const ZERO_HASH:[u8; 32] = [0; 32];
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U64` is never used
[INFO] [stdout]  --> src/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const ZERO_U64: u64 = 0 ;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_UUID` is never used
[INFO] [stdout]  --> src/constants.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const ZERO_UUID: [u8; 16] = [0;16];
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U32` is never used
[INFO] [stdout]   --> src/constants.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const ZERO_U32: u32 = 0;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_PACKAGE` is never used
[INFO] [stdout]   --> src/constants.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const PATH_CACHE_PACKAGE: &str = "cache/packages";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_BUNDLE` is never used
[INFO] [stdout]   --> src/constants.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const PATH_CACHE_BUNDLE: &str = "cache/bundles";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const BUFFER_SIZE: usize = 1024 * 32;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const UDP_SENDER_PORT: u16 = 8080;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const UDP_RECV_PORT: u16 = 8081;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const TCP_SENDER_PORT: u16 = 8088;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const TCP_RECV_PORT: u16 = 8089;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MSG_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const MAX_MSG_SIZE: usize = 1024 * 1024; // 1MB
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_UDP_MSG_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const MAX_UDP_MSG_SIZE: usize= 1024; // 1KB
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MTU_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const MTU_SIZE: usize = 1500; // 1500 bytes
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_CONNECTIONS` is never used
[INFO] [stdout]   --> src/constants.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub const MAX_CONNECTIONS: usize= 100; // maximum number of  tcp connections
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_CHECK_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub const UDP_CHECK_PORT: u16 = 7070;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TIME_MS_FOR_UNP_RECV` is never used
[INFO] [stdout]   --> src/constants.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub const TIME_MS_FOR_UNP_RECV: u64 = 5000; // 5 seconds
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHANNEL_CAPACITY` is never used
[INFO] [stdout]   --> src/constants.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const CHANNEL_CAPACITY: usize = 1024;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_FILE_NAME_LEN` is never used
[INFO] [stdout]   --> src/constants.rs:37:11
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub const MAX_FILE_NAME_LEN: usize = 128;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Chain` is never used
[INFO] [stdout]   --> src/chain.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait Chain  
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainLimit` is never constructed
[INFO] [stdout]    --> src/chain.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub struct ChainLimit {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `max_len`, `time_gap`, `length_check`, `time_check`, and `default` are never used
[INFO] [stdout]    --> src/chain.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | impl ChainLimit {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 211 |     ///create a new limit information for a chain.
[INFO] [stdout] 212 |     pub fn new(max_len: usize, time_gap: u64) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn max_len(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn time_gap(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 229 |     pub fn length_check(&self, len: usize) -> Result<(), HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn time_check<B>(&self, origin: u64, block: &B) -> Result<(), HError> 
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     pub fn default() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockChain` is never constructed
[INFO] [stdout]    --> src/chain.rs:275:12
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub struct BlockChain<B>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:292:12
[INFO] [stdout]     |
[INFO] [stdout] 283 | / impl <B> BlockChain<B>
[INFO] [stdout] 284 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 292 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |       pub fn block_verify(&self, block: &B) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |       pub fn is_full(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |       pub fn add(&mut self, block: B) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |       fn empty_with_capacity(capacity: usize) -> Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 364 |       pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |       pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |       pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |       pub fn init_iter(self) -> std::vec::IntoIter<B> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainRef` is never constructed
[INFO] [stdout]    --> src/chain.rs:429:12
[INFO] [stdout]     |
[INFO] [stdout] 429 | pub struct ChainRef<'a, B>
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:441:8
[INFO] [stdout]     |
[INFO] [stdout] 436 | / impl <'a, B> ChainRef<'a, B> 
[INFO] [stdout] 437 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 441 |       fn new(data: *const B, len: usize, time_origin: u64, time_gap: u64) -> Result<Self, HError>{
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |       fn block_ref(&self, local_index: usize) -> Option<&B> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 486 |       pub fn  from_chain_by_index(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |       pub fn from_chain(chain: &'a BlockChain<B>) -> Result<Self, HError>
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |       pub fn contain_hash(&self, hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 556 |       fn hash_select(&self, hash: HashValue) -> Option<B> 
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 572 |       pub fn contain_data_hash(&self, data_hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 |       pub fn contain_uuid(&self, uuid: UuidBytes) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 606 |       pub fn contain_index(&self, index: usize) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 623 |       pub fn len(&self) -> usize {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 628 |       pub fn as_slice(&self) -> &[B] {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 634 |       pub fn from_slice(slice: &[B]) -> Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 644 |       pub fn into_vec(self) -> Vec<B> 
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Main` is never constructed
[INFO] [stdout]    --> src/chain.rs:668:12
[INFO] [stdout]     |
[INFO] [stdout] 668 | pub struct Main<D>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_block` are never used
[INFO] [stdout]    --> src/chain.rs:676:12
[INFO] [stdout]     |
[INFO] [stdout] 673 | / impl <D> Main<D>
[INFO] [stdout] 674 | |     where D: Block + Digester,
[INFO] [stdout]     | |______________________________- associated items in this implementation
[INFO] [stdout] 675 |   {
[INFO] [stdout] 676 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 684 |       pub fn add_block(&mut self, block: D) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sides` is never constructed
[INFO] [stdout]    --> src/chain.rs:735:12
[INFO] [stdout]     |
[INFO] [stdout] 735 | pub struct Sides<B>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_chain` are never used
[INFO] [stdout]    --> src/chain.rs:762:12
[INFO] [stdout]     |
[INFO] [stdout] 759 | / impl <B> Sides<B> 
[INFO] [stdout] 760 | |     where B: Block + Carrier,
[INFO] [stdout]     | |_____________________________- associated items in this implementation
[INFO] [stdout] 761 |   {
[INFO] [stdout] 762 |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 768 |       pub fn add_chain(&mut self, digest_id: u32, chain: BlockChain<B>) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfo` is never constructed
[INFO] [stdout]    --> src/chain.rs:785:12
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub struct ChainInfo <B>
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfoBuilder` is never constructed
[INFO] [stdout]    --> src/chain.rs:800:12
[INFO] [stdout]     |
[INFO] [stdout] 800 | pub struct ChainInfoBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:813:12
[INFO] [stdout]     |
[INFO] [stdout] 811 | impl  ChainInfoBuilder 
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout] 812 | {
[INFO] [stdout] 813 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 825 |     pub fn build<B>(self) -> ChainInfo<B>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 843 |     pub fn digest_id(mut self, digest_id: u32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 851 |     pub fn index(mut self, start: u32, end: u32) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 857 |     pub fn timestamp(mut self, start: u64, end: u64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 863 |     pub fn hash(mut self, hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 869 |     pub fn merkle_root(mut self, merkle_root: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 875 |     pub fn data_uuid(mut self, data_uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 881 |     pub fn data_hash(mut self, data_hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn new <'a,C>(capacity: usize) -> (ProducerBuf<'a>, ConsumerBuf<C>)
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reuse_buf_from_consumer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn reuse_buf_from_consumer<C> (consumer: &mut ConsumerBuf<C>)
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `produce_to_producer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn produce_to_producer(producer: &mut ProducerBuf) 
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProducerBuf` is never constructed
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct ProducerBuf <'a>
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `produce_all`, `produce`, `capacity`, `stream`, and `produce_from_stream` are never used
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl <'a> ProducerBuf <'a>
[INFO] [stdout]    | -------------------------- associated items in this implementation
[INFO] [stdout] 20 | {
[INFO] [stdout] 21 |     pub fn new(ringbuf: Ringbuf) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub async fn produce_all(&mut self, data: &[u8]) -> Result<(), HError> {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn produce(&mut self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn capacity(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn stream<T>(&mut self, stream: T) -> &mut Self 
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub async fn produce_from_stream<S> (&mut self, stream: S) 
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConsumerBuf` is never constructed
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub struct ConsumerBuf<T>
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | / impl <C> ConsumerBuf<C> 
[INFO] [stdout] 178 | |     where C: FnMut(&mut [u8])-> Result<(), HError>,
[INFO] [stdout] 179 | |         Self: Unpin
[INFO] [stdout]     | |___________________- associated items in this implementation
[INFO] [stdout] 180 |   {
[INFO] [stdout] 181 |       pub fn new(reader: Ringbuf) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |       pub fn task(&mut self, task: C) -> &mut Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |       pub fn with_closure<'a>(capacity: usize, closure: C) -> (ProducerBuf<'a>, Self) {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |       pub fn capacity(&self) -> usize {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 212 |       fn clone_buf_state(&self) -> BufState {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |       fn set_buf_state(&mut self, state: BufState) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |       fn wake_writer(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |       fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |       pub async fn consume(&mut self) -> Result<usize, HError> {
[INFO] [stdout]     |                    ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |       pub async fn consume_all(&mut self) -> Result<usize, HError> {
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Inner` is never constructed
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Inner {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BufState` is never used
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum BufState {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl  Inner
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 27 | {
[INFO] [stdout] 28 |     pub fn new(capacity: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BufPtr` is never constructed
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct BufPtr {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ringbuf` is never constructed
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Ringbuf{
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:69:12
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl  Ringbuf
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  69 |     pub fn new(capacity: usize) -> (Self, Self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn get_mut_vec_buf(&mut self) -> &mut Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn clone_buf_state(&self) -> BufState {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn set_buf_state(&mut self, state: BufState) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn wake_writer(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn wake_reader(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn writer_waker_save(&mut self, writer_waker: Waker) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn capacity(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn reuse(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `HashValue` is never used
[INFO] [stdout]   --> src/hash.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub type HashValue = [u8; 32];
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Hasher` is never used
[INFO] [stdout]   --> src/hash.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait Hasher {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/serializer.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | const  BUFFER_SIZE: usize = 1024 * 128;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIGGEST_BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/serializer.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | const  BIGGEST_BUFFER_SIZE: usize = 1024 * BUFFER_SIZE;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Serialize` is never used
[INFO] [stdout]   --> src/serializer.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub trait Serialize
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Serializer` is never constructed
[INFO] [stdout]    --> src/serializer.rs:322:12
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub struct Serializer <T> 
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_data` are never used
[INFO] [stdout]    --> src/serializer.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 329 | / impl  <T> Serializer <T> 
[INFO] [stdout] 330 | |     where T: Sized + Encode + Decode<()> + Send + Unpin 
[INFO] [stdout]     | |_______________________________________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 335 |       pub fn new(data: Option<T>) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 345 |       pub fn get_data(&self) -> Option<&T> {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `size_to_align` is never used
[INFO] [stdout]    --> src/serializer.rs:397:19
[INFO] [stdout]     |
[INFO] [stdout] 397 |     pub(super) fn size_to_align(size: usize, align: usize) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_all_from_stream` is never used
[INFO] [stdout]    --> src/serializer.rs:409:25
[INFO] [stdout]     |
[INFO] [stdout] 409 |     pub(super) async fn read_all_from_stream<R>(
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_size_header_into_slice` is never used
[INFO] [stdout]    --> src/serializer.rs:451:19
[INFO] [stdout]     |
[INFO] [stdout] 451 |     pub(super) fn save_size_header_into_slice(size: u32, dst: &mut [u8]) 
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pipe` is never constructed
[INFO] [stdout]  --> src/pipe.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Pipe<T> {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/pipe.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl <T> Pipe<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 12 |     //create a pipe with a given capacity
[INFO] [stdout] 13 |     pub fn new(capacity: usize) ->(Self, Self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub async fn send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub async fn recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn close(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub async fn is_closed(&mut self) -> bool {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub  fn try_recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn try_send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Block` is never used
[INFO] [stdout]   --> src/block.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Block 
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Digester` is never used
[INFO] [stdout]    --> src/block.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub trait Digester: Block {
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Carrier` is never used
[INFO] [stdout]    --> src/block.rs:118:11
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub trait Carrier : Block {
[INFO] [stdout]     |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `BlockArgs` is never used
[INFO] [stdout]    --> src/block.rs:126:11
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub trait BlockArgs {}
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBlockArgs` is never constructed
[INFO] [stdout]    --> src/block.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct DataBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/block.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl DataBlockArgs {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 136 |     ///create a new args list for a new data block.
[INFO] [stdout] 137 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DigestBlockArgs` is never constructed
[INFO] [stdout]    --> src/block.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct DigestBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/block.rs:163:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl DigestBlockArgs {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] 163 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBlock` is never constructed
[INFO] [stdout]    --> src/block.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct DataBlock {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `private_new` is never used
[INFO] [stdout]    --> src/block.rs:198:8
[INFO] [stdout]     |
[INFO] [stdout] 197 | impl DataBlock {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 198 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DigestBlock` is never constructed
[INFO] [stdout]    --> src/block.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub struct DigestBlock {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `private_new` and `create` are never used
[INFO] [stdout]    --> src/block.rs:333:8
[INFO] [stdout]     |
[INFO] [stdout] 332 | impl DigestBlock {
[INFO] [stdout]     | ---------------- associated functions in this implementation
[INFO] [stdout] 333 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub fn create(args: DigestBlockArgs ) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Keeper` is never used
[INFO] [stdout]   --> src/keeper.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Keeper: Send + Sync{
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainKeeper` is never constructed
[INFO] [stdout]   --> src/keeper.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct ChainKeeper  <B, D>
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/keeper.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 77 | / impl <B, D> ChainKeeper<B, D>
[INFO] [stdout] 78 | |     where D: Block + Digester,
[INFO] [stdout] 79 | |           B: Block + Carrier,
[INFO] [stdout]    | |_____________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 85 |       pub  fn new(limit: ChainLimit) -> Self {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataId` is never constructed
[INFO] [stdout]   --> src/archive.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct DataId {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Archiver` is never used
[INFO] [stdout]   --> src/archive.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Archiver {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Request` is never constructed
[INFO] [stdout]  --> src/req_resp.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Request<T> {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `send`, and `send_back` are never used
[INFO] [stdout]   --> src/req_resp.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl <T> Request<T> {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn new(data: T) -> (Self, Response<T>) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub async fn send(data: T, worker: RequestWorker<T>) -> Result<Response<T>, HError>{
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn send_back(self, data: T) -> Result<(), HError> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Response` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct Response<T> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `response` is never used
[INFO] [stdout]   --> src/req_resp.rs:56:18
[INFO] [stdout]    |
[INFO] [stdout] 54 | impl <T> Response<T> {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 55 |     /// Wait for and return the response from the worker
[INFO] [stdout] 56 |     pub async fn response(self) -> Result<T, HError> {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestWorker` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct RequestWorker<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send_to_worker` is never used
[INFO] [stdout]   --> src/req_resp.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl <T> RequestWorker<T> {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] 73 |     /// Internal method to send a request to the worker
[INFO] [stdout] 74 |     async fn send_to_worker(&self, req: Request<T>) -> Result<(), HError> {       
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WorkReceiver` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct WorkReceiver<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `recv_work`, and `recv_data` are never used
[INFO] [stdout]    --> src/req_resp.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout]  90 | impl <T> WorkReceiver<T> {
[INFO] [stdout]     | ------------------------ associated items in this implementation
[INFO] [stdout]  91 |     /// Create a new receiver wrapper
[INFO] [stdout]  92 |     fn new(receiver: mpsc::Receiver<Request<T>>) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub async fn recv_work(&mut self) -> Option<Request<T>> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub async fn recv_data(&mut self) -> Result<T, HError> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Worker` is never constructed
[INFO] [stdout]    --> src/req_resp.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub struct Worker<T> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> src/req_resp.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | / impl <T> Worker<T> 
[INFO] [stdout] 128 | |     where T: Send + 'static,
[INFO] [stdout]     | |____________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 135 |       pub fn new(
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |       pub async fn run(mut self, canc_token: CancellationToken ) -> Result<(),HError> {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_channel` is never used
[INFO] [stdout]    --> src/req_resp.rs:232:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | pub fn create_channel<T>(capacity: usize) -> 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `UuidBytes` is never used
[INFO] [stdout]  --> src/uuidbytes.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type UuidBytes = [u8; 16];
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Init` is never used
[INFO] [stdout]  --> src/uuidbytes.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait  Init{
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:364:25
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |                         ^^^^^ the lifetime is elided here
[INFO] [stdout] 365 |         -> Result<ChainRef<B>, HError>
[INFO] [stdout]     |                   ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 365 |         -> Result<ChainRef<'_, B>, HError>
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:381:17
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<'_, B> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:384:21
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, B> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.76s
[INFO] running `Command { std: "docker" "inspect" "b22bdd1bf1ffc5e882c1912ea46cb39eff29ad48eb0614d233acb38178994db9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b22bdd1bf1ffc5e882c1912ea46cb39eff29ad48eb0614d233acb38178994db9", kill_on_drop: false }`
[INFO] [stdout] b22bdd1bf1ffc5e882c1912ea46cb39eff29ad48eb0614d233acb38178994db9
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7d5f47bb028a34b3513be41c16b0f20a022ecc05f4247a7e9b5a40ad673219e7
[INFO] running `Command { std: "docker" "start" "-a" "7d5f47bb028a34b3513be41c16b0f20a022ecc05f4247a7e9b5a40ad673219e7", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/db.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncSeekExt, AsyncWrite, AsyncWriteExt};
[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: `std::env`
[INFO] [stdout]  --> src/db.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/db.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/db.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainLimit`, `ChainRef`, and `self`
[INFO] [stdout]   --> src/db.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::chain::{self, ChainLimit, BlockChain, ChainRef, ChainInfoBuilder, Chain};
[INFO] [stdout]    |                    ^^^^  ^^^^^^^^^^              ^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataBlockArgs`, `DataBlock`, `DigestBlockArgs`, and `DigestBlock`
[INFO] [stdout]   --> src/db.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::block::{Block, DataBlock, DataBlockArgs, DigestBlock, DigestBlockArgs};
[INFO] [stdout]    |                           ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/db.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::serializer::{self, Serialize, Serializer};
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]  --> src/network/tcp.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::net::{TcpStream, TcpListener};
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/network/tcp.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tokio::sync:: {Mutex, };
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/tcp.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/network/tcp.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]  --> src/network/tcp.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/network/tcp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_CONNECTIONS` and `TCP_RECV_PORT`
[INFO] [stdout]  --> src/network/tcp.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::constants::{TCP_RECV_PORT, MAX_CONNECTIONS};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]  --> src/network/tcp.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::herrors;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/network/tcp.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/tcp.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::signal::Signal`
[INFO] [stdout]   --> src/network/tcp.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::network::signal::Signal;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/network/udp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/udp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `create_channel`
[INFO] [stdout]   --> src/network/udp.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::req_resp::{RequestWorker, Request, create_channel};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHANNEL_CAPACITY` and `ZERO_HASH`
[INFO] [stdout]   --> src/network/udp.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::constants::{ CHANNEL_CAPACITY,
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, UDP_CHECK_PORT, ZERO_HASH,
[INFO] [stdout]    |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/network/udp.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::herrors::{HError, self};
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]   --> src/network/udp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::nodes::Identity;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::encode`
[INFO] [stdout]    --> src/network/udp.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |     use sqlx::encode;
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::timeout`
[INFO] [stdout]    --> src/network/udp.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |     use tokio::time::timeout;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]    --> src/network/udp.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |     use tokio_util::sync::CancellationToken;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_UDP_MSG_SIZE` and `ZERO_HASH`
[INFO] [stdout]    --> src/network/udp.rs:227:28
[INFO] [stdout]     |
[INFO] [stdout] 227 |     use crate::constants::{ZERO_HASH, MAX_UDP_MSG_SIZE};
[INFO] [stdout]     |                            ^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]    --> src/network/udp.rs:228:26
[INFO] [stdout]     |
[INFO] [stdout] 228 |     use crate::network::{Message, Payload};
[INFO] [stdout]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]    --> src/network/udp.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |     use crate::nodes::Identity;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/network/network.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/network/network.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]   --> src/network/network.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     use crate::network::protocol::{Message, Payload};
[INFO] [stdout]    |                                    ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/network.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     use crate::network::udp::UdpConnection;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/network/protocol.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddr`
[INFO] [stdout]  --> src/network/protocol.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config`
[INFO] [stdout]  --> src/network/protocol.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::{Decode, Encode, config};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/network/protocol.rs:5:46
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite,};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpStream`
[INFO] [stdout]  --> src/network/protocol.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/protocol.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/network/protocol.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_MSG_SIZE`
[INFO] [stdout]   --> src/network/protocol.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::{MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, ZERO_HASH};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignRequest`
[INFO] [stdout]   --> src/network/protocol.rs:14:40
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::nodes::{Identity, NodeInfo, SignRequest, SignHandle};
[INFO] [stdout]    |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/protocol.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::network::udp::UdpConnection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/protocol.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncSeekExt`
[INFO] [stdout]    --> src/network/protocol.rs:647:9
[INFO] [stdout]     |
[INFO] [stdout] 647 |     use tokio::io::AsyncSeekExt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `network::signal` and `nodes::SignHandle`
[INFO] [stdout]    --> src/network/protocol.rs:649:17
[INFO] [stdout]     |
[INFO] [stdout] 649 |     use crate::{network::signal, nodes::SignHandle};
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decode` and `Encode`
[INFO] [stdout]    --> src/network/protocol.rs:650:19
[INFO] [stdout]     |
[INFO] [stdout] 650 |     use bincode::{Decode, Encode};
[INFO] [stdout]     |                   ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/network/protocol.rs:652:9
[INFO] [stdout]     |
[INFO] [stdout] 652 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]   --> src/network/register.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `Worker`
[INFO] [stdout]   --> src/network/register.rs:13:63
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::req_resp::{self, Request, RequestWorker, Response, Worker, WorkReceiver};
[INFO] [stdout]    |                                                               ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]    --> src/network/register.rs:470:9
[INFO] [stdout]     |
[INFO] [stdout] 470 |     use std::thread::sleep;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/network/register.rs:472:9
[INFO] [stdout]     |
[INFO] [stdout] 472 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::new`
[INFO] [stdout]    --> src/network/register.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |     use crate::fpsc::new;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]    --> src/network/register.rs:475:9
[INFO] [stdout]     |
[INFO] [stdout] 475 |     use crate::herrors::HError;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]    --> src/network/register.rs:476:26
[INFO] [stdout]     |
[INFO] [stdout] 476 |     use crate::network::{Payload, Message};
[INFO] [stdout]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `Response`
[INFO] [stdout]    --> src/network/register.rs:477:27
[INFO] [stdout]     |
[INFO] [stdout] 477 |     use crate::req_resp::{Request, Response, RequestWorker};
[INFO] [stdout]     |                           ^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PayloadTypes`
[INFO] [stdout]   --> src/network/mod.rs:11:70
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use register::{AsyncHandler, AsyncRegister, AsyncPayloadHandler, PayloadTypes};
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/nodes/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRegister`
[INFO] [stdout]   --> src/nodes/node.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::{AsyncHandler, AsyncPayloadHandler, AsyncRegister, udp_send_to}; 
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `Carrier`, and `Digester`
[INFO] [stdout]   --> src/nodes/node.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stdout]    |                    ^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainExecutor` and `Executor`
[INFO] [stdout]   --> src/nodes/node.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::executor::{Executor, ChainExecutor};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::archive::Archiver`
[INFO] [stdout]   --> src/nodes/node.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::archive::Archiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger_error`
[INFO] [stdout]   --> src/nodes/node.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::herrors::{HError, logger_error, logger_error_with_error, self};
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `self`
[INFO] [stdout]   --> src/nodes/node.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::req_resp::{self, RequestWorker, WorkReceiver, create_channel, Request};
[INFO] [stdout]    |                       ^^^^                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/center.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/center.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/center.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/center.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::nodes::{Node, NodeState, Reputation};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/normal.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/normal.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/normal.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/normal.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::nodes::node::{Node, NodeState, Reputation};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/nodes/identity.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Receiver`
[INFO] [stdout]  --> src/nodes/identity.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc::{self, Sender, Receiver};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::MAX_UDP_MSG_SIZE`
[INFO] [stdout]   --> src/nodes/identity.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::MAX_UDP_MSG_SIZE;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/nodes/identity.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/nodes/identity.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/executor.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/executor.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::block::{ Block, BlockArgs, Carrier, DataBlockArgs, DigestBlockArgs, Digester };
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/executor.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainInfo`
[INFO] [stdout]  --> src/executor.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::chain::{Chain, BlockChain, ChainInfo, ChainLimit};
[INFO] [stdout]   |                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/constants.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/producer_cosumer.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                 ^^^^^^^^^^                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:369:21
[INFO] [stdout]     |
[INFO] [stdout] 369 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:371:9
[INFO] [stdout]     |
[INFO] [stdout] 371 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:40
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:306:21
[INFO] [stdout]     |
[INFO] [stdout] 306 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/mod.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/fpsc/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::producer_cosumer::ConsumerBuf`
[INFO] [stdout]   --> src/fpsc/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use crate::fpsc::producer_cosumer::ConsumerBuf;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc`
[INFO] [stdout]   --> src/fpsc/mod.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     use crate::fpsc;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constants::ZERO_HASH`
[INFO] [stdout]  --> src/hash.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{constants::ZERO_HASH, herrors::HError}; 
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/block.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/block.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::uuidbytes::{self, UuidBytes};
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainLimit`
[INFO] [stdout]  --> src/block.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::chain::{BlockChain, ChainLimit};
[INFO] [stdout]   |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLockReadGuard`, `RwLockWriteGuard`, and `RwLock`
[INFO] [stdout]  --> src/keeper.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/keeper.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/keeper.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]  --> src/keeper.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]   |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/keeper.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/keeper.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DigestBlockArgs`
[INFO] [stdout]   --> src/keeper.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::block::{Block, Digester, Carrier, DigestBlockArgs};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/keeper.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainInfo`, and `ChainRef`
[INFO] [stdout]   --> src/keeper.rs:12:39
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::chain::{BlockChain, Chain, ChainInfo, ChainInfoBuilder, ChainRef, ChainLimit,
[INFO] [stdout]    |                                       ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/archive.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Chain`
[INFO] [stdout]   --> src/network/protocol.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::chain::{Chain, BlockChain};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]   --> src/network/protocol.rs:13:31
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:55
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/db.rs:319:24
[INFO] [stdout]     |
[INFO] [stdout] 319 |             if let Err(e) = meta_iterator {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[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/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[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: `bundle_file`
[INFO] [stdout]    --> src/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bundle_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain`
[INFO] [stdout]    --> src/db.rs:347:35
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn save_chain<B>(&self, chain: &BlockChain<B>) -> Result<(), HError>
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uuid`
[INFO] [stdout]    --> src/db.rs:356:35
[INFO] [stdout]     |
[INFO] [stdout] 356 |     async fn find_chain<B>(&self, uuid: UuidBytes) -> Option<BlockChain<B>>
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_uuid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:33:37
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:33:62
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                              ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:39:36
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:39:61
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:47:58
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                          ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:53:36
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:53:61
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:70:36
[INFO] [stdout]    |
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:70:61
[INFO] [stdout]    |
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         unsafe {self.ringbuf.capacity() }
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `capacity`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let capacity = self.capacity();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:235:41
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:238:44
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                            ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `CentralNode<B, D>` is more private than the item `Nodebuilder::<B, D>::build`
[INFO] [stdout]    --> src/nodes/center.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Nodebuilder::<B, D>::build` is reachable at visibility `pub(in crate::nodes)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `CentralNode<B, D>` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/nodes/center.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | struct CentralNode <B, D> 
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `HError` is never used
[INFO] [stdout]  --> src/herrors.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum HError {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PipeError` is never used
[INFO] [stdout]   --> src/herrors.rs:81:10
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub enum PipeError {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init` is never used
[INFO] [stdout]    --> src/herrors.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn logger_init() {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_with_level` is never used
[INFO] [stdout]    --> src/herrors.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn logger_init_with_level(level: log::LevelFilter) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_info` is never used
[INFO] [stdout]    --> src/herrors.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn logger_init_above_info() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_debug` is never used
[INFO] [stdout]    --> src/herrors.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn logger_init_above_debug() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_trace` is never used
[INFO] [stdout]    --> src/herrors.rs:122:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn logger_init_above_trace() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_error` is never used
[INFO] [stdout]    --> src/herrors.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn logger_init_above_error() {  
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_info` is never used
[INFO] [stdout]    --> src/herrors.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn logger_info(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_error` is never used
[INFO] [stdout]    --> src/herrors.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn logger_error(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_error_with_error` is never used
[INFO] [stdout]    --> src/herrors.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub fn logger_error_with_error(error: &HError) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_debug` is never used
[INFO] [stdout]    --> src/herrors.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn logger_debug(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_debug_with_error` is never used
[INFO] [stdout]    --> src/herrors.rs:147:8
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn logger_debug_with_error(error: &HError) {   
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_result` is never used
[INFO] [stdout]    --> src/herrors.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn logger_result<T>(result: Result<T, HError>) -> Option<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DataBase` is never used
[INFO] [stdout]   --> src/db.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait DataBase {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Meta` is never used
[INFO] [stdout]   --> src/db.rs:38:11
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub trait Meta {
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MetaData` is never constructed
[INFO] [stdout]   --> src/db.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct MetaData {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/db.rs:56:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl MetaData {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  55 |     ///create a new meta data with the given name and uuid.
[INFO] [stdout]  56 |     pub fn new(name: String, uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn encode_into(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub fn decode_from(buffer: &[u8]) -> Result<MetaData, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     async fn save_meta_to_file(&self, path: &PathBuf) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     async fn get_one_meta_from_file(file_stream: &mut File) -> Result<(MetaData, usize), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn set_name(mut self, name: String) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn set_uuid(mut self, uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn uuid(&self) -> UuidBytes {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn name(&self) -> &String {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MetaDataIterator` is never constructed
[INFO] [stdout]    --> src/db.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct MetaDataIterator {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `reset`, and `next` are never used
[INFO] [stdout]    --> src/db.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl MetaDataIterator {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 171 |     ///create a new MetaDataIterator
[INFO] [stdout] 172 |     pub async fn new(file_path: PathBuf) -> Result<Self, HError> {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn reset(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     async fn next(&mut self) -> Option<Result<MetaData, HError>> {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileDataBase` is never constructed
[INFO] [stdout]    --> src/db.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct FileDataBase{
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/db.rs:234:12
[INFO] [stdout]     |
[INFO] [stdout] 229 | impl FileDataBase {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn new(data_absolute_dir_opt: Option<String>) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_BUNDLE_FILE` is never used
[INFO] [stdout]    --> src/db.rs:365:7
[INFO] [stdout]     |
[INFO] [stdout] 365 | const DEFAULT_BUNDLE_FILE: &str = "chains.bundle";
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bundle` is never constructed
[INFO] [stdout]    --> src/db.rs:378:12
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct Bundle <B>
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `default_new`, `update_description_with_chain`, `save_to_file`, `save_chains_to_bundle`, `encode_to_stream`, and `load_chains_from_bundle` are never used
[INFO] [stdout]    --> src/db.rs:391:12
[INFO] [stdout]     |
[INFO] [stdout] 388 | / impl <B> Bundle <B> 
[INFO] [stdout] 389 | |     where B: Block + Encode + Decode<()> + Send + Unpin,
[INFO] [stdout]     | |________________________________________________________- associated items in this implementation
[INFO] [stdout] 390 |   {
[INFO] [stdout] 391 |       pub fn default_new() -> Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |       fn update_description_with_chain(&mut self, chain: &BlockChain<B>) 
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 437 |       pub async fn save_to_file(&mut self, chain: BlockChain<B> ) 
[INFO] [stdout]     |                    ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 469 |       async fn save_chains_to_bundle(&mut self, chains:& Vec<BlockChain<B>>)
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 501 |       async fn encode_to_stream<R> (
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 540 |       pub async fn load_chains_from_bundle(&mut self) 
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Signal` is never used
[INFO] [stdout]  --> src/network/signal.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Signal {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_accept_result` is never used
[INFO] [stdout]   --> src/network/signal.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Signal {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     ///create a new listen result signal
[INFO] [stdout] 12 |     pub fn from_accept_result( listen_result: (TcpStream, SocketAddr)) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `UdpConnection` is never used
[INFO] [stdout]   --> src/network/udp.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub trait UdpConnection: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `udp_send_to` is never used
[INFO] [stdout]    --> src/network/udp.rs:205:18
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub async fn udp_send_to(
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Test` is never constructed
[INFO] [stdout]    --> src/network/udp.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 |     struct Test;
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Network` is never used
[INFO] [stdout]  --> src/network/network.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub trait Network: UdpConnection + Send + Sync
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NetworkState` is never used
[INFO] [stdout]   --> src/network/network.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum NetworkState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkHandler` is never constructed
[INFO] [stdout]   --> src/network/network.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NetworkHandler {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SignatureBytes` is never used
[INFO] [stdout]   --> src/network/protocol.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | type SignatureBytes = [u8; 64];
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]   --> src/network/protocol.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct Header {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/network/protocol.rs:35:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Header {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  35 |     fn new(msg_length: u32, signature: SignatureBytes, public_key: HashValue) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  44 |     pub fn header_size() -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn encode_into_slice(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     fn decode_from_slice  (data: &[u8]) -> Result<Header, HError> 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub async fn from_stream <T> ( stream: &mut T) -> Result<Header, HError> 
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn into_stream<T>(&self, stream: &mut T) -> Result<(), HError> 
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn caculate_encode_size(&self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn verify_header(&self, data: &[u8]) -> Result<(), HError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Payload` is never used
[INFO] [stdout]    --> src/network/protocol.rs:162:10
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub enum Payload
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/network/protocol.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl Payload {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn from(msg: Message) -> Payload {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestInfo` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:191:12
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub struct RequestInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VoteBlockArgs` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub struct VoteBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/protocol.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | impl VoteBlockArgs {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 212 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VoteBlock` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct VoteBlock {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `private_new` and `new` are never used
[INFO] [stdout]    --> src/network/protocol.rs:269:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | impl VoteBlock {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] 269 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn new(args: VoteBlockArgs) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockRec` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:414:12
[INFO] [stdout]     |
[INFO] [stdout] 414 | pub struct BlockRec {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Message` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:422:12
[INFO] [stdout]     |
[INFO] [stdout] 422 | pub struct Message {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/network/protocol.rs:435:12
[INFO] [stdout]     |
[INFO] [stdout] 434 | impl Message {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 435 |     pub fn new(sender: HashValue, receiver: HashValue, payload: Payload ) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 445 |     fn new_with_zero() -> Self{
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn decode_from_slice_with_header(my_name: &HashValue, slice: &[u8], header: &Header) 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 496 |     pub fn decode_from_slice(my_name: &HashValue, slice: &[u8]) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 528 |     pub fn encode_into_slice(&self, identity:&mut Identity, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 564 |     pub async fn encode(&self, sign_handle: &SignHandle, buffer: &mut [u8] )
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 603 |     pub async fn into_stream<S> (&self, identity: &mut Identity, stream: &mut S) -> Result<(), HError>
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 617 |     async fn from_stream <S>  (my_name: &HashValue, stream: &mut S) -> Result<Message, HError> 
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PayloadTypes` is never used
[INFO] [stdout]   --> src/network/register.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum PayloadTypes {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_payload` is never used
[INFO] [stdout]   --> src/network/register.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl PayloadTypes {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 34 |     ///return a PayloadTypes from a Payload
[INFO] [stdout] 35 |     pub fn from_payload(payload: &Payload) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsyncHandler` is never used
[INFO] [stdout]   --> src/network/register.rs:53:11
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub trait AsyncHandler{
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AsyncRegister` is never constructed
[INFO] [stdout]    --> src/network/register.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct AsyncRegister
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl AsyncRegister {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 126 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AsyncPayloadHandler` is never constructed
[INFO] [stdout]    --> src/network/register.rs:133:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | pub struct AsyncPayloadHandler {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:138:12
[INFO] [stdout]     |
[INFO] [stdout] 137 | impl AsyncPayloadHandler {
[INFO] [stdout]     | ------------------------ associated function in this implementation
[INFO] [stdout] 138 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Register` is never constructed
[INFO] [stdout]    --> src/network/register.rs:278:12
[INFO] [stdout]     |
[INFO] [stdout] 278 | pub struct Register{
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `reg` and `new` are never used
[INFO] [stdout]    --> src/network/register.rs:284:8
[INFO] [stdout]     |
[INFO] [stdout] 282 | impl Register {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 283 |     /// register a handler for a specific payload type.
[INFO] [stdout] 284 |     fn reg(
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 297 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HandlerContext` is never constructed
[INFO] [stdout]    --> src/network/register.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | pub struct HandlerContext {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_request_worker`, and `send` are never used
[INFO] [stdout]    --> src/network/register.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | impl HandlerContext {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 309 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn get_request_worker(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 322 |     async fn send(
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SyncHandler` is never used
[INFO] [stdout]    --> src/network/register.rs:345:11
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub trait SyncHandler {
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadHandler` is never constructed
[INFO] [stdout]    --> src/network/register.rs:365:12
[INFO] [stdout]     |
[INFO] [stdout] 365 | pub struct PayloadHandler {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:370:8
[INFO] [stdout]     |
[INFO] [stdout] 369 | impl PayloadHandler {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] 370 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Handler` is never used
[INFO] [stdout]   --> src/network/handlers.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | trait Handler
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MessageHandler` is never constructed
[INFO] [stdout]   --> src/network/handlers.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct MessageHandler  {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `handle_message` are never used
[INFO] [stdout]   --> src/network/handlers.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl MessageHandler {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 64 |     pub fn new(pipe_to_chain_keeper: Pipe<Message>)
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeInfo` is never constructed
[INFO] [stdout]   --> src/nodes/node.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct NodeInfo {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/nodes/node.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl NodeInfo {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  58 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  73 |     pub fn name(&self) -> Result<HashValue, HError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn address(&self) -> Result<Vec<SocketAddr>, HError> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn caller(&self) -> Result<HashValue, HError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn reputation(&self) -> Result<Reputation, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn last_conn(&self) -> Result<u64, HError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn last_state(&self) -> Result<NodeState, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `NodeAppend` is never used
[INFO] [stdout]    --> src/nodes/node.rs:143:11
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub trait NodeAppend {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Node` is never used
[INFO] [stdout]    --> src/nodes/node.rs:162:11
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub trait Node: UdpConnection + Sized + NodeAppend{       
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reputation` is never constructed
[INFO] [stdout]    --> src/nodes/node.rs:700:12
[INFO] [stdout]     |
[INFO] [stdout] 700 | pub struct Reputation {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/nodes/node.rs:705:12
[INFO] [stdout]     |
[INFO] [stdout] 704 | impl Reputation {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 705 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NodeState` is never used
[INFO] [stdout]    --> src/nodes/node.rs:715:10
[INFO] [stdout]     |
[INFO] [stdout] 715 | pub enum NodeState {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]    --> src/nodes/node.rs:725:6
[INFO] [stdout]     |
[INFO] [stdout] 725 | type NodeName = HashValue;
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `msg_delivery` is never used
[INFO] [stdout]    --> src/nodes/node.rs:662:18
[INFO] [stdout]     |
[INFO] [stdout] 662 |     pub async fn msg_delivery(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]   --> src/nodes/center.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type NodeName = HashValue;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Central` is never used
[INFO] [stdout]   --> src/nodes/center.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Central {
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CentralNode` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct CentralNode <B, D> 
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/center.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | / impl <B, D> CentralNode <B, D>
[INFO] [stdout] 40 | |     where B: Block + Carrier,
[INFO] [stdout] 41 | |           D: Block + Digester,
[INFO] [stdout]    | |______________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |       fn new(name: NodeName, address: String) -> Self{
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nodebuilder` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Nodebuilder<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/nodes/center.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | / impl <B, D> Nodebuilder<B, D> 
[INFO] [stdout]  77 | |     where B: Block + Carrier,
[INFO] [stdout]  78 | |           D: Block + Digester,
[INFO] [stdout]     | |______________________________- associated items in this implementation
[INFO] [stdout]  79 |   {
[INFO] [stdout]  80 |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |       pub fn name(&mut self, name: NodeName) -> &mut Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |       pub fn address(&mut self, address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |       pub fn center_address(&mut self, center_address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |       pub fn executor(&mut self, executor: ChainExecutor<B, D>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |       pub fn reputation(&mut self, reputation: Reputation) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |       pub fn friends (&mut self, friends: Option<HashMap< NodeName, NormalNode<B, D>>>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |       fn check_fields<T>(&self, option: &Option<T>, fild_name: &str)-> Result<(), HError> {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |       pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]  --> src/nodes/normal.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type NodeName = HashValue;
[INFO] [stdout]   |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NormalNode` is never constructed
[INFO] [stdout]   --> src/nodes/normal.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct NormalNode<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/normal.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | / impl <B, D> NormalNode <B, D>
[INFO] [stdout] 33 | |     where B: Block + Carrier,
[INFO] [stdout] 34 | |           D: Block + Digester
[INFO] [stdout]    | |_____________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |       fn new(name: NodeName, capacity: usize) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignRequest` is never constructed
[INFO] [stdout]   --> src/nodes/identity.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SignRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/identity.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl SignRequest {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn new(bytes_vec: Vec<u8>, response: oneshot::Sender<Result<[u8; 64], HError>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignHandle` is never constructed
[INFO] [stdout]   --> src/nodes/identity.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct SignHandle {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `spawn_new`, `verify`, `send`, `public_key_bytes`, and `sign` are never used
[INFO] [stdout]    --> src/nodes/identity.rs:79:18
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl SignHandle {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub async fn spawn_new(mut identity: Identity, capacity: usize, cancel_token: CancellationToken) -> 
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn verify(&self, message: &[u8], signature: &[u8; 64]) -> Result<(), HError> 
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub async fn send(&self, sign_request: SignRequest) -> Result<(), HError>
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn public_key_bytes(&self) -> [u8;32]
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub async fn sign(&self, bytes: &[u8]) -> 
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Identity` is never constructed
[INFO] [stdout]    --> src/nodes/identity.rs:210:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct Identity{
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_keypair`, `new`, `sign_msg`, `public_key_to_bytes`, and `verify_signature_bytes` are never used
[INFO] [stdout]    --> src/nodes/identity.rs:217:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl Identity {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 216 |     /// a helper function for Identity::new()
[INFO] [stdout] 217 |     fn create_keypair() -> (VerifyingKey, SigningKey) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn sign_msg(&mut self, message: &[u8]) -> Result<[u8; 64], HError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn public_key_to_bytes(&self) -> [u8; 32] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn verify_signature_bytes(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Executor` is never used
[INFO] [stdout]   --> src/executor.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Executor: Archiver {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainExecutor` is never constructed
[INFO] [stdout]   --> src/executor.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct ChainExecutor < B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/executor.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 43 | / impl < B, D> ChainExecutor <B, D> 
[INFO] [stdout] 44 | |     where B: Block + Carrier,
[INFO] [stdout] 45 | |           D: Block + Digester ,
[INFO] [stdout]    | |_______________________________- associated function in this implementation
[INFO] [stdout] 46 |   {
[INFO] [stdout] 47 |       pub  fn new(limit: ChainLimit) -> Self
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Location` is never used
[INFO] [stdout]  --> src/constants.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Location = usize;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Bytes` is never used
[INFO] [stdout]  --> src/constants.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type Bytes = Vec<u8>;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_HASH` is never used
[INFO] [stdout]  --> src/constants.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const ZERO_HASH:[u8; 32] = [0; 32];
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U64` is never used
[INFO] [stdout]  --> src/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const ZERO_U64: u64 = 0 ;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_UUID` is never used
[INFO] [stdout]  --> src/constants.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const ZERO_UUID: [u8; 16] = [0;16];
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U32` is never used
[INFO] [stdout]   --> src/constants.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const ZERO_U32: u32 = 0;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_PACKAGE` is never used
[INFO] [stdout]   --> src/constants.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const PATH_CACHE_PACKAGE: &str = "cache/packages";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_BUNDLE` is never used
[INFO] [stdout]   --> src/constants.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const PATH_CACHE_BUNDLE: &str = "cache/bundles";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const BUFFER_SIZE: usize = 1024 * 32;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const UDP_SENDER_PORT: u16 = 8080;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const UDP_RECV_PORT: u16 = 8081;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const TCP_SENDER_PORT: u16 = 8088;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const TCP_RECV_PORT: u16 = 8089;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MSG_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const MAX_MSG_SIZE: usize = 1024 * 1024; // 1MB
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_UDP_MSG_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const MAX_UDP_MSG_SIZE: usize= 1024; // 1KB
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MTU_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const MTU_SIZE: usize = 1500; // 1500 bytes
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_CONNECTIONS` is never used
[INFO] [stdout]   --> src/constants.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub const MAX_CONNECTIONS: usize= 100; // maximum number of  tcp connections
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_CHECK_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub const UDP_CHECK_PORT: u16 = 7070;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TIME_MS_FOR_UNP_RECV` is never used
[INFO] [stdout]   --> src/constants.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub const TIME_MS_FOR_UNP_RECV: u64 = 5000; // 5 seconds
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHANNEL_CAPACITY` is never used
[INFO] [stdout]   --> src/constants.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const CHANNEL_CAPACITY: usize = 1024;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_FILE_NAME_LEN` is never used
[INFO] [stdout]   --> src/constants.rs:37:11
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub const MAX_FILE_NAME_LEN: usize = 128;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Chain` is never used
[INFO] [stdout]   --> src/chain.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait Chain  
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainLimit` is never constructed
[INFO] [stdout]    --> src/chain.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub struct ChainLimit {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `max_len`, `time_gap`, `length_check`, `time_check`, and `default` are never used
[INFO] [stdout]    --> src/chain.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | impl ChainLimit {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 211 |     ///create a new limit information for a chain.
[INFO] [stdout] 212 |     pub fn new(max_len: usize, time_gap: u64) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn max_len(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn time_gap(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 229 |     pub fn length_check(&self, len: usize) -> Result<(), HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn time_check<B>(&self, origin: u64, block: &B) -> Result<(), HError> 
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     pub fn default() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockChain` is never constructed
[INFO] [stdout]    --> src/chain.rs:275:12
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub struct BlockChain<B>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:292:12
[INFO] [stdout]     |
[INFO] [stdout] 283 | / impl <B> BlockChain<B>
[INFO] [stdout] 284 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 292 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |       pub fn block_verify(&self, block: &B) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |       pub fn is_full(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |       pub fn add(&mut self, block: B) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |       fn empty_with_capacity(capacity: usize) -> Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 364 |       pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |       pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |       pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |       pub fn init_iter(self) -> std::vec::IntoIter<B> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainRef` is never constructed
[INFO] [stdout]    --> src/chain.rs:429:12
[INFO] [stdout]     |
[INFO] [stdout] 429 | pub struct ChainRef<'a, B>
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:441:8
[INFO] [stdout]     |
[INFO] [stdout] 436 | / impl <'a, B> ChainRef<'a, B> 
[INFO] [stdout] 437 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 441 |       fn new(data: *const B, len: usize, time_origin: u64, time_gap: u64) -> Result<Self, HError>{
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |       fn block_ref(&self, local_index: usize) -> Option<&B> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 486 |       pub fn  from_chain_by_index(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |       pub fn from_chain(chain: &'a BlockChain<B>) -> Result<Self, HError>
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |       pub fn contain_hash(&self, hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 556 |       fn hash_select(&self, hash: HashValue) -> Option<B> 
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 572 |       pub fn contain_data_hash(&self, data_hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 |       pub fn contain_uuid(&self, uuid: UuidBytes) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 606 |       pub fn contain_index(&self, index: usize) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 623 |       pub fn len(&self) -> usize {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 628 |       pub fn as_slice(&self) -> &[B] {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 634 |       pub fn from_slice(slice: &[B]) -> Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 644 |       pub fn into_vec(self) -> Vec<B> 
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Main` is never constructed
[INFO] [stdout]    --> src/chain.rs:668:12
[INFO] [stdout]     |
[INFO] [stdout] 668 | pub struct Main<D>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_block` are never used
[INFO] [stdout]    --> src/chain.rs:676:12
[INFO] [stdout]     |
[INFO] [stdout] 673 | / impl <D> Main<D>
[INFO] [stdout] 674 | |     where D: Block + Digester,
[INFO] [stdout]     | |______________________________- associated items in this implementation
[INFO] [stdout] 675 |   {
[INFO] [stdout] 676 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 684 |       pub fn add_block(&mut self, block: D) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sides` is never constructed
[INFO] [stdout]    --> src/chain.rs:735:12
[INFO] [stdout]     |
[INFO] [stdout] 735 | pub struct Sides<B>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_chain` are never used
[INFO] [stdout]    --> src/chain.rs:762:12
[INFO] [stdout]     |
[INFO] [stdout] 759 | / impl <B> Sides<B> 
[INFO] [stdout] 760 | |     where B: Block + Carrier,
[INFO] [stdout]     | |_____________________________- associated items in this implementation
[INFO] [stdout] 761 |   {
[INFO] [stdout] 762 |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 768 |       pub fn add_chain(&mut self, digest_id: u32, chain: BlockChain<B>) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfo` is never constructed
[INFO] [stdout]    --> src/chain.rs:785:12
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub struct ChainInfo <B>
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfoBuilder` is never constructed
[INFO] [stdout]    --> src/chain.rs:800:12
[INFO] [stdout]     |
[INFO] [stdout] 800 | pub struct ChainInfoBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:813:12
[INFO] [stdout]     |
[INFO] [stdout] 811 | impl  ChainInfoBuilder 
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout] 812 | {
[INFO] [stdout] 813 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 825 |     pub fn build<B>(self) -> ChainInfo<B>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 843 |     pub fn digest_id(mut self, digest_id: u32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 851 |     pub fn index(mut self, start: u32, end: u32) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 857 |     pub fn timestamp(mut self, start: u64, end: u64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 863 |     pub fn hash(mut self, hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 869 |     pub fn merkle_root(mut self, merkle_root: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 875 |     pub fn data_uuid(mut self, data_uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 881 |     pub fn data_hash(mut self, data_hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn new <'a,C>(capacity: usize) -> (ProducerBuf<'a>, ConsumerBuf<C>)
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reuse_buf_from_consumer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn reuse_buf_from_consumer<C> (consumer: &mut ConsumerBuf<C>)
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `produce_to_producer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn produce_to_producer(producer: &mut ProducerBuf) 
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProducerBuf` is never constructed
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct ProducerBuf <'a>
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `produce_all`, `produce`, `capacity`, `stream`, and `produce_from_stream` are never used
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl <'a> ProducerBuf <'a>
[INFO] [stdout]    | -------------------------- associated items in this implementation
[INFO] [stdout] 20 | {
[INFO] [stdout] 21 |     pub fn new(ringbuf: Ringbuf) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub async fn produce_all(&mut self, data: &[u8]) -> Result<(), HError> {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn produce(&mut self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn capacity(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn stream<T>(&mut self, stream: T) -> &mut Self 
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub async fn produce_from_stream<S> (&mut self, stream: S) 
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConsumerBuf` is never constructed
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub struct ConsumerBuf<T>
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | / impl <C> ConsumerBuf<C> 
[INFO] [stdout] 178 | |     where C: FnMut(&mut [u8])-> Result<(), HError>,
[INFO] [stdout] 179 | |         Self: Unpin
[INFO] [stdout]     | |___________________- associated items in this implementation
[INFO] [stdout] 180 |   {
[INFO] [stdout] 181 |       pub fn new(reader: Ringbuf) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |       pub fn task(&mut self, task: C) -> &mut Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |       pub fn with_closure<'a>(capacity: usize, closure: C) -> (ProducerBuf<'a>, Self) {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |       pub fn capacity(&self) -> usize {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 212 |       fn clone_buf_state(&self) -> BufState {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |       fn set_buf_state(&mut self, state: BufState) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |       fn wake_writer(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |       fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |       pub async fn consume(&mut self) -> Result<usize, HError> {
[INFO] [stdout]     |                    ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |       pub async fn consume_all(&mut self) -> Result<usize, HError> {
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Inner` is never constructed
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Inner {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BufState` is never used
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum BufState {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl  Inner
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 27 | {
[INFO] [stdout] 28 |     pub fn new(capacity: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BufPtr` is never constructed
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct BufPtr {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ringbuf` is never constructed
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Ringbuf{
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:69:12
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl  Ringbuf
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  69 |     pub fn new(capacity: usize) -> (Self, Self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn get_mut_vec_buf(&mut self) -> &mut Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn clone_buf_state(&self) -> BufState {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn set_buf_state(&mut self, state: BufState) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn wake_writer(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn wake_reader(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn writer_waker_save(&mut self, writer_waker: Waker) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn capacity(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn reuse(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `HashValue` is never used
[INFO] [stdout]   --> src/hash.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub type HashValue = [u8; 32];
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Hasher` is never used
[INFO] [stdout]   --> src/hash.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait Hasher {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/serializer.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | const  BUFFER_SIZE: usize = 1024 * 128;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIGGEST_BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/serializer.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | const  BIGGEST_BUFFER_SIZE: usize = 1024 * BUFFER_SIZE;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Serialize` is never used
[INFO] [stdout]   --> src/serializer.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub trait Serialize
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Serializer` is never constructed
[INFO] [stdout]    --> src/serializer.rs:322:12
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub struct Serializer <T> 
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_data` are never used
[INFO] [stdout]    --> src/serializer.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 329 | / impl  <T> Serializer <T> 
[INFO] [stdout] 330 | |     where T: Sized + Encode + Decode<()> + Send + Unpin 
[INFO] [stdout]     | |_______________________________________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 335 |       pub fn new(data: Option<T>) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 345 |       pub fn get_data(&self) -> Option<&T> {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `size_to_align` is never used
[INFO] [stdout]    --> src/serializer.rs:397:19
[INFO] [stdout]     |
[INFO] [stdout] 397 |     pub(super) fn size_to_align(size: usize, align: usize) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_all_from_stream` is never used
[INFO] [stdout]    --> src/serializer.rs:409:25
[INFO] [stdout]     |
[INFO] [stdout] 409 |     pub(super) async fn read_all_from_stream<R>(
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_size_header_into_slice` is never used
[INFO] [stdout]    --> src/serializer.rs:451:19
[INFO] [stdout]     |
[INFO] [stdout] 451 |     pub(super) fn save_size_header_into_slice(size: u32, dst: &mut [u8]) 
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pipe` is never constructed
[INFO] [stdout]  --> src/pipe.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Pipe<T> {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling history-chain v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/pipe.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl <T> Pipe<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 12 |     //create a pipe with a given capacity
[INFO] [stdout] 13 |     pub fn new(capacity: usize) ->(Self, Self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub async fn send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub async fn recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn close(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub async fn is_closed(&mut self) -> bool {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub  fn try_recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn try_send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Block` is never used
[INFO] [stdout]   --> src/block.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Block 
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Digester` is never used
[INFO] [stdout]    --> src/block.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub trait Digester: Block {
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Carrier` is never used
[INFO] [stdout]    --> src/block.rs:118:11
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub trait Carrier : Block {
[INFO] [stdout]     |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `BlockArgs` is never used
[INFO] [stdout]    --> src/block.rs:126:11
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub trait BlockArgs {}
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBlockArgs` is never constructed
[INFO] [stdout]    --> src/block.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct DataBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/block.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl DataBlockArgs {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 136 |     ///create a new args list for a new data block.
[INFO] [stdout] 137 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DigestBlockArgs` is never constructed
[INFO] [stdout]    --> src/block.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct DigestBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/block.rs:163:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl DigestBlockArgs {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] 163 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBlock` is never constructed
[INFO] [stdout]    --> src/block.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct DataBlock {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `private_new` is never used
[INFO] [stdout]    --> src/block.rs:198:8
[INFO] [stdout]     |
[INFO] [stdout] 197 | impl DataBlock {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 198 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DigestBlock` is never constructed
[INFO] [stdout]    --> src/block.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub struct DigestBlock {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `private_new` and `create` are never used
[INFO] [stdout]    --> src/block.rs:333:8
[INFO] [stdout]     |
[INFO] [stdout] 332 | impl DigestBlock {
[INFO] [stdout]     | ---------------- associated functions in this implementation
[INFO] [stdout] 333 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub fn create(args: DigestBlockArgs ) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Keeper` is never used
[INFO] [stdout]   --> src/keeper.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Keeper: Send + Sync{
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainKeeper` is never constructed
[INFO] [stdout]   --> src/keeper.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct ChainKeeper  <B, D>
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/keeper.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 77 | / impl <B, D> ChainKeeper<B, D>
[INFO] [stdout] 78 | |     where D: Block + Digester,
[INFO] [stdout] 79 | |           B: Block + Carrier,
[INFO] [stdout]    | |_____________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 85 |       pub  fn new(limit: ChainLimit) -> Self {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataId` is never constructed
[INFO] [stdout]   --> src/archive.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct DataId {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Archiver` is never used
[INFO] [stdout]   --> src/archive.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Archiver {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Request` is never constructed
[INFO] [stdout]  --> src/req_resp.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Request<T> {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `send`, and `send_back` are never used
[INFO] [stdout]   --> src/req_resp.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl <T> Request<T> {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn new(data: T) -> (Self, Response<T>) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub async fn send(data: T, worker: RequestWorker<T>) -> Result<Response<T>, HError>{
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn send_back(self, data: T) -> Result<(), HError> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Response` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct Response<T> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `response` is never used
[INFO] [stdout]   --> src/req_resp.rs:56:18
[INFO] [stdout]    |
[INFO] [stdout] 54 | impl <T> Response<T> {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 55 |     /// Wait for and return the response from the worker
[INFO] [stdout] 56 |     pub async fn response(self) -> Result<T, HError> {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestWorker` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct RequestWorker<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send_to_worker` is never used
[INFO] [stdout]   --> src/req_resp.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl <T> RequestWorker<T> {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] 73 |     /// Internal method to send a request to the worker
[INFO] [stdout] 74 |     async fn send_to_worker(&self, req: Request<T>) -> Result<(), HError> {       
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WorkReceiver` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct WorkReceiver<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `recv_work`, and `recv_data` are never used
[INFO] [stdout]    --> src/req_resp.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout]  90 | impl <T> WorkReceiver<T> {
[INFO] [stdout]     | ------------------------ associated items in this implementation
[INFO] [stdout]  91 |     /// Create a new receiver wrapper
[INFO] [stdout]  92 |     fn new(receiver: mpsc::Receiver<Request<T>>) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub async fn recv_work(&mut self) -> Option<Request<T>> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub async fn recv_data(&mut self) -> Result<T, HError> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Worker` is never constructed
[INFO] [stdout]    --> src/req_resp.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub struct Worker<T> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> src/req_resp.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | / impl <T> Worker<T> 
[INFO] [stdout] 128 | |     where T: Send + 'static,
[INFO] [stdout]     | |____________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 135 |       pub fn new(
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |       pub async fn run(mut self, canc_token: CancellationToken ) -> Result<(),HError> {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_channel` is never used
[INFO] [stdout]    --> src/req_resp.rs:232:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | pub fn create_channel<T>(capacity: usize) -> 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `UuidBytes` is never used
[INFO] [stdout]  --> src/uuidbytes.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type UuidBytes = [u8; 16];
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Init` is never used
[INFO] [stdout]  --> src/uuidbytes.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait  Init{
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:364:25
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |                         ^^^^^ the lifetime is elided here
[INFO] [stdout] 365 |         -> Result<ChainRef<B>, HError>
[INFO] [stdout]     |                   ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 365 |         -> Result<ChainRef<'_, B>, HError>
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:381:17
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<'_, B> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:384:21
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, B> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/db.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncSeekExt, AsyncWrite, AsyncWriteExt};
[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: `std::env`
[INFO] [stdout]  --> src/db.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/db.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/db.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainLimit`, `ChainRef`, and `self`
[INFO] [stdout]   --> src/db.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::chain::{self, ChainLimit, BlockChain, ChainRef, ChainInfoBuilder, Chain};
[INFO] [stdout]    |                    ^^^^  ^^^^^^^^^^              ^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataBlockArgs`, `DigestBlockArgs`, and `DigestBlock`
[INFO] [stdout]   --> src/db.rs:16:38
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::block::{Block, DataBlock, DataBlockArgs, DigestBlock, DigestBlockArgs};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/db.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::serializer::{self, Serialize, Serializer};
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]    --> src/db.rs:566:27
[INFO] [stdout]     |
[INFO] [stdout] 566 |         use tokio::time::{Duration, Instant};
[INFO] [stdout]     |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]  --> src/network/tcp.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::net::{TcpStream, TcpListener};
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/network/tcp.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tokio::sync:: {Mutex, };
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/tcp.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/network/tcp.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]  --> src/network/tcp.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/network/tcp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_CONNECTIONS` and `TCP_RECV_PORT`
[INFO] [stdout]  --> src/network/tcp.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::constants::{TCP_RECV_PORT, MAX_CONNECTIONS};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]  --> src/network/tcp.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::herrors;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/network/tcp.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/tcp.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::signal::Signal`
[INFO] [stdout]   --> src/network/tcp.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::network::signal::Signal;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/network/udp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/udp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `create_channel`
[INFO] [stdout]   --> src/network/udp.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::req_resp::{RequestWorker, Request, create_channel};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHANNEL_CAPACITY` and `ZERO_HASH`
[INFO] [stdout]   --> src/network/udp.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::constants::{ CHANNEL_CAPACITY,
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, UDP_CHECK_PORT, ZERO_HASH,
[INFO] [stdout]    |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/network/udp.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::herrors::{HError, self};
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]   --> src/network/udp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::nodes::Identity;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::encode`
[INFO] [stdout]    --> src/network/udp.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |     use sqlx::encode;
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZERO_HASH`
[INFO] [stdout]    --> src/network/udp.rs:227:28
[INFO] [stdout]     |
[INFO] [stdout] 227 |     use crate::constants::{ZERO_HASH, MAX_UDP_MSG_SIZE};
[INFO] [stdout]     |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/network/network.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/network/network.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]   --> src/network/network.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     use crate::network::protocol::{Message, Payload};
[INFO] [stdout]    |                                    ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/network.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     use crate::network::udp::UdpConnection;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/network/protocol.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddr`
[INFO] [stdout]  --> src/network/protocol.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config`
[INFO] [stdout]  --> src/network/protocol.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::{Decode, Encode, config};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/network/protocol.rs:5:46
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite,};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpStream`
[INFO] [stdout]  --> src/network/protocol.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/network/protocol.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_MSG_SIZE`
[INFO] [stdout]   --> src/network/protocol.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::{MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, ZERO_HASH};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignRequest`
[INFO] [stdout]   --> src/network/protocol.rs:14:40
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::nodes::{Identity, NodeInfo, SignRequest, SignHandle};
[INFO] [stdout]    |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/protocol.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::network::udp::UdpConnection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/protocol.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `network::signal`
[INFO] [stdout]    --> src/network/protocol.rs:649:17
[INFO] [stdout]     |
[INFO] [stdout] 649 |     use crate::{network::signal, nodes::SignHandle};
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Decode`
[INFO] [stdout]    --> src/network/protocol.rs:650:19
[INFO] [stdout]     |
[INFO] [stdout] 650 |     use bincode::{Decode, Encode};
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]   --> src/network/register.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `Worker`
[INFO] [stdout]   --> src/network/register.rs:13:63
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::req_resp::{self, Request, RequestWorker, Response, Worker, WorkReceiver};
[INFO] [stdout]    |                                                               ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]    --> src/network/register.rs:470:9
[INFO] [stdout]     |
[INFO] [stdout] 470 |     use std::thread::sleep;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::new`
[INFO] [stdout]    --> src/network/register.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |     use crate::fpsc::new;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Message`
[INFO] [stdout]    --> src/network/register.rs:476:35
[INFO] [stdout]     |
[INFO] [stdout] 476 |     use crate::network::{Payload, Message};
[INFO] [stdout]     |                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker` and `Response`
[INFO] [stdout]    --> src/network/register.rs:477:36
[INFO] [stdout]     |
[INFO] [stdout] 477 |     use crate::req_resp::{Request, Response, RequestWorker};
[INFO] [stdout]     |                                    ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/nodes/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRegister`
[INFO] [stdout]   --> src/nodes/node.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::{AsyncHandler, AsyncPayloadHandler, AsyncRegister, udp_send_to}; 
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Carrier` and `Digester`
[INFO] [stdout]   --> src/nodes/node.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stdout]    |                           ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainExecutor` and `Executor`
[INFO] [stdout]   --> src/nodes/node.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::executor::{Executor, ChainExecutor};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::archive::Archiver`
[INFO] [stdout]   --> src/nodes/node.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::archive::Archiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger_error`
[INFO] [stdout]   --> src/nodes/node.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::herrors::{HError, logger_error, logger_error_with_error, self};
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `self`
[INFO] [stdout]   --> src/nodes/node.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::req_resp::{self, RequestWorker, WorkReceiver, create_channel, Request};
[INFO] [stdout]    |                       ^^^^                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignRequest`
[INFO] [stdout]    --> src/nodes/node.rs:732:46
[INFO] [stdout]     |
[INFO] [stdout] 732 |     use crate::nodes::identity::{SignHandle, SignRequest, Identity};
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger_info`
[INFO] [stdout]    --> src/nodes/node.rs:733:34
[INFO] [stdout]     |
[INFO] [stdout] 733 |     use crate::herrors::{HError, logger_info};
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker` and `Request`
[INFO] [stdout]    --> src/nodes/node.rs:734:27
[INFO] [stdout]     |
[INFO] [stdout] 734 |     use crate::req_resp::{Request, RequestWorker};
[INFO] [stdout]     |                           ^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/center.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/center.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/center.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/center.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::nodes::{Node, NodeState, Reputation};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/normal.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/normal.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/normal.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/normal.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::nodes::node::{Node, NodeState, Reputation};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/nodes/identity.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Receiver`
[INFO] [stdout]  --> src/nodes/identity.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc::{self, Sender, Receiver};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::MAX_UDP_MSG_SIZE`
[INFO] [stdout]   --> src/nodes/identity.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::MAX_UDP_MSG_SIZE;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/nodes/identity.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/nodes/identity.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/executor.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/executor.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::block::{ Block, BlockArgs, Carrier, DataBlockArgs, DigestBlockArgs, Digester };
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/executor.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainInfo`
[INFO] [stdout]  --> src/executor.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::chain::{Chain, BlockChain, ChainInfo, ChainLimit};
[INFO] [stdout]   |                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/constants.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/producer_cosumer.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                 ^^^^^^^^^^                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:369:21
[INFO] [stdout]     |
[INFO] [stdout] 369 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:40
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/mod.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/fpsc/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::producer_cosumer::ConsumerBuf`
[INFO] [stdout]   --> src/fpsc/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use crate::fpsc::producer_cosumer::ConsumerBuf;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constants::ZERO_HASH`
[INFO] [stdout]  --> src/hash.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{constants::ZERO_HASH, herrors::HError}; 
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/block.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/block.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::uuidbytes::{self, UuidBytes};
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainLimit`
[INFO] [stdout]  --> src/block.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::chain::{BlockChain, ChainLimit};
[INFO] [stdout]   |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLockReadGuard`, `RwLockWriteGuard`, and `RwLock`
[INFO] [stdout]  --> src/keeper.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/keeper.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/keeper.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]  --> src/keeper.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]   |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/keeper.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/keeper.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DigestBlockArgs`
[INFO] [stdout]   --> src/keeper.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::block::{Block, Digester, Carrier, DigestBlockArgs};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/keeper.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainInfo`, and `ChainRef`
[INFO] [stdout]   --> src/keeper.rs:12:39
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::chain::{BlockChain, Chain, ChainInfo, ChainInfoBuilder, ChainRef, ChainLimit,
[INFO] [stdout]    |                                       ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/utils/utils.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use std::sync::Arc;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `random`
[INFO] [stdout]  --> src/utils/utils.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 |     use rand::{Rng, random};
[INFO] [stdout]   |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::RwLock`
[INFO] [stdout]  --> src/utils/utils.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use tokio::sync::RwLock;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Carrier` and `Digester`
[INFO] [stdout]   --> src/utils/utils.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 |     use crate::block::{Block, Carrier, DataBlock, DataBlockArgs, DigestBlock, Digester};
[INFO] [stdout]    |                               ^^^^^^^                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Main`
[INFO] [stdout]   --> src/utils/utils.rs:12:55
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use crate::chain::{BlockChain, Chain, ChainLimit, Main};
[INFO] [stdout]    |                                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::keeper::ChainKeeper`
[INFO] [stdout]   --> src/utils/utils.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     use crate::keeper::ChainKeeper;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/archive.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mpsc` and `oneshot`
[INFO] [stdout]    --> src/req_resp.rs:244:23
[INFO] [stdout]     |
[INFO] [stdout] 244 |     use tokio::sync::{oneshot, mpsc};
[INFO] [stdout]     |                       ^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Chain`
[INFO] [stdout]   --> src/network/protocol.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::chain::{Chain, BlockChain};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]   --> src/network/protocol.rs:13:31
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Encode`
[INFO] [stdout]    --> src/network/protocol.rs:650:27
[INFO] [stdout]     |
[INFO] [stdout] 650 |     use bincode::{Decode, Encode};
[INFO] [stdout]     |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]   --> src/nodes/node.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:55
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/db.rs:319:24
[INFO] [stdout]     |
[INFO] [stdout] 319 |             if let Err(e) = meta_iterator {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[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/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[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: `bundle_file`
[INFO] [stdout]    --> src/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bundle_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain`
[INFO] [stdout]    --> src/db.rs:347:35
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn save_chain<B>(&self, chain: &BlockChain<B>) -> Result<(), HError>
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uuid`
[INFO] [stdout]    --> src/db.rs:356:35
[INFO] [stdout]     |
[INFO] [stdout] 356 |     async fn find_chain<B>(&self, uuid: UuidBytes) -> Option<BlockChain<B>>
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_uuid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `find_min`
[INFO] [stdout]    --> src/db.rs:695:13
[INFO] [stdout]     |
[INFO] [stdout] 695 |         let find_min = *find_times.iter().min().unwrap();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_find_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/udp.rs:390:13
[INFO] [stdout]     |
[INFO] [stdout] 390 |         let mut client_id = Identity::new();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:33:37
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:33:62
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                              ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:39:36
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:39:61
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:47:33
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:47:58
[INFO] [stdout]    |
[INFO] [stdout] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                          ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:53:36
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:53:61
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `identity`
[INFO] [stdout]   --> src/network/handlers.rs:70:36
[INFO] [stdout]    |
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `msg`
[INFO] [stdout]   --> src/network/handlers.rs:70:61
[INFO] [stdout]    |
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket`
[INFO] [stdout]    --> src/nodes/node.rs:927:14
[INFO] [stdout]     |
[INFO] [stdout] 927 |         let (socket, new_name) = result.unwrap();
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_name`
[INFO] [stdout]    --> src/nodes/node.rs:927:22
[INFO] [stdout]     |
[INFO] [stdout] 927 |         let (socket, new_name) = result.unwrap();
[INFO] [stdout]     |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket`
[INFO] [stdout]    --> src/nodes/node.rs:975:14
[INFO] [stdout]     |
[INFO] [stdout] 975 |         let (socket, new_name) = result.unwrap();
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]     --> src/nodes/node.rs:1045:13
[INFO] [stdout]      |
[INFO] [stdout] 1045 |         let result = tokio::time::timeout(
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         unsafe {self.ringbuf.capacity() }
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `capacity`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let capacity = self.capacity();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `capacity`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |         let capacity = consumer.capacity();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:235:41
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:238:44
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                            ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value captured by `nread` is never read
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:328:17
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 nread = reader.read(&mut read_buf[total..]).await.unwrap();
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: did you mean to capture by reference instead?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `CentralNode<B, D>` is more private than the item `Nodebuilder::<B, D>::build`
[INFO] [stdout]    --> src/nodes/center.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Nodebuilder::<B, D>::build` is reachable at visibility `pub(in crate::nodes)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `CentralNode<B, D>` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/nodes/center.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | struct CentralNode <B, D> 
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/herrors.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum HError {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] 10 |     #[error("Error: {message}\n")]
[INFO] [stdout] 11 |     UnexpectedEnd {message: String},
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     RingBuf {message: String},
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     Location { mode: String, function: String},
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     ChainFull {message: String },
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     Storage {message: String },
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     LimitExceeded,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     Center {message: String },
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     Serialization {message: String},
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     Nodes {message: String},
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Close`, `Full`, and `Empty` are never constructed
[INFO] [stdout]   --> src/herrors.rs:82:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub enum PipeError {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] 82 |     Close,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 83 |     Full,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 84 |     Empty,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PipeError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_debug` is never used
[INFO] [stdout]    --> src/herrors.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn logger_init_above_debug() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_trace` is never used
[INFO] [stdout]    --> src/herrors.rs:122:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn logger_init_above_trace() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_error` is never used
[INFO] [stdout]    --> src/herrors.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn logger_init_above_error() {  
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_debug_with_error` is never used
[INFO] [stdout]    --> src/herrors.rs:147:8
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn logger_debug_with_error(error: &HError) {   
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_result` is never used
[INFO] [stdout]    --> src/herrors.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn logger_result<T>(result: Result<T, HError>) -> Option<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_chain` and `find_chain` are never used
[INFO] [stdout]   --> src/db.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait DataBase {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 28 |     async fn save_chain<B>(&self, chain: &BlockChain<B>) -> Result<(), HError>
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     async fn find_chain<B>(&self, uuid: UuidBytes) -> Option<BlockChain<B>>
[INFO] [stdout]    |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Meta` is never used
[INFO] [stdout]   --> src/db.rs:38:11
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub trait Meta {
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_name`, `set_uuid`, and `name` are never used
[INFO] [stdout]    --> src/db.rs:130:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl MetaData {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn set_name(mut self, name: String) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn set_uuid(mut self, uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn name(&self) -> &String {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bundle_file` is never read
[INFO] [stdout]    --> src/db.rs:226:5
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct FileDataBase{
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 226 |     bundle_file: PathBuf,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Signal` is never used
[INFO] [stdout]  --> src/network/signal.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Signal {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_accept_result` is never used
[INFO] [stdout]   --> src/network/signal.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Signal {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     ///create a new listen result signal
[INFO] [stdout] 12 |     pub fn from_accept_result( listen_result: (TcpStream, SocketAddr)) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Network` is never used
[INFO] [stdout]  --> src/network/network.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub trait Network: UdpConnection + Send + Sync
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NetworkState` is never used
[INFO] [stdout]   --> src/network/network.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum NetworkState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkHandler` is never constructed
[INFO] [stdout]   --> src/network/network.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NetworkHandler {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `caculate_encode_size` is never used
[INFO] [stdout]    --> src/network/protocol.rs:140:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Header {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn caculate_encode_size(&self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/network/protocol.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl Payload {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn from(msg: Message) -> Payload {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/protocol.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | impl VoteBlockArgs {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 212 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/protocol.rs:302:12
[INFO] [stdout]     |
[INFO] [stdout] 268 | impl VoteBlock {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn new(args: VoteBlockArgs) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_with_zero`, `into_stream`, and `from_stream` are never used
[INFO] [stdout]    --> src/network/protocol.rs:445:8
[INFO] [stdout]     |
[INFO] [stdout] 434 | impl Message {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 445 |     fn new_with_zero() -> Self{
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 603 |     pub async fn into_stream<S> (&self, identity: &mut Identity, stream: &mut S) -> Result<(), HError>
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 617 |     async fn from_stream <S>  (my_name: &HashValue, stream: &mut S) -> Result<Message, HError> 
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HandlerContext` is never constructed
[INFO] [stdout]    --> src/network/register.rs:304:12
[INFO] [stdout]     |
[INFO] [stdout] 304 | pub struct HandlerContext {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_request_worker`, and `send` are never used
[INFO] [stdout]    --> src/network/register.rs:309:12
[INFO] [stdout]     |
[INFO] [stdout] 308 | impl HandlerContext {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 309 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn get_request_worker(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 322 |     async fn send(
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Handler` is never used
[INFO] [stdout]   --> src/network/handlers.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | trait Handler
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MessageHandler` is never constructed
[INFO] [stdout]   --> src/network/handlers.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct MessageHandler  {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `handle_message` are never used
[INFO] [stdout]   --> src/network/handlers.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl MessageHandler {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 64 |     pub fn new(pipe_to_chain_keeper: Pipe<Message>)
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `caller`, `reputation`, `last_conn`, and `last_state` are never used
[INFO] [stdout]    --> src/nodes/node.rs:95:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl NodeInfo {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn caller(&self) -> Result<HashValue, HError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn reputation(&self) -> Result<Reputation, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn last_conn(&self) -> Result<u64, HError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn last_state(&self) -> Result<NodeState, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `friends` is never used
[INFO] [stdout]    --> src/nodes/node.rs:155:8
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub trait NodeAppend {
[INFO] [stdout]     |           ---------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 155 |     fn friends(&self) -> Result<&HashMap<HashValue, NodeInfo>, HError>;
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_friend`, `get`, `make_new`, and `make_friend` are never used
[INFO] [stdout]    --> src/nodes/node.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub trait Node: UdpConnection + Sized + NodeAppend{       
[INFO] [stdout]     |           ---- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 200 |     fn is_friend(&self, name: HashValue) -> Result<bool,HError> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 546 |     fn get(&self, name: HashValue) -> Option<NodeInfo> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 564 |     async fn make_new(
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 627 |     async fn make_friend(&self, name: HashValue) -> Result<(), HError>{
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/nodes/node.rs:705:12
[INFO] [stdout]     |
[INFO] [stdout] 704 | impl Reputation {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 705 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]    --> src/nodes/node.rs:725:6
[INFO] [stdout]     |
[INFO] [stdout] 725 | type NodeName = HashValue;
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `msg_delivery` is never used
[INFO] [stdout]    --> src/nodes/node.rs:662:18
[INFO] [stdout]     |
[INFO] [stdout] 662 |     pub async fn msg_delivery(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `friends` is never read
[INFO] [stdout]    --> src/nodes/node.rs:740:9
[INFO] [stdout]     |
[INFO] [stdout] 737 |     struct TestNode {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 740 |         friends: HashMap<HashValue, NodeInfo>,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]   --> src/nodes/center.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type NodeName = HashValue;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Central` is never used
[INFO] [stdout]   --> src/nodes/center.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Central {
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CentralNode` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct CentralNode <B, D> 
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/center.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | / impl <B, D> CentralNode <B, D>
[INFO] [stdout] 40 | |     where B: Block + Carrier,
[INFO] [stdout] 41 | |           D: Block + Digester,
[INFO] [stdout]    | |______________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |       fn new(name: NodeName, address: String) -> Self{
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nodebuilder` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Nodebuilder<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/nodes/center.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | / impl <B, D> Nodebuilder<B, D> 
[INFO] [stdout]  77 | |     where B: Block + Carrier,
[INFO] [stdout]  78 | |           D: Block + Digester,
[INFO] [stdout]     | |______________________________- associated items in this implementation
[INFO] [stdout]  79 |   {
[INFO] [stdout]  80 |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |       pub fn name(&mut self, name: NodeName) -> &mut Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |       pub fn address(&mut self, address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |       pub fn center_address(&mut self, center_address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |       pub fn executor(&mut self, executor: ChainExecutor<B, D>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |       pub fn reputation(&mut self, reputation: Reputation) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |       pub fn friends (&mut self, friends: Option<HashMap< NodeName, NormalNode<B, D>>>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |       fn check_fields<T>(&self, option: &Option<T>, fild_name: &str)-> Result<(), HError> {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |       pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]  --> src/nodes/normal.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type NodeName = HashValue;
[INFO] [stdout]   |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NormalNode` is never constructed
[INFO] [stdout]   --> src/nodes/normal.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct NormalNode<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/normal.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | / impl <B, D> NormalNode <B, D>
[INFO] [stdout] 33 | |     where B: Block + Carrier,
[INFO] [stdout] 34 | |           D: Block + Digester
[INFO] [stdout]    | |_____________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |       fn new(name: NodeName, capacity: usize) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/identity.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl SignRequest {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn new(bytes_vec: Vec<u8>, response: oneshot::Sender<Result<[u8; 64], HError>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_block` is never used
[INFO] [stdout]   --> src/executor.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Executor: Archiver {
[INFO] [stdout]    |           -------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 28 |     async fn add_block(&mut self, data: &[u8]) -> Result<Self::DataBlock, HError>;
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `chain_buf` is never read
[INFO] [stdout]   --> src/executor.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct ChainExecutor < B, D> 
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     chain_buf: Arc<Mutex<BlockChain<B>>>, 
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Location` is never used
[INFO] [stdout]  --> src/constants.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Location = usize;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Bytes` is never used
[INFO] [stdout]  --> src/constants.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type Bytes = Vec<u8>;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U64` is never used
[INFO] [stdout]  --> src/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const ZERO_U64: u64 = 0 ;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U32` is never used
[INFO] [stdout]   --> src/constants.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const ZERO_U32: u32 = 0;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_PACKAGE` is never used
[INFO] [stdout]   --> src/constants.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const PATH_CACHE_PACKAGE: &str = "cache/packages";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_BUNDLE` is never used
[INFO] [stdout]   --> src/constants.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const PATH_CACHE_BUNDLE: &str = "cache/bundles";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const BUFFER_SIZE: usize = 1024 * 32;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const UDP_SENDER_PORT: u16 = 8080;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const UDP_RECV_PORT: u16 = 8081;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const TCP_SENDER_PORT: u16 = 8088;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const TCP_RECV_PORT: u16 = 8089;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MTU_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const MTU_SIZE: usize = 1500; // 1500 bytes
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_CONNECTIONS` is never used
[INFO] [stdout]   --> src/constants.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub const MAX_CONNECTIONS: usize= 100; // maximum number of  tcp connections
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/chain.rs:95:8
[INFO] [stdout]     |
[INFO] [stdout]  22 | pub trait Chain  
[INFO] [stdout]     |           ----- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout]  95 |     fn is_empty(&self) -> Result<(), HError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     fn last_index(&self) -> Option<usize> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn block_ref_by_index(&self, index: usize) -> Option<& Self::Block>{
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     fn get_block_by_index(&self, index: usize) -> Option<Self::Block>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     fn get_block_by_hash(&self, hash: HashValue)-> Option<Self::Block>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 166 |     fn get_block_by_data_hash(&self, data_hash: HashValue) -> Option<Self::Block>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     fn get_block_by_data_uuid(&self, data_uuid: UuidBytes) -> Option<Self::Block>
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `length_check` and `default` are never used
[INFO] [stdout]    --> src/chain.rs:229:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | impl ChainLimit {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 229 |     pub fn length_check(&self, len: usize) -> Result<(), HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     pub fn default() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `empty_with_capacity`, `index_select`, `iter_mut`, and `init_iter` are never used
[INFO] [stdout]    --> src/chain.rs:356:8
[INFO] [stdout]     |
[INFO] [stdout] 283 | / impl <B> BlockChain<B>
[INFO] [stdout] 284 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 356 |       fn empty_with_capacity(capacity: usize) -> Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 364 |       pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |       pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |       pub fn init_iter(self) -> std::vec::IntoIter<B> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainRef` is never constructed
[INFO] [stdout]    --> src/chain.rs:429:12
[INFO] [stdout]     |
[INFO] [stdout] 429 | pub struct ChainRef<'a, B>
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:441:8
[INFO] [stdout]     |
[INFO] [stdout] 436 | / impl <'a, B> ChainRef<'a, B> 
[INFO] [stdout] 437 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 441 |       fn new(data: *const B, len: usize, time_origin: u64, time_gap: u64) -> Result<Self, HError>{
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |       fn block_ref(&self, local_index: usize) -> Option<&B> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 486 |       pub fn  from_chain_by_index(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |       pub fn from_chain(chain: &'a BlockChain<B>) -> Result<Self, HError>
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |       pub fn contain_hash(&self, hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 556 |       fn hash_select(&self, hash: HashValue) -> Option<B> 
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 572 |       pub fn contain_data_hash(&self, data_hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 |       pub fn contain_uuid(&self, uuid: UuidBytes) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 606 |       pub fn contain_index(&self, index: usize) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 623 |       pub fn len(&self) -> usize {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 628 |       pub fn as_slice(&self) -> &[B] {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 634 |       pub fn from_slice(slice: &[B]) -> Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 644 |       pub fn into_vec(self) -> Vec<B> 
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfo` is never constructed
[INFO] [stdout]    --> src/chain.rs:785:12
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub struct ChainInfo <B>
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfoBuilder` is never constructed
[INFO] [stdout]    --> src/chain.rs:800:12
[INFO] [stdout]     |
[INFO] [stdout] 800 | pub struct ChainInfoBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:813:12
[INFO] [stdout]     |
[INFO] [stdout] 811 | impl  ChainInfoBuilder 
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout] 812 | {
[INFO] [stdout] 813 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 825 |     pub fn build<B>(self) -> ChainInfo<B>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 843 |     pub fn digest_id(mut self, digest_id: u32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 851 |     pub fn index(mut self, start: u32, end: u32) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 857 |     pub fn timestamp(mut self, start: u64, end: u64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 863 |     pub fn hash(mut self, hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 869 |     pub fn merkle_root(mut self, merkle_root: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 875 |     pub fn data_uuid(mut self, data_uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 881 |     pub fn data_hash(mut self, data_hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reuse_buf_from_consumer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn reuse_buf_from_consumer<C> (consumer: &mut ConsumerBuf<C>)
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `produce_to_producer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn produce_to_producer(producer: &mut ProducerBuf) 
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `produce` and `capacity` are never used
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:32:18
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl <'a> ProducerBuf <'a>
[INFO] [stdout]    | -------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn produce(&mut self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn capacity(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `consume` is never used
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:241:18
[INFO] [stdout]     |
[INFO] [stdout] 177 | / impl <C> ConsumerBuf<C> 
[INFO] [stdout] 178 | |     where C: FnMut(&mut [u8])-> Result<(), HError>,
[INFO] [stdout] 179 | |         Self: Unpin
[INFO] [stdout]     | |___________________- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 241 |       pub async fn consume(&mut self) -> Result<usize, HError> {
[INFO] [stdout]     |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `reuse` is never used
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:145:12
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl  Ringbuf
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn reuse(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `zero`, `hash_with_chunk_size`, `hash_file`, and `hash` are never used
[INFO] [stdout]   --> src/hash.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait Hasher {
[INFO] [stdout]    |           ------ associated functions in this trait
[INFO] [stdout] ...
[INFO] [stdout] 21 |     fn zero() -> HashValue {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     async fn hash_with_chunk_size(file_path: &str, chunk_size: usize) -> Result<HashValue, HError>{
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     async fn hash_file(file_path: &str) -> Result<HashValue, HError> {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     fn hash(data: &[u8]) -> HashValue {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `resize_buffer` and `encode_data_into_slice` are never used
[INFO] [stdout]   --> src/serializer.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub trait Serialize
[INFO] [stdout]    |           --------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn resize_buffer(&mut self, size: usize) -> Result<(), HError>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn encode_data_into_slice(&mut self, dst: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `size_to_align` is never used
[INFO] [stdout]    --> src/serializer.rs:397:19
[INFO] [stdout]     |
[INFO] [stdout] 397 |     pub(super) fn size_to_align(size: usize, align: usize) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pipe` is never constructed
[INFO] [stdout]  --> src/pipe.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Pipe<T> {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/pipe.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl <T> Pipe<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 12 |     //create a pipe with a given capacity
[INFO] [stdout] 13 |     pub fn new(capacity: usize) ->(Self, Self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub async fn send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub async fn recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn close(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub async fn is_closed(&mut self) -> bool {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub  fn try_recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn try_send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `digest_id` and `time_verify_with_chain` are never used
[INFO] [stdout]   --> src/block.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Block 
[INFO] [stdout]    |           ----- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn digest_id(&self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn time_verify_with_chain<C>(&self, chain: &C ) -> Result<(), HError> 
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `length` is never used
[INFO] [stdout]    --> src/block.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub trait Digester: Block {
[INFO] [stdout]     |           -------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 111 |     fn length(&self) -> u32;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `data_hash` and `data_uuid` are never used
[INFO] [stdout]    --> src/block.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub trait Carrier : Block {
[INFO] [stdout]     |           ------- methods in this trait
[INFO] [stdout] 119 |     ///have an hash of data
[INFO] [stdout] 120 |     fn data_hash(&self) -> HashValue;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 121 |     ///have an uuid of data
[INFO] [stdout] 122 |     fn data_uuid(&self) -> UuidBytes ;
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `sides_ref` and `side_ref` are never used
[INFO] [stdout]   --> src/keeper.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Keeper: Send + Sync{
[INFO] [stdout]    |           ------ methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 31 |     fn sides_ref(&self) -> &Sides<Self::DataBlock>;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn side_ref(&self, digest_id: u32) -> Option<&BlockChain<Self::DataBlock>>{
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataId` is never constructed
[INFO] [stdout]   --> src/archive.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct DataId {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `archive_slice` and `archive_file` are never used
[INFO] [stdout]   --> src/archive.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Archiver {
[INFO] [stdout]    |           -------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 25 |     async fn archive_slice(&self, data: &[u8]) -> Result<DataId, HError>{
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     async fn archive_file(&self, path: &str) -> Result<DataId, HError>{
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:364:25
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |                         ^^^^^ the lifetime is elided here
[INFO] [stdout] 365 |         -> Result<ChainRef<B>, HError>
[INFO] [stdout]     |                   ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 365 |         -> Result<ChainRef<'_, B>, HError>
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:381:17
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<'_, B> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:384:21
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, B> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 8.29s
[INFO] running `Command { std: "docker" "inspect" "7d5f47bb028a34b3513be41c16b0f20a022ecc05f4247a7e9b5a40ad673219e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7d5f47bb028a34b3513be41c16b0f20a022ecc05f4247a7e9b5a40ad673219e7", kill_on_drop: false }`
[INFO] [stdout] 7d5f47bb028a34b3513be41c16b0f20a022ecc05f4247a7e9b5a40ad673219e7
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 94e79072a2e3d32d27d7682a5909353226df707829621faef684dd3a15a02b07
[INFO] running `Command { std: "docker" "start" "-a" "94e79072a2e3d32d27d7682a5909353226df707829621faef684dd3a15a02b07", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `AsyncRead`
[INFO] [stderr]  --> src/db.rs:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncSeekExt, AsyncWrite, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::env`
[INFO] [stderr]  --> src/db.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::env;
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::hash::HashValue`
[INFO] [stderr]   --> src/db.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::hash::HashValue;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::network::Message`
[INFO] [stderr]   --> src/db.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::network::Message;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ChainInfoBuilder`, `ChainLimit`, `ChainRef`, and `self`
[INFO] [stderr]   --> src/db.rs:15:20
[INFO] [stderr]    |
[INFO] [stderr] 15 | use crate::chain::{self, ChainLimit, BlockChain, ChainRef, ChainInfoBuilder, Chain};
[INFO] [stderr]    |                    ^^^^  ^^^^^^^^^^              ^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DataBlockArgs`, `DataBlock`, `DigestBlockArgs`, and `DigestBlock`
[INFO] [stderr]   --> src/db.rs:16:27
[INFO] [stderr]    |
[INFO] [stderr] 16 | use crate::block::{Block, DataBlock, DataBlockArgs, DigestBlock, DigestBlockArgs};
[INFO] [stderr]    |                           ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]   --> src/db.rs:18:25
[INFO] [stderr]    |
[INFO] [stderr] 18 | use crate::serializer::{self, Serialize, Serializer};
[INFO] [stderr]    |                         ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stderr]  --> src/network/tcp.rs:1:18
[INFO] [stderr]   |
[INFO] [stderr] 1 | use tokio::net::{TcpStream, TcpListener};
[INFO] [stderr]   |                  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]  --> src/network/tcp.rs:2:20
[INFO] [stderr]   |
[INFO] [stderr] 2 | use tokio::sync:: {Mutex, };
[INFO] [stderr]   |                    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stderr]  --> src/network/tcp.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use tokio_util::sync::CancellationToken;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/network/tcp.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stderr]  --> src/network/tcp.rs:5:17
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::net::SocketAddr`
[INFO] [stderr]  --> src/network/tcp.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::net::SocketAddr;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MAX_CONNECTIONS` and `TCP_RECV_PORT`
[INFO] [stderr]  --> src/network/tcp.rs:8:24
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::constants::{TCP_RECV_PORT, MAX_CONNECTIONS};
[INFO] [stderr]   |                        ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::herrors`
[INFO] [stderr]  --> src/network/tcp.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::herrors;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::herrors::HError`
[INFO] [stderr]   --> src/network/tcp.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::herrors::HError;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::pipe::Pipe`
[INFO] [stderr]   --> src/network/tcp.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::pipe::Pipe;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::network::signal::Signal`
[INFO] [stderr]   --> src/network/tcp.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::network::signal::Signal;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::task::spawn`
[INFO] [stderr]  --> src/network/udp.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::task::spawn;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stderr]  --> src/network/udp.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use tokio_util::sync::CancellationToken;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `RequestWorker`, `Request`, and `create_channel`
[INFO] [stderr]   --> src/network/udp.rs:10:23
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::req_resp::{RequestWorker, Request, create_channel};
[INFO] [stderr]    |                       ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CHANNEL_CAPACITY` and `ZERO_HASH`
[INFO] [stderr]   --> src/network/udp.rs:11:25
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::constants::{ CHANNEL_CAPACITY,
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 12 |     MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, UDP_CHECK_PORT, ZERO_HASH,
[INFO] [stderr]    |                                                     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]   --> src/network/udp.rs:14:30
[INFO] [stderr]    |
[INFO] [stderr] 14 | use crate::herrors::{HError, self};
[INFO] [stderr]    |                              ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::nodes::Identity`
[INFO] [stderr]   --> src/network/udp.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use crate::nodes::Identity;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `sqlx::encode`
[INFO] [stderr]    --> src/network/udp.rs:223:9
[INFO] [stderr]     |
[INFO] [stderr] 223 |     use sqlx::encode;
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::time::timeout`
[INFO] [stderr]    --> src/network/udp.rs:224:9
[INFO] [stderr]     |
[INFO] [stderr] 224 |     use tokio::time::timeout;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stderr]    --> src/network/udp.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |     use tokio_util::sync::CancellationToken;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `MAX_UDP_MSG_SIZE` and `ZERO_HASH`
[INFO] [stderr]    --> src/network/udp.rs:227:28
[INFO] [stderr]     |
[INFO] [stderr] 227 |     use crate::constants::{ZERO_HASH, MAX_UDP_MSG_SIZE};
[INFO] [stderr]     |                            ^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Message` and `Payload`
[INFO] [stderr]    --> src/network/udp.rs:228:26
[INFO] [stderr]     |
[INFO] [stderr] 228 |     use crate::network::{Message, Payload};
[INFO] [stderr]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::nodes::Identity`
[INFO] [stderr]    --> src/network/udp.rs:229:9
[INFO] [stderr]     |
[INFO] [stderr] 229 |     use crate::nodes::Identity;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Hasher`
[INFO] [stderr]  --> src/network/network.rs:4:31
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::hash:: {HashValue, Hasher};
[INFO] [stderr]   |                               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/network/network.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Message` and `Payload`
[INFO] [stderr]   --> src/network/network.rs:35:36
[INFO] [stderr]    |
[INFO] [stderr] 35 |     use crate::network::protocol::{Message, Payload};
[INFO] [stderr]    |                                    ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stderr]   --> src/network/network.rs:36:9
[INFO] [stderr]    |
[INFO] [stderr] 36 |     use crate::network::udp::UdpConnection;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stderr]  --> src/network/protocol.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::mem::MaybeUninit;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SocketAddr`
[INFO] [stderr]  --> src/network/protocol.rs:2:16
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::net::{SocketAddr};
[INFO] [stderr]   |                ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `config`
[INFO] [stderr]  --> src/network/protocol.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 | use bincode::{Decode, Encode, config};
[INFO] [stderr]   |                               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncRead`
[INFO] [stderr]  --> src/network/protocol.rs:5:46
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite,};
[INFO] [stderr]   |                                              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::net::TcpStream`
[INFO] [stderr]  --> src/network/protocol.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::net::TcpStream;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stderr]  --> src/network/protocol.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tokio_util::sync::CancellationToken;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `async_trait::async_trait`
[INFO] [stderr]  --> src/network/protocol.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use async_trait::async_trait;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MAX_MSG_SIZE`
[INFO] [stderr]   --> src/network/protocol.rs:10:24
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::constants::{MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, ZERO_HASH};
[INFO] [stderr]    |                        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `SignRequest`
[INFO] [stderr]   --> src/network/protocol.rs:14:40
[INFO] [stderr]    |
[INFO] [stderr] 14 | use crate::nodes::{Identity, NodeInfo, SignRequest, SignHandle};
[INFO] [stderr]    |                                        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stderr]   --> src/network/protocol.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | use crate::network::udp::UdpConnection;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::pipe::Pipe`
[INFO] [stderr]   --> src/network/protocol.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | use crate::pipe::Pipe;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::io::AsyncSeekExt`
[INFO] [stderr]    --> src/network/protocol.rs:647:9
[INFO] [stderr]     |
[INFO] [stderr] 647 |     use tokio::io::AsyncSeekExt;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `network::signal` and `nodes::SignHandle`
[INFO] [stderr]    --> src/network/protocol.rs:649:17
[INFO] [stderr]     |
[INFO] [stderr] 649 |     use crate::{network::signal, nodes::SignHandle};
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Decode` and `Encode`
[INFO] [stderr]    --> src/network/protocol.rs:650:19
[INFO] [stderr]     |
[INFO] [stderr] 650 |     use bincode::{Decode, Encode};
[INFO] [stderr]     |                   ^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/network/protocol.rs:652:9
[INFO] [stderr]     |
[INFO] [stderr] 652 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::herrors`
[INFO] [stderr]   --> src/network/register.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::herrors;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `WorkReceiver` and `Worker`
[INFO] [stderr]   --> src/network/register.rs:13:63
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::req_resp::{self, Request, RequestWorker, Response, Worker, WorkReceiver};
[INFO] [stderr]    |                                                               ^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread::sleep`
[INFO] [stderr]    --> src/network/register.rs:470:9
[INFO] [stderr]     |
[INFO] [stderr] 470 |     use std::thread::sleep;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/network/register.rs:472:9
[INFO] [stderr]     |
[INFO] [stderr] 472 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::fpsc::new`
[INFO] [stderr]    --> src/network/register.rs:474:9
[INFO] [stderr]     |
[INFO] [stderr] 474 |     use crate::fpsc::new;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::herrors::HError`
[INFO] [stderr]    --> src/network/register.rs:475:9
[INFO] [stderr]     |
[INFO] [stderr] 475 |     use crate::herrors::HError;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Message` and `Payload`
[INFO] [stderr]    --> src/network/register.rs:476:26
[INFO] [stderr]     |
[INFO] [stderr] 476 |     use crate::network::{Payload, Message};
[INFO] [stderr]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `RequestWorker`, `Request`, and `Response`
[INFO] [stderr]    --> src/network/register.rs:477:27
[INFO] [stderr]     |
[INFO] [stderr] 477 |     use crate::req_resp::{Request, Response, RequestWorker};
[INFO] [stderr]     |                           ^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `PayloadTypes`
[INFO] [stderr]   --> src/network/mod.rs:11:70
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use register::{AsyncHandler, AsyncRegister, AsyncPayloadHandler, PayloadTypes};
[INFO] [stderr]    |                                                                      ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::task::spawn`
[INFO] [stderr]  --> src/nodes/node.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tokio::task::spawn;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncRegister`
[INFO] [stderr]   --> src/nodes/node.rs:10:57
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::network::{AsyncHandler, AsyncPayloadHandler, AsyncRegister, udp_send_to}; 
[INFO] [stderr]    |                                                         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Block`, `Carrier`, and `Digester`
[INFO] [stderr]   --> src/nodes/node.rs:11:20
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stderr]    |                    ^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ChainExecutor` and `Executor`
[INFO] [stderr]   --> src/nodes/node.rs:12:23
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::executor::{Executor, ChainExecutor};
[INFO] [stderr]    |                       ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::archive::Archiver`
[INFO] [stderr]   --> src/nodes/node.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::archive::Archiver;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `logger_error`
[INFO] [stderr]   --> src/nodes/node.rs:15:30
[INFO] [stderr]    |
[INFO] [stderr] 15 | use crate::herrors::{HError, logger_error, logger_error_with_error, self};
[INFO] [stderr]    |                              ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `WorkReceiver` and `self`
[INFO] [stderr]   --> src/nodes/node.rs:19:23
[INFO] [stderr]    |
[INFO] [stderr] 19 | use crate::req_resp::{self, RequestWorker, WorkReceiver, create_channel, Request};
[INFO] [stderr]    |                       ^^^^                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `async_trait::async_trait`
[INFO] [stderr]  --> src/nodes/center.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use async_trait::async_trait;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BlockArgs`
[INFO] [stderr]  --> src/nodes/center.rs:5:27
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stderr]   |                           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Hasher`
[INFO] [stderr]  --> src/nodes/center.rs:6:30
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::hash::{HashValue, Hasher};
[INFO] [stderr]   |                              ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> src/nodes/center.rs:8:20
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::nodes::{Node, NodeState, Reputation};
[INFO] [stderr]   |                    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `async_trait::async_trait`
[INFO] [stderr]  --> src/nodes/normal.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use async_trait::async_trait;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BlockArgs`
[INFO] [stderr]  --> src/nodes/normal.rs:4:27
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stderr]   |                           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Hasher`
[INFO] [stderr]  --> src/nodes/normal.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 | use crate::hash::{HashValue, Hasher};
[INFO] [stderr]   |                              ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Node`
[INFO] [stderr]  --> src/nodes/normal.rs:6:26
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::nodes::node::{Node, NodeState, Reputation};
[INFO] [stderr]   |                          ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::path::Path`
[INFO] [stderr]  --> src/nodes/identity.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::path::Path;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Receiver`
[INFO] [stderr]  --> src/nodes/identity.rs:6:39
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::sync::mpsc::{self, Sender, Receiver};
[INFO] [stderr]   |                                       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::constants::MAX_UDP_MSG_SIZE`
[INFO] [stderr]   --> src/nodes/identity.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::constants::MAX_UDP_MSG_SIZE;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::hash::HashValue`
[INFO] [stderr]   --> src/nodes/identity.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::hash::HashValue;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::network::Message`
[INFO] [stderr]   --> src/nodes/identity.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::network::Message;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stderr]  --> src/executor.rs:5:25
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stderr]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BlockArgs`
[INFO] [stderr]  --> src/executor.rs:7:28
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::block::{ Block, BlockArgs, Carrier, DataBlockArgs, DigestBlockArgs, Digester };
[INFO] [stderr]   |                            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::hash::HashValue`
[INFO] [stderr]  --> src/executor.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::hash::HashValue;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ChainInfo`
[INFO] [stderr]  --> src/executor.rs:9:39
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::chain::{Chain, BlockChain, ChainInfo, ChainLimit};
[INFO] [stderr]   |                                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::hash::HashValue`
[INFO] [stderr]  --> src/constants.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::hash::HashValue;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt` and `AsyncWrite`
[INFO] [stderr]  --> src/fpsc/producer_cosumer.rs:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stderr]   |                 ^^^^^^^^^^                            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stderr]    --> src/fpsc/producer_cosumer.rs:369:21
[INFO] [stderr]     |
[INFO] [stderr] 369 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/fpsc/producer_cosumer.rs:371:9
[INFO] [stderr]     |
[INFO] [stderr] 371 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncWriteExt`
[INFO] [stderr]  --> src/fpsc/ringbuf.rs:1:40
[INFO] [stderr]   |
[INFO] [stderr] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stderr]   |                                        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stderr]    --> src/fpsc/ringbuf.rs:306:21
[INFO] [stderr]     |
[INFO] [stderr] 306 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/fpsc/ringbuf.rs:308:9
[INFO] [stderr]     |
[INFO] [stderr] 308 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stderr]  --> src/fpsc/mod.rs:5:17
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite};
[INFO] [stderr]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]   --> src/fpsc/mod.rs:38:9
[INFO] [stderr]    |
[INFO] [stderr] 38 |     use super::*;
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::fpsc::producer_cosumer::ConsumerBuf`
[INFO] [stderr]   --> src/fpsc/mod.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |     use crate::fpsc::producer_cosumer::ConsumerBuf;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::fpsc`
[INFO] [stderr]   --> src/fpsc/mod.rs:40:9
[INFO] [stderr]    |
[INFO] [stderr] 40 |     use crate::fpsc;
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `constants::ZERO_HASH`
[INFO] [stderr]  --> src/hash.rs:9:13
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::{constants::ZERO_HASH, herrors::HError}; 
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `core::time`
[INFO] [stderr]  --> src/block.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use core::time;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `self`
[INFO] [stderr]  --> src/block.rs:7:24
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::uuidbytes::{self, UuidBytes};
[INFO] [stderr]   |                        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ChainLimit`
[INFO] [stderr]  --> src/block.rs:8:32
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::chain::{BlockChain, ChainLimit};
[INFO] [stderr]   |                                ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `RwLockReadGuard`, `RwLockWriteGuard`, and `RwLock`
[INFO] [stderr]  --> src/keeper.rs:3:19
[INFO] [stderr]   |
[INFO] [stderr] 3 | use tokio::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stderr]   |                   ^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `async_trait::async_trait`
[INFO] [stderr]  --> src/keeper.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use async_trait::async_trait;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/keeper.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stderr]  --> src/keeper.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::ops::{Deref, DerefMut};
[INFO] [stderr]   |                ^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/keeper.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stderr]  --> src/keeper.rs:8:25
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stderr]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `DigestBlockArgs`
[INFO] [stderr]   --> src/keeper.rs:10:46
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::block::{Block, Digester, Carrier, DigestBlockArgs};
[INFO] [stderr]    |                                              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::herrors::HError`
[INFO] [stderr]   --> src/keeper.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::herrors::HError;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ChainInfoBuilder`, `ChainInfo`, and `ChainRef`
[INFO] [stderr]   --> src/keeper.rs:12:39
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::chain::{BlockChain, Chain, ChainInfo, ChainInfoBuilder, ChainRef, ChainLimit,
[INFO] [stderr]    |                                       ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stderr]  --> src/archive.rs:3:17
[INFO] [stderr]   |
[INFO] [stderr] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Chain`
[INFO] [stderr]   --> src/network/protocol.rs:11:20
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::chain::{Chain, BlockChain};
[INFO] [stderr]    |                    ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Hasher`
[INFO] [stderr]   --> src/network/protocol.rs:13:31
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::hash:: {HashValue, Hasher};
[INFO] [stderr]    |                               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncReadExt`
[INFO] [stderr]  --> src/fpsc/ringbuf.rs:1:55
[INFO] [stderr]   |
[INFO] [stderr] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stderr]   |                                                       ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/db.rs:319:24
[INFO] [stderr]     |
[INFO] [stderr] 319 |             if let Err(e) = meta_iterator {
[INFO] [stderr]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/db.rs:351:13
[INFO] [stderr]     |
[INFO] [stderr] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stderr]     |             ----^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bundle_file`
[INFO] [stderr]    --> src/db.rs:351:13
[INFO] [stderr]     |
[INFO] [stderr] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bundle_file`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `chain`
[INFO] [stderr]    --> src/db.rs:347:35
[INFO] [stderr]     |
[INFO] [stderr] 347 |     async fn save_chain<B>(&self, chain: &BlockChain<B>) -> Result<(), HError>
[INFO] [stderr]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_chain`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `uuid`
[INFO] [stderr]    --> src/db.rs:356:35
[INFO] [stderr]     |
[INFO] [stderr] 356 |     async fn find_chain<B>(&self, uuid: UuidBytes) -> Option<BlockChain<B>>
[INFO] [stderr]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_uuid`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `identity`
[INFO] [stderr]   --> src/network/handlers.rs:33:37
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `msg`
[INFO] [stderr]   --> src/network/handlers.rs:33:62
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn handle_block_recitify(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                                              ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `identity`
[INFO] [stderr]   --> src/network/handlers.rs:39:36
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `msg`
[INFO] [stderr]   --> src/network/handlers.rs:39:61
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn handle_chain_request(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `identity`
[INFO] [stderr]   --> src/network/handlers.rs:47:33
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `msg`
[INFO] [stderr]   --> src/network/handlers.rs:47:58
[INFO] [stderr]    |
[INFO] [stderr] 47 |     fn handle_vote_block(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                                          ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `identity`
[INFO] [stderr]   --> src/network/handlers.rs:53:36
[INFO] [stderr]    |
[INFO] [stderr] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `msg`
[INFO] [stderr]   --> src/network/handlers.rs:53:61
[INFO] [stderr]    |
[INFO] [stderr] 53 |     fn handle_search_friend(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `identity`
[INFO] [stderr]   --> src/network/handlers.rs:70:36
[INFO] [stderr]    |
[INFO] [stderr] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `msg`
[INFO] [stderr]   --> src/network/handlers.rs:70:61
[INFO] [stderr]    |
[INFO] [stderr] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |                                                             ^^^ help: if this is intentional, prefix it with an underscore: `_msg`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]   --> src/fpsc/producer_cosumer.rs:38:9
[INFO] [stderr]    |
[INFO] [stderr] 38 |         unsafe {self.ringbuf.capacity() }
[INFO] [stderr]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `capacity`
[INFO] [stderr]    --> src/fpsc/producer_cosumer.rs:254:13
[INFO] [stderr]     |
[INFO] [stderr] 254 |         let capacity = self.capacity();
[INFO] [stderr]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cx`
[INFO] [stderr]    --> src/fpsc/ringbuf.rs:235:41
[INFO] [stderr]     |
[INFO] [stderr] 235 |     fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stderr]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cx`
[INFO] [stderr]    --> src/fpsc/ringbuf.rs:238:44
[INFO] [stderr]     |
[INFO] [stderr] 238 |     fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stderr]     |                                            ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stderr] 
[INFO] [stderr] warning: type `CentralNode<B, D>` is more private than the item `Nodebuilder::<B, D>::build`
[INFO] [stderr]    --> src/nodes/center.rs:135:5
[INFO] [stderr]     |
[INFO] [stderr] 135 |     pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Nodebuilder::<B, D>::build` is reachable at visibility `pub(in crate::nodes)`
[INFO] [stderr]     |
[INFO] [stderr] note: but type `CentralNode<B, D>` is only usable at visibility `pub(self)`
[INFO] [stderr]    --> src/nodes/center.rs:19:1
[INFO] [stderr]     |
[INFO] [stderr]  19 | struct CentralNode <B, D> 
[INFO] [stderr]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: enum `HError` is never used
[INFO] [stderr]  --> src/herrors.rs:9:10
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub enum HError {
[INFO] [stderr]   |          ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: enum `PipeError` is never used
[INFO] [stderr]   --> src/herrors.rs:81:10
[INFO] [stderr]    |
[INFO] [stderr] 81 | pub enum PipeError {
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_init` is never used
[INFO] [stderr]    --> src/herrors.rs:100:8
[INFO] [stderr]     |
[INFO] [stderr] 100 | pub fn logger_init() {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_init_with_level` is never used
[INFO] [stderr]    --> src/herrors.rs:105:4
[INFO] [stderr]     |
[INFO] [stderr] 105 | fn logger_init_with_level(level: log::LevelFilter) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_init_above_info` is never used
[INFO] [stderr]    --> src/herrors.rs:112:8
[INFO] [stderr]     |
[INFO] [stderr] 112 | pub fn logger_init_above_info() {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_init_above_debug` is never used
[INFO] [stderr]    --> src/herrors.rs:117:8
[INFO] [stderr]     |
[INFO] [stderr] 117 | pub fn logger_init_above_debug() {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_init_above_trace` is never used
[INFO] [stderr]    --> src/herrors.rs:122:8
[INFO] [stderr]     |
[INFO] [stderr] 122 | pub fn logger_init_above_trace() {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_init_above_error` is never used
[INFO] [stderr]    --> src/herrors.rs:127:8
[INFO] [stderr]     |
[INFO] [stderr] 127 | pub fn logger_init_above_error() {  
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_info` is never used
[INFO] [stderr]    --> src/herrors.rs:134:8
[INFO] [stderr]     |
[INFO] [stderr] 134 | pub fn logger_info(msg: &str) {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_error` is never used
[INFO] [stderr]    --> src/herrors.rs:138:8
[INFO] [stderr]     |
[INFO] [stderr] 138 | pub fn logger_error(msg: &str) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_error_with_error` is never used
[INFO] [stderr]    --> src/herrors.rs:141:8
[INFO] [stderr]     |
[INFO] [stderr] 141 | pub fn logger_error_with_error(error: &HError) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_debug` is never used
[INFO] [stderr]    --> src/herrors.rs:144:8
[INFO] [stderr]     |
[INFO] [stderr] 144 | pub fn logger_debug(msg: &str) {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_debug_with_error` is never used
[INFO] [stderr]    --> src/herrors.rs:147:8
[INFO] [stderr]     |
[INFO] [stderr] 147 | pub fn logger_debug_with_error(error: &HError) {   
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `logger_result` is never used
[INFO] [stderr]    --> src/herrors.rs:151:8
[INFO] [stderr]     |
[INFO] [stderr] 151 | pub fn logger_result<T>(result: Result<T, HError>) -> Option<T>
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `DataBase` is never used
[INFO] [stderr]   --> src/db.rs:22:11
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub trait DataBase {
[INFO] [stderr]    |           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Meta` is never used
[INFO] [stderr]   --> src/db.rs:38:11
[INFO] [stderr]    |
[INFO] [stderr] 38 | pub trait Meta {
[INFO] [stderr]    |           ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MetaData` is never constructed
[INFO] [stderr]   --> src/db.rs:44:12
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub struct MetaData {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/db.rs:56:12
[INFO] [stderr]     |
[INFO] [stderr]  54 | impl MetaData {
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr]  55 |     ///create a new meta data with the given name and uuid.
[INFO] [stderr]  56 |     pub fn new(name: String, uuid: UuidBytes) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  61 |     pub fn encode_into(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  76 |     pub fn decode_from(buffer: &[u8]) -> Result<MetaData, HError> {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  91 |     async fn save_meta_to_file(&self, path: &PathBuf) -> Result<(), HError> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 113 |     async fn get_one_meta_from_file(file_stream: &mut File) -> Result<(MetaData, usize), HError> {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 130 |     pub fn set_name(mut self, name: String) -> Result<Self, HError> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 147 |     pub fn set_uuid(mut self, uuid: UuidBytes) -> Self {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 152 |     pub fn uuid(&self) -> UuidBytes {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 157 |     pub fn name(&self) -> &String {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MetaDataIterator` is never constructed
[INFO] [stderr]    --> src/db.rs:164:12
[INFO] [stderr]     |
[INFO] [stderr] 164 | pub struct MetaDataIterator {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `reset`, and `next` are never used
[INFO] [stderr]    --> src/db.rs:172:18
[INFO] [stderr]     |
[INFO] [stderr] 170 | impl MetaDataIterator {
[INFO] [stderr]     | --------------------- associated items in this implementation
[INFO] [stderr] 171 |     ///create a new MetaDataIterator
[INFO] [stderr] 172 |     pub async fn new(file_path: PathBuf) -> Result<Self, HError> {
[INFO] [stderr]     |                  ^^^
[INFO] [stderr] ...
[INFO] [stderr] 189 |     pub fn reset(&mut self) {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 198 |     async fn next(&mut self) -> Option<Result<MetaData, HError>> {
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FileDataBase` is never constructed
[INFO] [stderr]    --> src/db.rs:223:12
[INFO] [stderr]     |
[INFO] [stderr] 223 | pub struct FileDataBase{
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/db.rs:234:12
[INFO] [stderr]     |
[INFO] [stderr] 229 | impl FileDataBase {
[INFO] [stderr]     | ----------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 234 |     pub fn new(data_absolute_dir_opt: Option<String>) -> Result<Self, HError> {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `DEFAULT_BUNDLE_FILE` is never used
[INFO] [stderr]    --> src/db.rs:365:7
[INFO] [stderr]     |
[INFO] [stderr] 365 | const DEFAULT_BUNDLE_FILE: &str = "chains.bundle";
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Bundle` is never constructed
[INFO] [stderr]    --> src/db.rs:378:12
[INFO] [stderr]     |
[INFO] [stderr] 378 | pub struct Bundle <B>
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `default_new`, `update_description_with_chain`, `save_to_file`, `save_chains_to_bundle`, `encode_to_stream`, and `load_chains_from_bundle` are never used
[INFO] [stderr]    --> src/db.rs:391:12
[INFO] [stderr]     |
[INFO] [stderr] 388 | / impl <B> Bundle <B> 
[INFO] [stderr] 389 | |     where B: Block + Encode + Decode<()> + Send + Unpin,
[INFO] [stderr]     | |________________________________________________________- associated items in this implementation
[INFO] [stderr] 390 |   {
[INFO] [stderr] 391 |       pub fn default_new() -> Self {
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 403 |       fn update_description_with_chain(&mut self, chain: &BlockChain<B>) 
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 437 |       pub async fn save_to_file(&mut self, chain: BlockChain<B> ) 
[INFO] [stderr]     |                    ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 469 |       async fn save_chains_to_bundle(&mut self, chains:& Vec<BlockChain<B>>)
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 501 |       async fn encode_to_stream<R> (
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 540 |       pub async fn load_chains_from_bundle(&mut self) 
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Signal` is never used
[INFO] [stderr]  --> src/network/signal.rs:5:10
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub enum Signal {
[INFO] [stderr]   |          ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `from_accept_result` is never used
[INFO] [stderr]   --> src/network/signal.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | impl Signal {
[INFO] [stderr]    | ----------- associated function in this implementation
[INFO] [stderr] 11 |     ///create a new listen result signal
[INFO] [stderr] 12 |     pub fn from_accept_result( listen_result: (TcpStream, SocketAddr)) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `UdpConnection` is never used
[INFO] [stderr]   --> src/network/udp.rs:21:11
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub trait UdpConnection: Send + Sync {
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `udp_send_to` is never used
[INFO] [stderr]    --> src/network/udp.rs:205:18
[INFO] [stderr]     |
[INFO] [stderr] 205 |     pub async fn udp_send_to(
[INFO] [stderr]     |                  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Test` is never constructed
[INFO] [stderr]    --> src/network/udp.rs:231:12
[INFO] [stderr]     |
[INFO] [stderr] 231 |     struct Test;
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Network` is never used
[INFO] [stderr]  --> src/network/network.rs:9:11
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub trait Network: UdpConnection + Send + Sync
[INFO] [stderr]   |           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `NetworkState` is never used
[INFO] [stderr]   --> src/network/network.rs:18:10
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub enum NetworkState {
[INFO] [stderr]    |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NetworkHandler` is never constructed
[INFO] [stderr]   --> src/network/network.rs:25:12
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub struct NetworkHandler {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `SignatureBytes` is never used
[INFO] [stderr]   --> src/network/protocol.rs:20:6
[INFO] [stderr]    |
[INFO] [stderr] 20 | type SignatureBytes = [u8; 64];
[INFO] [stderr]    |      ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Header` is never constructed
[INFO] [stderr]   --> src/network/protocol.rs:26:12
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub struct Header {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/network/protocol.rs:35:8
[INFO] [stderr]     |
[INFO] [stderr]  34 | impl Header {
[INFO] [stderr]     | ----------- associated items in this implementation
[INFO] [stderr]  35 |     fn new(msg_length: u32, signature: SignatureBytes, public_key: HashValue) -> Self {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr]  44 |     pub fn header_size() -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  50 |     pub fn encode_into_slice(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  87 |     fn decode_from_slice  (data: &[u8]) -> Result<Header, HError> 
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 113 |     pub async fn from_stream <T> ( stream: &mut T) -> Result<Header, HError> 
[INFO] [stderr]     |                  ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 125 |     pub async fn into_stream<T>(&self, stream: &mut T) -> Result<(), HError> 
[INFO] [stderr]     |                  ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 140 |     fn caculate_encode_size(&self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 152 |     fn verify_header(&self, data: &[u8]) -> Result<(), HError> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Payload` is never used
[INFO] [stderr]    --> src/network/protocol.rs:162:10
[INFO] [stderr]     |
[INFO] [stderr] 162 | pub enum Payload
[INFO] [stderr]     |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `from` is never used
[INFO] [stderr]    --> src/network/protocol.rs:184:12
[INFO] [stderr]     |
[INFO] [stderr] 181 | impl Payload {
[INFO] [stderr]     | ------------ associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 184 |     pub fn from(msg: Message) -> Payload {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RequestInfo` is never constructed
[INFO] [stderr]    --> src/network/protocol.rs:191:12
[INFO] [stderr]     |
[INFO] [stderr] 191 | pub struct RequestInfo {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VoteBlockArgs` is never constructed
[INFO] [stderr]    --> src/network/protocol.rs:199:12
[INFO] [stderr]     |
[INFO] [stderr] 199 | pub struct VoteBlockArgs {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/network/protocol.rs:212:12
[INFO] [stderr]     |
[INFO] [stderr] 211 | impl VoteBlockArgs {
[INFO] [stderr]     | ------------------ associated function in this implementation
[INFO] [stderr] 212 |     pub fn new(
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VoteBlock` is never constructed
[INFO] [stderr]    --> src/network/protocol.rs:244:12
[INFO] [stderr]     |
[INFO] [stderr] 244 | pub struct VoteBlock {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `private_new` and `new` are never used
[INFO] [stderr]    --> src/network/protocol.rs:269:8
[INFO] [stderr]     |
[INFO] [stderr] 268 | impl VoteBlock {
[INFO] [stderr]     | -------------- associated functions in this implementation
[INFO] [stderr] 269 |     fn private_new(
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 302 |     pub fn new(args: VoteBlockArgs) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BlockRec` is never constructed
[INFO] [stderr]    --> src/network/protocol.rs:414:12
[INFO] [stderr]     |
[INFO] [stderr] 414 | pub struct BlockRec {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Message` is never constructed
[INFO] [stderr]    --> src/network/protocol.rs:422:12
[INFO] [stderr]     |
[INFO] [stderr] 422 | pub struct Message {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/network/protocol.rs:435:12
[INFO] [stderr]     |
[INFO] [stderr] 434 | impl Message {
[INFO] [stderr]     | ------------ associated items in this implementation
[INFO] [stderr] 435 |     pub fn new(sender: HashValue, receiver: HashValue, payload: Payload ) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 445 |     fn new_with_zero() -> Self{
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 458 |     fn decode_from_slice_with_header(my_name: &HashValue, slice: &[u8], header: &Header) 
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 496 |     pub fn decode_from_slice(my_name: &HashValue, slice: &[u8]) -> Result<Self, HError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 528 |     pub fn encode_into_slice(&self, identity:&mut Identity, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 564 |     pub async fn encode(&self, sign_handle: &SignHandle, buffer: &mut [u8] )
[INFO] [stderr]     |                  ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 603 |     pub async fn into_stream<S> (&self, identity: &mut Identity, stream: &mut S) -> Result<(), HError>
[INFO] [stderr]     |                  ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 617 |     async fn from_stream <S>  (my_name: &HashValue, stream: &mut S) -> Result<Message, HError> 
[INFO] [stderr]     |              ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `PayloadTypes` is never used
[INFO] [stderr]   --> src/network/register.rs:27:10
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub enum PayloadTypes {
[INFO] [stderr]    |          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `from_payload` is never used
[INFO] [stderr]   --> src/network/register.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 33 | impl PayloadTypes {
[INFO] [stderr]    | ----------------- associated function in this implementation
[INFO] [stderr] 34 |     ///return a PayloadTypes from a Payload
[INFO] [stderr] 35 |     pub fn from_payload(payload: &Payload) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `AsyncHandler` is never used
[INFO] [stderr]   --> src/network/register.rs:53:11
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub trait AsyncHandler{
[INFO] [stderr]    |           ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AsyncRegister` is never constructed
[INFO] [stderr]    --> src/network/register.rs:112:12
[INFO] [stderr]     |
[INFO] [stderr] 112 | pub struct AsyncRegister
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/network/register.rs:126:8
[INFO] [stderr]     |
[INFO] [stderr] 125 | impl AsyncRegister {
[INFO] [stderr]     | ------------------ associated function in this implementation
[INFO] [stderr] 126 |     fn new() -> Self {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AsyncPayloadHandler` is never constructed
[INFO] [stderr]    --> src/network/register.rs:133:12
[INFO] [stderr]     |
[INFO] [stderr] 133 | pub struct AsyncPayloadHandler {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/network/register.rs:138:12
[INFO] [stderr]     |
[INFO] [stderr] 137 | impl AsyncPayloadHandler {
[INFO] [stderr]     | ------------------------ associated function in this implementation
[INFO] [stderr] 138 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Register` is never constructed
[INFO] [stderr]    --> src/network/register.rs:278:12
[INFO] [stderr]     |
[INFO] [stderr] 278 | pub struct Register{
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `reg` and `new` are never used
[INFO] [stderr]    --> src/network/register.rs:284:8
[INFO] [stderr]     |
[INFO] [stderr] 282 | impl Register {
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr] 283 |     /// register a handler for a specific payload type.
[INFO] [stderr] 284 |     fn reg(
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 297 |     fn new() -> Self {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `HandlerContext` is never constructed
[INFO] [stderr]    --> src/network/register.rs:304:12
[INFO] [stderr]     |
[INFO] [stderr] 304 | pub struct HandlerContext {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `get_request_worker`, and `send` are never used
[INFO] [stderr]    --> src/network/register.rs:309:12
[INFO] [stderr]     |
[INFO] [stderr] 308 | impl HandlerContext {
[INFO] [stderr]     | ------------------- associated items in this implementation
[INFO] [stderr] 309 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 315 |     pub fn get_request_worker(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 322 |     async fn send(
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `SyncHandler` is never used
[INFO] [stderr]    --> src/network/register.rs:345:11
[INFO] [stderr]     |
[INFO] [stderr] 345 | pub trait SyncHandler {
[INFO] [stderr]     |           ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `PayloadHandler` is never constructed
[INFO] [stderr]    --> src/network/register.rs:365:12
[INFO] [stderr]     |
[INFO] [stderr] 365 | pub struct PayloadHandler {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/network/register.rs:370:8
[INFO] [stderr]     |
[INFO] [stderr] 369 | impl PayloadHandler {
[INFO] [stderr]     | ------------------- associated function in this implementation
[INFO] [stderr] 370 |     fn new() -> Self {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Handler` is never used
[INFO] [stderr]   --> src/network/handlers.rs:12:7
[INFO] [stderr]    |
[INFO] [stderr] 12 | trait Handler
[INFO] [stderr]    |       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MessageHandler` is never constructed
[INFO] [stderr]   --> src/network/handlers.rs:25:12
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub struct MessageHandler  {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `handle_message` are never used
[INFO] [stderr]   --> src/network/handlers.rs:64:12
[INFO] [stderr]    |
[INFO] [stderr] 63 | impl MessageHandler {
[INFO] [stderr]    | ------------------- associated items in this implementation
[INFO] [stderr] 64 |     pub fn new(pipe_to_chain_keeper: Pipe<Message>)
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 70 |     async fn handle_message(&self, identity: &mut Identity, msg: Message) 
[INFO] [stderr]    |              ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NodeInfo` is never constructed
[INFO] [stderr]   --> src/nodes/node.rs:31:12
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub struct NodeInfo {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/nodes/node.rs:58:12
[INFO] [stderr]     |
[INFO] [stderr]  57 | impl NodeInfo {
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr]  58 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  73 |     pub fn name(&self) -> Result<HashValue, HError> {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr]  84 |     pub fn address(&self) -> Result<Vec<SocketAddr>, HError> {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  95 |     pub fn caller(&self) -> Result<HashValue, HError> {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 106 |     pub fn reputation(&self) -> Result<Reputation, HError> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 117 |     pub fn last_conn(&self) -> Result<u64, HError> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 128 |     pub fn last_state(&self) -> Result<NodeState, HError> {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `NodeAppend` is never used
[INFO] [stderr]    --> src/nodes/node.rs:143:11
[INFO] [stderr]     |
[INFO] [stderr] 143 | pub trait NodeAppend {
[INFO] [stderr]     |           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Node` is never used
[INFO] [stderr]    --> src/nodes/node.rs:162:11
[INFO] [stderr]     |
[INFO] [stderr] 162 | pub trait Node: UdpConnection + Sized + NodeAppend{       
[INFO] [stderr]     |           ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Reputation` is never constructed
[INFO] [stderr]    --> src/nodes/node.rs:700:12
[INFO] [stderr]     |
[INFO] [stderr] 700 | pub struct Reputation {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/nodes/node.rs:705:12
[INFO] [stderr]     |
[INFO] [stderr] 704 | impl Reputation {
[INFO] [stderr]     | --------------- associated function in this implementation
[INFO] [stderr] 705 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `NodeState` is never used
[INFO] [stderr]    --> src/nodes/node.rs:715:10
[INFO] [stderr]     |
[INFO] [stderr] 715 | pub enum NodeState {
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `NodeName` is never used
[INFO] [stderr]    --> src/nodes/node.rs:725:6
[INFO] [stderr]     |
[INFO] [stderr] 725 | type NodeName = HashValue;
[INFO] [stderr]     |      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `msg_delivery` is never used
[INFO] [stderr]    --> src/nodes/node.rs:662:18
[INFO] [stderr]     |
[INFO] [stderr] 662 |     pub async fn msg_delivery(
[INFO] [stderr]     |                  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `NodeName` is never used
[INFO] [stderr]   --> src/nodes/center.rs:13:6
[INFO] [stderr]    |
[INFO] [stderr] 13 | type NodeName = HashValue;
[INFO] [stderr]    |      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Central` is never used
[INFO] [stderr]   --> src/nodes/center.rs:15:11
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub trait Central {
[INFO] [stderr]    |           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CentralNode` is never constructed
[INFO] [stderr]   --> src/nodes/center.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 19 | struct CentralNode <B, D> 
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/nodes/center.rs:45:8
[INFO] [stderr]    |
[INFO] [stderr] 39 | / impl <B, D> CentralNode <B, D>
[INFO] [stderr] 40 | |     where B: Block + Carrier,
[INFO] [stderr] 41 | |           D: Block + Digester,
[INFO] [stderr]    | |______________________________- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 45 |       fn new(name: NodeName, address: String) -> Self{
[INFO] [stderr]    |          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Nodebuilder` is never constructed
[INFO] [stderr]   --> src/nodes/center.rs:64:12
[INFO] [stderr]    |
[INFO] [stderr] 64 | pub struct Nodebuilder<B, D> 
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/nodes/center.rs:80:12
[INFO] [stderr]     |
[INFO] [stderr]  76 | / impl <B, D> Nodebuilder<B, D> 
[INFO] [stderr]  77 | |     where B: Block + Carrier,
[INFO] [stderr]  78 | |           D: Block + Digester,
[INFO] [stderr]     | |______________________________- associated items in this implementation
[INFO] [stderr]  79 |   {
[INFO] [stderr]  80 |       pub fn new() -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr]  91 |       pub fn name(&mut self, name: NodeName) -> &mut Self {
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] ...
[INFO] [stderr]  95 |       pub fn address(&mut self, address: String) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |       pub fn center_address(&mut self, center_address: String) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 105 |       pub fn executor(&mut self, executor: ChainExecutor<B, D>) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 110 |       pub fn reputation(&mut self, reputation: Reputation) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 114 |       pub fn friends (&mut self, friends: Option<HashMap< NodeName, NormalNode<B, D>>>) -> &mut Self {
[INFO] [stderr]     |              ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 122 |       fn check_fields<T>(&self, option: &Option<T>, fild_name: &str)-> Result<(), HError> {
[INFO] [stderr]     |          ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 135 |       pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stderr]     |              ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `NodeName` is never used
[INFO] [stderr]  --> src/nodes/normal.rs:9:6
[INFO] [stderr]   |
[INFO] [stderr] 9 | type NodeName = HashValue;
[INFO] [stderr]   |      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `NormalNode` is never constructed
[INFO] [stderr]   --> src/nodes/normal.rs:11:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct NormalNode<B, D> 
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/nodes/normal.rs:37:8
[INFO] [stderr]    |
[INFO] [stderr] 32 | / impl <B, D> NormalNode <B, D>
[INFO] [stderr] 33 | |     where B: Block + Carrier,
[INFO] [stderr] 34 | |           D: Block + Digester
[INFO] [stderr]    | |_____________________________- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 37 |       fn new(name: NodeName, capacity: usize) -> Self {
[INFO] [stderr]    |          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SignRequest` is never constructed
[INFO] [stderr]   --> src/nodes/identity.rs:17:12
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct SignRequest {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/nodes/identity.rs:27:8
[INFO] [stderr]    |
[INFO] [stderr] 21 | impl SignRequest {
[INFO] [stderr]    | ---------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 27 |     fn new(bytes_vec: Vec<u8>, response: oneshot::Sender<Result<[u8; 64], HError>>) -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SignHandle` is never constructed
[INFO] [stderr]   --> src/nodes/identity.rs:54:12
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub struct SignHandle {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `spawn_new`, `verify`, `send`, `public_key_bytes`, and `sign` are never used
[INFO] [stderr]    --> src/nodes/identity.rs:79:18
[INFO] [stderr]     |
[INFO] [stderr]  59 | impl SignHandle {
[INFO] [stderr]     | --------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  79 |     pub async fn spawn_new(mut identity: Identity, capacity: usize, cancel_token: CancellationToken) -> 
[INFO] [stderr]     |                  ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 134 |     pub fn verify(&self, message: &[u8], signature: &[u8; 64]) -> Result<(), HError> 
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 146 |     pub async fn send(&self, sign_request: SignRequest) -> Result<(), HError>
[INFO] [stderr]     |                  ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 158 |     pub fn public_key_bytes(&self) -> [u8;32]
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 179 |     pub async fn sign(&self, bytes: &[u8]) -> 
[INFO] [stderr]     |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Identity` is never constructed
[INFO] [stderr]    --> src/nodes/identity.rs:210:12
[INFO] [stderr]     |
[INFO] [stderr] 210 | pub struct Identity{
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `create_keypair`, `new`, `sign_msg`, `public_key_to_bytes`, and `verify_signature_bytes` are never used
[INFO] [stderr]    --> src/nodes/identity.rs:217:8
[INFO] [stderr]     |
[INFO] [stderr] 215 | impl Identity {
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr] 216 |     /// a helper function for Identity::new()
[INFO] [stderr] 217 |     fn create_keypair() -> (VerifyingKey, SigningKey) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 227 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 237 |     pub fn sign_msg(&mut self, message: &[u8]) -> Result<[u8; 64], HError> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 248 |     pub fn public_key_to_bytes(&self) -> [u8; 32] {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 261 |     pub fn verify_signature_bytes(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Executor` is never used
[INFO] [stderr]   --> src/executor.rs:20:11
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub trait Executor: Archiver {
[INFO] [stderr]    |           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ChainExecutor` is never constructed
[INFO] [stderr]   --> src/executor.rs:33:12
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub struct ChainExecutor < B, D> 
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/executor.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 43 | / impl < B, D> ChainExecutor <B, D> 
[INFO] [stderr] 44 | |     where B: Block + Carrier,
[INFO] [stderr] 45 | |           D: Block + Digester ,
[INFO] [stderr]    | |_______________________________- associated function in this implementation
[INFO] [stderr] 46 |   {
[INFO] [stderr] 47 |       pub  fn new(limit: ChainLimit) -> Self
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `Location` is never used
[INFO] [stderr]  --> src/constants.rs:4:10
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub type Location = usize;
[INFO] [stderr]   |          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `Bytes` is never used
[INFO] [stderr]  --> src/constants.rs:5:10
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub type Bytes = Vec<u8>;
[INFO] [stderr]   |          ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ZERO_HASH` is never used
[INFO] [stderr]  --> src/constants.rs:7:11
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub const ZERO_HASH:[u8; 32] = [0; 32];
[INFO] [stderr]   |           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ZERO_U64` is never used
[INFO] [stderr]  --> src/constants.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub const ZERO_U64: u64 = 0 ;
[INFO] [stderr]   |           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ZERO_UUID` is never used
[INFO] [stderr]  --> src/constants.rs:9:11
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub const ZERO_UUID: [u8; 16] = [0;16];
[INFO] [stderr]   |           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ZERO_U32` is never used
[INFO] [stderr]   --> src/constants.rs:10:11
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub const ZERO_U32: u32 = 0;
[INFO] [stderr]    |           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PATH_CACHE_PACKAGE` is never used
[INFO] [stderr]   --> src/constants.rs:13:11
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub const PATH_CACHE_PACKAGE: &str = "cache/packages";
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `PATH_CACHE_BUNDLE` is never used
[INFO] [stderr]   --> src/constants.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub const PATH_CACHE_BUNDLE: &str = "cache/bundles";
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BUFFER_SIZE` is never used
[INFO] [stderr]   --> src/constants.rs:17:11
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub const BUFFER_SIZE: usize = 1024 * 32;
[INFO] [stderr]    |           ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `UDP_SENDER_PORT` is never used
[INFO] [stderr]   --> src/constants.rs:20:11
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub const UDP_SENDER_PORT: u16 = 8080;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `UDP_RECV_PORT` is never used
[INFO] [stderr]   --> src/constants.rs:21:11
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub const UDP_RECV_PORT: u16 = 8081;
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TCP_SENDER_PORT` is never used
[INFO] [stderr]   --> src/constants.rs:22:11
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub const TCP_SENDER_PORT: u16 = 8088;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TCP_RECV_PORT` is never used
[INFO] [stderr]   --> src/constants.rs:23:11
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub const TCP_RECV_PORT: u16 = 8089;
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MAX_MSG_SIZE` is never used
[INFO] [stderr]   --> src/constants.rs:24:11
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub const MAX_MSG_SIZE: usize = 1024 * 1024; // 1MB
[INFO] [stderr]    |           ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MAX_UDP_MSG_SIZE` is never used
[INFO] [stderr]   --> src/constants.rs:25:11
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub const MAX_UDP_MSG_SIZE: usize= 1024; // 1KB
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MTU_SIZE` is never used
[INFO] [stderr]   --> src/constants.rs:26:11
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub const MTU_SIZE: usize = 1500; // 1500 bytes
[INFO] [stderr]    |           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MAX_CONNECTIONS` is never used
[INFO] [stderr]   --> src/constants.rs:27:11
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub const MAX_CONNECTIONS: usize= 100; // maximum number of  tcp connections
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `UDP_CHECK_PORT` is never used
[INFO] [stderr]   --> src/constants.rs:28:11
[INFO] [stderr]    |
[INFO] [stderr] 28 | pub const UDP_CHECK_PORT: u16 = 7070;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TIME_MS_FOR_UNP_RECV` is never used
[INFO] [stderr]   --> src/constants.rs:29:11
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub const TIME_MS_FOR_UNP_RECV: u64 = 5000; // 5 seconds
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `CHANNEL_CAPACITY` is never used
[INFO] [stderr]   --> src/constants.rs:33:11
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub const CHANNEL_CAPACITY: usize = 1024;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MAX_FILE_NAME_LEN` is never used
[INFO] [stderr]   --> src/constants.rs:37:11
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub const MAX_FILE_NAME_LEN: usize = 128;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Chain` is never used
[INFO] [stderr]   --> src/chain.rs:22:11
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub trait Chain  
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ChainLimit` is never constructed
[INFO] [stderr]    --> src/chain.rs:200:12
[INFO] [stderr]     |
[INFO] [stderr] 200 | pub struct ChainLimit {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `max_len`, `time_gap`, `length_check`, `time_check`, and `default` are never used
[INFO] [stderr]    --> src/chain.rs:212:12
[INFO] [stderr]     |
[INFO] [stderr] 210 | impl ChainLimit {
[INFO] [stderr]     | --------------- associated items in this implementation
[INFO] [stderr] 211 |     ///create a new limit information for a chain.
[INFO] [stderr] 212 |     pub fn new(max_len: usize, time_gap: u64) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 220 |     pub fn max_len(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 225 |     pub fn time_gap(&self) -> u64 {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 229 |     pub fn length_check(&self, len: usize) -> Result<(), HError> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 241 |     pub fn time_check<B>(&self, origin: u64, block: &B) -> Result<(), HError> 
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 263 |     pub fn default() -> Self {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BlockChain` is never constructed
[INFO] [stderr]    --> src/chain.rs:275:12
[INFO] [stderr]     |
[INFO] [stderr] 275 | pub struct BlockChain<B>
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/chain.rs:292:12
[INFO] [stderr]     |
[INFO] [stderr] 283 | / impl <B> BlockChain<B>
[INFO] [stderr] 284 | |     where B: Block
[INFO] [stderr]     | |__________________- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 292 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 303 |       pub fn block_verify(&self, block: &B) -> Result<(), HError> {
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 318 |       pub fn is_full(&self) -> bool {
[INFO] [stderr]     |              ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 326 |       pub fn add(&mut self, block: B) -> Result<(), HError> {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 356 |       fn empty_with_capacity(capacity: usize) -> Self {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 364 |       pub fn index_select(&self, range: (usize, usize))
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 381 |       pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 384 |       pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stderr]     |              ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 387 |       pub fn init_iter(self) -> std::vec::IntoIter<B> {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ChainRef` is never constructed
[INFO] [stderr]    --> src/chain.rs:429:12
[INFO] [stderr]     |
[INFO] [stderr] 429 | pub struct ChainRef<'a, B>
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/chain.rs:441:8
[INFO] [stderr]     |
[INFO] [stderr] 436 | / impl <'a, B> ChainRef<'a, B> 
[INFO] [stderr] 437 | |     where B: Block
[INFO] [stderr]     | |__________________- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 441 |       fn new(data: *const B, len: usize, time_origin: u64, time_gap: u64) -> Result<Self, HError>{
[INFO] [stderr]     |          ^^^
[INFO] [stderr] ...
[INFO] [stderr] 468 |       fn block_ref(&self, local_index: usize) -> Option<&B> {
[INFO] [stderr]     |          ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 486 |       pub fn  from_chain_by_index(
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 524 |       pub fn from_chain(chain: &'a BlockChain<B>) -> Result<Self, HError>
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 541 |       pub fn contain_hash(&self, hash: HashValue) -> Option<usize>
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 556 |       fn hash_select(&self, hash: HashValue) -> Option<B> 
[INFO] [stderr]     |          ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 572 |       pub fn contain_data_hash(&self, data_hash: HashValue) -> Option<usize>
[INFO] [stderr]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 589 |       pub fn contain_uuid(&self, uuid: UuidBytes) -> Option<usize>
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 606 |       pub fn contain_index(&self, index: usize) -> Option<usize>
[INFO] [stderr]     |              ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 623 |       pub fn len(&self) -> usize {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 628 |       pub fn as_slice(&self) -> &[B] {
[INFO] [stderr]     |              ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 634 |       pub fn from_slice(slice: &[B]) -> Self {
[INFO] [stderr]     |              ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 644 |       pub fn into_vec(self) -> Vec<B> 
[INFO] [stderr]     |              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Main` is never constructed
[INFO] [stderr]    --> src/chain.rs:668:12
[INFO] [stderr]     |
[INFO] [stderr] 668 | pub struct Main<D>
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `add_block` are never used
[INFO] [stderr]    --> src/chain.rs:676:12
[INFO] [stderr]     |
[INFO] [stderr] 673 | / impl <D> Main<D>
[INFO] [stderr] 674 | |     where D: Block + Digester,
[INFO] [stderr]     | |______________________________- associated items in this implementation
[INFO] [stderr] 675 |   {
[INFO] [stderr] 676 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 684 |       pub fn add_block(&mut self, block: D) -> Result<(), HError> {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Sides` is never constructed
[INFO] [stderr]    --> src/chain.rs:735:12
[INFO] [stderr]     |
[INFO] [stderr] 735 | pub struct Sides<B>
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `add_chain` are never used
[INFO] [stderr]    --> src/chain.rs:762:12
[INFO] [stderr]     |
[INFO] [stderr] 759 | / impl <B> Sides<B> 
[INFO] [stderr] 760 | |     where B: Block + Carrier,
[INFO] [stderr]     | |_____________________________- associated items in this implementation
[INFO] [stderr] 761 |   {
[INFO] [stderr] 762 |       pub fn new() -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 768 |       pub fn add_chain(&mut self, digest_id: u32, chain: BlockChain<B>) -> Result<(), HError> {
[INFO] [stderr]     |              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ChainInfo` is never constructed
[INFO] [stderr]    --> src/chain.rs:785:12
[INFO] [stderr]     |
[INFO] [stderr] 785 | pub struct ChainInfo <B>
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ChainInfoBuilder` is never constructed
[INFO] [stderr]    --> src/chain.rs:800:12
[INFO] [stderr]     |
[INFO] [stderr] 800 | pub struct ChainInfoBuilder {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/chain.rs:813:12
[INFO] [stderr]     |
[INFO] [stderr] 811 | impl  ChainInfoBuilder 
[INFO] [stderr]     | ---------------------- associated items in this implementation
[INFO] [stderr] 812 | {
[INFO] [stderr] 813 |     pub fn new() -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 825 |     pub fn build<B>(self) -> ChainInfo<B>
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 843 |     pub fn digest_id(mut self, digest_id: u32) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 851 |     pub fn index(mut self, start: u32, end: u32) -> Self {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 857 |     pub fn timestamp(mut self, start: u64, end: u64) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 863 |     pub fn hash(mut self, hash: HashValue) -> Self {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 869 |     pub fn merkle_root(mut self, merkle_root: HashValue) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 875 |     pub fn data_uuid(mut self, data_uuid: UuidBytes) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 881 |     pub fn data_hash(mut self, data_hash: HashValue) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `new` is never used
[INFO] [stderr]   --> src/fpsc/mod.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn new <'a,C>(capacity: usize) -> (ProducerBuf<'a>, ConsumerBuf<C>)
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `reuse_buf_from_consumer` is never used
[INFO] [stderr]   --> src/fpsc/mod.rs:24:8
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub fn reuse_buf_from_consumer<C> (consumer: &mut ConsumerBuf<C>)
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `produce_to_producer` is never used
[INFO] [stderr]   --> src/fpsc/mod.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 30 | pub fn produce_to_producer(producer: &mut ProducerBuf) 
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ProducerBuf` is never constructed
[INFO] [stderr]   --> src/fpsc/producer_cosumer.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub struct ProducerBuf <'a>
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `produce_all`, `produce`, `capacity`, `stream`, and `produce_from_stream` are never used
[INFO] [stderr]   --> src/fpsc/producer_cosumer.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl <'a> ProducerBuf <'a>
[INFO] [stderr]    | -------------------------- associated items in this implementation
[INFO] [stderr] 20 | {
[INFO] [stderr] 21 |     pub fn new(ringbuf: Ringbuf) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 26 |     pub async fn produce_all(&mut self, data: &[u8]) -> Result<(), HError> {
[INFO] [stderr]    |                  ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 |     pub async fn produce(&mut self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stderr]    |                  ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 37 |     pub fn capacity(&self) -> usize {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 |     pub fn stream<T>(&mut self, stream: T) -> &mut Self 
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 50 |     pub async fn produce_from_stream<S> (&mut self, stream: S) 
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ConsumerBuf` is never constructed
[INFO] [stderr]    --> src/fpsc/producer_cosumer.rs:168:12
[INFO] [stderr]     |
[INFO] [stderr] 168 | pub struct ConsumerBuf<T>
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/fpsc/producer_cosumer.rs:181:12
[INFO] [stderr]     |
[INFO] [stderr] 177 | / impl <C> ConsumerBuf<C> 
[INFO] [stderr] 178 | |     where C: FnMut(&mut [u8])-> Result<(), HError>,
[INFO] [stderr] 179 | |         Self: Unpin
[INFO] [stderr]     | |___________________- associated items in this implementation
[INFO] [stderr] 180 |   {
[INFO] [stderr] 181 |       pub fn new(reader: Ringbuf) -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 190 |       pub fn task(&mut self, task: C) -> &mut Self {
[INFO] [stderr]     |              ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 195 |       pub fn with_closure<'a>(capacity: usize, closure: C) -> (ProducerBuf<'a>, Self) {
[INFO] [stderr]     |              ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 206 |       pub fn capacity(&self) -> usize {
[INFO] [stderr]     |              ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 212 |       fn clone_buf_state(&self) -> BufState {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 218 |       fn set_buf_state(&mut self, state: BufState) {
[INFO] [stderr]     |          ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 224 |       fn wake_writer(&mut self) {
[INFO] [stderr]     |          ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 230 |       fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 241 |       pub async fn consume(&mut self) -> Result<usize, HError> {
[INFO] [stderr]     |                    ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 252 |       pub async fn consume_all(&mut self) -> Result<usize, HError> {
[INFO] [stderr]     |                    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Inner` is never constructed
[INFO] [stderr]  --> src/fpsc/ringbuf.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 8 | pub struct Inner {
[INFO] [stderr]   |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `BufState` is never used
[INFO] [stderr]   --> src/fpsc/ringbuf.rs:19:10
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub enum BufState {
[INFO] [stderr]    |          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/fpsc/ringbuf.rs:28:12
[INFO] [stderr]    |
[INFO] [stderr] 26 | impl  Inner
[INFO] [stderr]    | ----------- associated function in this implementation
[INFO] [stderr] 27 | {
[INFO] [stderr] 28 |     pub fn new(capacity: usize) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `BufPtr` is never constructed
[INFO] [stderr]   --> src/fpsc/ringbuf.rs:40:12
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub struct BufPtr {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Ringbuf` is never constructed
[INFO] [stderr]   --> src/fpsc/ringbuf.rs:62:12
[INFO] [stderr]    |
[INFO] [stderr] 62 | pub struct Ringbuf{
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/fpsc/ringbuf.rs:69:12
[INFO] [stderr]     |
[INFO] [stderr]  66 | impl  Ringbuf
[INFO] [stderr]     | ------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  69 |     pub fn new(capacity: usize) -> (Self, Self) {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr]  81 |     pub fn get_mut_vec_buf(&mut self) -> &mut Vec<u8> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  88 |     pub fn clone_buf_state(&self) -> BufState {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  95 |     pub fn set_buf_state(&mut self, state: BufState) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 102 |     pub fn wake_writer(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 110 |     pub fn wake_reader(&mut self) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 119 |     pub fn writer_waker_save(&mut self, writer_waker: Waker) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 126 |     pub fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 132 |     pub fn capacity(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 138 |     pub fn len(&self) -> usize {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 145 |     pub fn reuse(&mut self) {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `HashValue` is never used
[INFO] [stderr]   --> src/hash.rs:14:10
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub type HashValue = [u8; 32];
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Hasher` is never used
[INFO] [stderr]   --> src/hash.rs:18:11
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub trait Hasher {
[INFO] [stderr]    |           ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BUFFER_SIZE` is never used
[INFO] [stderr]   --> src/serializer.rs:12:8
[INFO] [stderr]    |
[INFO] [stderr] 12 | const  BUFFER_SIZE: usize = 1024 * 128;
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BIGGEST_BUFFER_SIZE` is never used
[INFO] [stderr]   --> src/serializer.rs:13:8
[INFO] [stderr]    |
[INFO] [stderr] 13 | const  BIGGEST_BUFFER_SIZE: usize = 1024 * BUFFER_SIZE;
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Serialize` is never used
[INFO] [stderr]   --> src/serializer.rs:17:11
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub trait Serialize
[INFO] [stderr]    |           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Serializer` is never constructed
[INFO] [stderr]    --> src/serializer.rs:322:12
[INFO] [stderr]     |
[INFO] [stderr] 322 | pub struct Serializer <T> 
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `get_data` are never used
[INFO] [stderr]    --> src/serializer.rs:335:12
[INFO] [stderr]     |
[INFO] [stderr] 329 | / impl  <T> Serializer <T> 
[INFO] [stderr] 330 | |     where T: Sized + Encode + Decode<()> + Send + Unpin 
[INFO] [stderr]     | |_______________________________________________________- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 335 |       pub fn new(data: Option<T>) -> Self {
[INFO] [stderr]     |              ^^^
[INFO] [stderr] ...
[INFO] [stderr] 345 |       pub fn get_data(&self) -> Option<&T> {
[INFO] [stderr]     |              ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `size_to_align` is never used
[INFO] [stderr]    --> src/serializer.rs:397:19
[INFO] [stderr]     |
[INFO] [stderr] 397 |     pub(super) fn size_to_align(size: usize, align: usize) -> usize {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `read_all_from_stream` is never used
[INFO] [stderr]    --> src/serializer.rs:409:25
[INFO] [stderr]     |
[INFO] [stderr] 409 |     pub(super) async fn read_all_from_stream<R>(
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `save_size_header_into_slice` is never used
[INFO] [stderr]    --> src/serializer.rs:451:19
[INFO] [stderr]     |
[INFO] [stderr] 451 |     pub(super) fn save_size_header_into_slice(size: u32, dst: &mut [u8]) 
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Pipe` is never constructed
[INFO] [stderr]  --> src/pipe.rs:6:12
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct Pipe<T> {
[INFO] [stderr]   |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]   --> src/pipe.rs:13:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl <T> Pipe<T> {
[INFO] [stderr]    | ---------------- associated items in this implementation
[INFO] [stderr] 12 |     //create a pipe with a given capacity
[INFO] [stderr] 13 |     pub fn new(capacity: usize) ->(Self, Self) {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 21 |     pub async fn send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stderr]    |                  ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 30 |     pub async fn recv(&mut self) -> Result<T, HError> {
[INFO] [stderr]    |                  ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 38 |     pub fn close(&mut self) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 |     pub async fn is_closed(&mut self) -> bool {
[INFO] [stderr]    |                  ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 46 |     pub  fn try_recv(&mut self) -> Result<T, HError> {
[INFO] [stderr]    |             ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 57 |     pub fn try_send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Block` is never used
[INFO] [stderr]   --> src/block.rs:15:11
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub trait Block 
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Digester` is never used
[INFO] [stderr]    --> src/block.rs:106:11
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub trait Digester: Block {
[INFO] [stderr]     |           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Carrier` is never used
[INFO] [stderr]    --> src/block.rs:118:11
[INFO] [stderr]     |
[INFO] [stderr] 118 | pub trait Carrier : Block {
[INFO] [stderr]     |           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `BlockArgs` is never used
[INFO] [stderr]    --> src/block.rs:126:11
[INFO] [stderr]     |
[INFO] [stderr] 126 | pub trait BlockArgs {}
[INFO] [stderr]     |           ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DataBlockArgs` is never constructed
[INFO] [stderr]    --> src/block.rs:128:12
[INFO] [stderr]     |
[INFO] [stderr] 128 | pub struct DataBlockArgs {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/block.rs:137:12
[INFO] [stderr]     |
[INFO] [stderr] 135 | impl DataBlockArgs {
[INFO] [stderr]     | ------------------ associated function in this implementation
[INFO] [stderr] 136 |     ///create a new args list for a new data block.
[INFO] [stderr] 137 |     pub fn new(
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DigestBlockArgs` is never constructed
[INFO] [stderr]    --> src/block.rs:156:12
[INFO] [stderr]     |
[INFO] [stderr] 156 | pub struct DigestBlockArgs {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/block.rs:163:12
[INFO] [stderr]     |
[INFO] [stderr] 162 | impl DigestBlockArgs {
[INFO] [stderr]     | -------------------- associated function in this implementation
[INFO] [stderr] 163 |     pub fn new(
[INFO] [stderr]     |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DataBlock` is never constructed
[INFO] [stderr]    --> src/block.rs:181:12
[INFO] [stderr]     |
[INFO] [stderr] 181 | pub struct DataBlock {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `private_new` is never used
[INFO] [stderr]    --> src/block.rs:198:8
[INFO] [stderr]     |
[INFO] [stderr] 197 | impl DataBlock {
[INFO] [stderr]     | -------------- associated function in this implementation
[INFO] [stderr] 198 |     fn private_new(
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DigestBlock` is never constructed
[INFO] [stderr]    --> src/block.rs:317:12
[INFO] [stderr]     |
[INFO] [stderr] 317 | pub struct DigestBlock {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `private_new` and `create` are never used
[INFO] [stderr]    --> src/block.rs:333:8
[INFO] [stderr]     |
[INFO] [stderr] 332 | impl DigestBlock {
[INFO] [stderr]     | ---------------- associated functions in this implementation
[INFO] [stderr] 333 |     fn private_new(
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 356 |     pub fn create(args: DigestBlockArgs ) -> Self {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Keeper` is never used
[INFO] [stderr]   --> src/keeper.rs:24:11
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub trait Keeper: Send + Sync{
[INFO] [stderr]    |           ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ChainKeeper` is never constructed
[INFO] [stderr]   --> src/keeper.rs:69:12
[INFO] [stderr]    |
[INFO] [stderr] 69 | pub struct ChainKeeper  <B, D>
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/keeper.rs:85:13
[INFO] [stderr]    |
[INFO] [stderr] 77 | / impl <B, D> ChainKeeper<B, D>
[INFO] [stderr] 78 | |     where D: Block + Digester,
[INFO] [stderr] 79 | |           B: Block + Carrier,
[INFO] [stderr]    | |_____________________________- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 85 |       pub  fn new(limit: ChainLimit) -> Self {
[INFO] [stderr]    |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DataId` is never constructed
[INFO] [stderr]   --> src/archive.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct DataId {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Archiver` is never used
[INFO] [stderr]   --> src/archive.rs:20:11
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub trait Archiver {
[INFO] [stderr]    |           ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Request` is never constructed
[INFO] [stderr]  --> src/req_resp.rs:9:12
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub struct Request<T> {
[INFO] [stderr]   |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `send`, and `send_back` are never used
[INFO] [stderr]   --> src/req_resp.rs:19:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl <T> Request<T> {
[INFO] [stderr]    | ------------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 19 |     fn new(data: T) -> (Self, Response<T>) {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 29 |     pub async fn send(data: T, worker: RequestWorker<T>) -> Result<Response<T>, HError>{
[INFO] [stderr]    |                  ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     pub fn send_back(self, data: T) -> Result<(), HError> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Response` is never constructed
[INFO] [stderr]   --> src/req_resp.rs:49:12
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub struct Response<T> {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `response` is never used
[INFO] [stderr]   --> src/req_resp.rs:56:18
[INFO] [stderr]    |
[INFO] [stderr] 54 | impl <T> Response<T> {
[INFO] [stderr]    | -------------------- method in this implementation
[INFO] [stderr] 55 |     /// Wait for and return the response from the worker
[INFO] [stderr] 56 |     pub async fn response(self) -> Result<T, HError> {
[INFO] [stderr]    |                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RequestWorker` is never constructed
[INFO] [stderr]   --> src/req_resp.rs:67:12
[INFO] [stderr]    |
[INFO] [stderr] 67 | pub struct RequestWorker<T> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `send_to_worker` is never used
[INFO] [stderr]   --> src/req_resp.rs:74:14
[INFO] [stderr]    |
[INFO] [stderr] 72 | impl <T> RequestWorker<T> {
[INFO] [stderr]    | ------------------------- method in this implementation
[INFO] [stderr] 73 |     /// Internal method to send a request to the worker
[INFO] [stderr] 74 |     async fn send_to_worker(&self, req: Request<T>) -> Result<(), HError> {       
[INFO] [stderr]    |              ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `WorkReceiver` is never constructed
[INFO] [stderr]   --> src/req_resp.rs:85:12
[INFO] [stderr]    |
[INFO] [stderr] 85 | pub struct WorkReceiver<T> {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `recv_work`, and `recv_data` are never used
[INFO] [stderr]    --> src/req_resp.rs:92:8
[INFO] [stderr]     |
[INFO] [stderr]  90 | impl <T> WorkReceiver<T> {
[INFO] [stderr]     | ------------------------ associated items in this implementation
[INFO] [stderr]  91 |     /// Create a new receiver wrapper
[INFO] [stderr]  92 |     fn new(receiver: mpsc::Receiver<Request<T>>) -> Self {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr]  97 |     pub async fn recv_work(&mut self) -> Option<Request<T>> {
[INFO] [stderr]     |                  ^^^^^^^^^
[INFO] [stderr] ...
[WARN] too many lines in the log, truncating it
