[INFO] cloning repository https://github.com/whq611/ece598pv-sp2022-master
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/whq611/ece598pv-sp2022-master" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhq611%2Fece598pv-sp2022-master", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhq611%2Fece598pv-sp2022-master'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d9cef327b12555e26a2c7547e7acda0b5feb7cd2
[INFO] checking whq611/ece598pv-sp2022-master against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhq611%2Fece598pv-sp2022-master" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/whq611/ece598pv-sp2022-master on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/whq611/ece598pv-sp2022-master
[INFO] finished tweaking git repo https://github.com/whq611/ece598pv-sp2022-master
[INFO] tweaked toml for git repo https://github.com/whq611/ece598pv-sp2022-master written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/whq611/ece598pv-sp2022-master already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded js-sys v0.3.28
[INFO] [stderr]   Downloaded web-sys v0.3.28
[INFO] [stderr]   Downloaded wasm-bindgen-webidl v0.2.51
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ada49b584490e9152a4d4652b7bbe5f1972b87ef817aac3c232d5dd8bb5a1afa
[INFO] running `Command { std: "docker" "start" "-a" "ada49b584490e9152a4d4652b7bbe5f1972b87ef817aac3c232d5dd8bb5a1afa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ada49b584490e9152a4d4652b7bbe5f1972b87ef817aac3c232d5dd8bb5a1afa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ada49b584490e9152a4d4652b7bbe5f1972b87ef817aac3c232d5dd8bb5a1afa", kill_on_drop: false }`
[INFO] [stdout] ada49b584490e9152a4d4652b7bbe5f1972b87ef817aac3c232d5dd8bb5a1afa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 58720432442b6deb87204e0f40d6e6af3b08b2fefe36f6ad6aaedf634c641443
[INFO] running `Command { std: "docker" "start" "-a" "58720432442b6deb87204e0f40d6e6af3b08b2fefe36f6ad6aaedf634c641443", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.108
[INFO] [stderr]    Compiling proc-macro2 v1.0.32
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.82
[INFO] [stderr]    Compiling futures-core v0.3.18
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling autocfg v0.1.6
[INFO] [stderr]     Checking futures-io v0.3.18
[INFO] [stderr]     Checking pin-project-lite v0.2.7
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling serde v1.0.101
[INFO] [stderr]     Checking cache-padded v1.1.1
[INFO] [stderr]     Checking event-listener v2.5.1
[INFO] [stderr]     Checking concurrent-queue v1.2.2
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking fastrand v1.5.0
[INFO] [stderr]     Checking parking v2.0.0
[INFO] [stderr]     Checking waker-fn v1.1.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]     Checking once_cell v1.8.0
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling futures-task v0.3.18
[INFO] [stderr]     Checking futures-lite v1.12.0
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]     Checking async-task v4.0.3
[INFO] [stderr]    Compiling futures-channel v0.3.18
[INFO] [stderr]     Checking polling v2.2.0
[INFO] [stderr]     Checking socket2 v0.4.2
[INFO] [stderr]     Checking async-channel v1.6.1
[INFO] [stderr]     Checking futures-sink v0.3.18
[INFO] [stderr]    Compiling signal-hook v0.3.10
[INFO] [stderr]     Checking matches v0.1.8
[INFO] [stderr]     Checking smallvec v0.6.10
[INFO] [stderr]    Compiling futures-util v0.3.18
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]     Checking atomic-waker v1.0.0
[INFO] [stderr]     Checking unicode-bidi v0.3.4
[INFO] [stderr]     Checking unicode-normalization v0.1.8
[INFO] [stderr]     Checking async-io v1.6.0
[INFO] [stderr]     Checking blocking v1.1.0
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.0
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]    Compiling cc v1.0.45
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]    Compiling bitflags v1.2.0
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking term_size v0.3.1
[INFO] [stderr]     Checking atty v0.2.13
[INFO] [stderr]     Checking async-lock v2.4.0
[INFO] [stderr]    Compiling bincode v1.2.0
[INFO] [stderr]     Checking unicode-width v0.1.6
[INFO] [stderr]     Checking ppv-lite86 v0.2.15
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]     Checking idna v0.2.0
[INFO] [stderr]     Checking async-fs v1.5.0
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking async-process v1.3.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking async-net v1.6.1
[INFO] [stderr]     Checking url v2.1.0
[INFO] [stderr]     Checking async-executor v1.4.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling ring v0.16.9
[INFO] [stderr]     Checking simple-mutex v1.1.5
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking chunked_transfer v1.4.0
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking untrusted v0.7.0
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking ascii v1.0.0
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]    Compiling ntest_proc_macro_helper v0.7.3
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking crossbeam v0.8.1
[INFO] [stderr]     Checking stderrlog v0.5.1
[INFO] [stderr]     Checking smol v1.2.5
[INFO] [stderr]     Checking async-dup v1.2.2
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]    Compiling hex-literal v0.3.4
[INFO] [stderr]     Checking hex v0.4.0
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]     Checking tiny_http v0.9.0
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling futures-macro v0.3.18
[INFO] [stderr]    Compiling ntest_test_cases v0.7.3
[INFO] [stderr]     Checking futures-executor v0.3.18
[INFO] [stderr]     Checking futures v0.3.18
[INFO] [stderr]     Checking serde_json v1.0.44
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]     Checking bitcoin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `EdDSAParameters`, `KeyPair`, `VerificationAlgorithm`
[INFO] [stdout]  --> src/types/transaction.rs:2:50
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters};
[INFO] [stdout]   |                                                  ^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/types/transaction.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender`, `TryRecvError`, `unbounded`
[INFO] [stdout]  --> src/miner/worker.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossbeam::channel::{unbounded, Receiver, Sender, TryRecvError};
[INFO] [stdout]   |                          ^^^^^^^^^            ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/miner/worker.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::hash::H256`
[INFO] [stdout]  --> src/network/worker.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::types::hash::H256;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/blockchain/mod.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn insert(&mut self, block: &Block) {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes`
[INFO] [stdout]   --> src/types/address.rs:50:34
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn from_public_key_bytes(bytes: &[u8]) -> Address {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]  --> src/types/merkle.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new<T>(data: &[T]) -> Self where T: Hashable, {
[INFO] [stdout]   |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> src/types/merkle.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn proof(&self, index: usize) -> Vec<H256> {
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/types/merkle.rs:25:15
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `datum`
[INFO] [stdout]   --> src/types/merkle.rs:25:28
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_datum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]   --> src/types/merkle.rs:25:42
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> src/types/merkle.rs:25:58
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leaf_size`
[INFO] [stdout]   --> src/types/merkle.rs:25:72
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/types/transaction.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn sign(t: &Transaction, key: &Ed25519KeyPair) -> Signature {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/types/transaction.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn sign(t: &Transaction, key: &Ed25519KeyPair) -> Signature {
[INFO] [stdout]    |                              ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/types/transaction.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |               ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `public_key`
[INFO] [stdout]   --> src/types/transaction.rs:19:32
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `signature`
[INFO] [stdout]   --> src/types/transaction.rs:19:51
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |                                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_signature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `finished_block_chan` is never read
[INFO] [stdout]   --> src/miner/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     finished_block_chan: Sender<Block>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]  --> src/miner/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Worker {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 9 |     server: ServerHandle,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Worker` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]   --> src/network/worker.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Worker {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     server: ServerHandle,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Worker` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 22 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling ntest_timeout v0.7.3
[INFO] [stderr]     Checking ntest v0.7.3
[INFO] [stdout] warning: unused imports: `EdDSAParameters`, `KeyPair`, `VerificationAlgorithm`
[INFO] [stdout]  --> src/types/transaction.rs:2:50
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters};
[INFO] [stdout]   |                                                  ^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/types/transaction.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender`, `TryRecvError`, `unbounded`
[INFO] [stdout]  --> src/miner/worker.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossbeam::channel::{unbounded, Receiver, Sender, TryRecvError};
[INFO] [stdout]   |                          ^^^^^^^^^            ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/miner/worker.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/blockchain/mod.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn insert(&mut self, block: &Block) {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes`
[INFO] [stdout]   --> src/types/address.rs:50:34
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn from_public_key_bytes(bytes: &[u8]) -> Address {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent`
[INFO] [stdout]   --> src/types/block.rs:25:30
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn generate_random_block(parent: &H256) -> Block {
[INFO] [stdout]    |                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]  --> src/types/merkle.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new<T>(data: &[T]) -> Self where T: Hashable, {
[INFO] [stdout]   |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> src/types/merkle.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn proof(&self, index: usize) -> Vec<H256> {
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/types/merkle.rs:25:15
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `datum`
[INFO] [stdout]   --> src/types/merkle.rs:25:28
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_datum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]   --> src/types/merkle.rs:25:42
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> src/types/merkle.rs:25:58
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leaf_size`
[INFO] [stdout]   --> src/types/merkle.rs:25:72
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/types/transaction.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn sign(t: &Transaction, key: &Ed25519KeyPair) -> Signature {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/types/transaction.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn sign(t: &Transaction, key: &Ed25519KeyPair) -> Signature {
[INFO] [stdout]    |                              ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/types/transaction.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |               ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `public_key`
[INFO] [stdout]   --> src/types/transaction.rs:19:32
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `signature`
[INFO] [stdout]   --> src/types/transaction.rs:19:51
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |                                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_signature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `finished_block_chan` is never read
[INFO] [stdout]   --> src/miner/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     finished_block_chan: Sender<Block>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]  --> src/miner/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Worker {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 9 |     server: ServerHandle,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Worker` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]   --> src/network/worker.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Worker {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     server: ServerHandle,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Worker` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 22 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 8.41s
[INFO] running `Command { std: "docker" "inspect" "58720432442b6deb87204e0f40d6e6af3b08b2fefe36f6ad6aaedf634c641443", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58720432442b6deb87204e0f40d6e6af3b08b2fefe36f6ad6aaedf634c641443", kill_on_drop: false }`
[INFO] [stdout] 58720432442b6deb87204e0f40d6e6af3b08b2fefe36f6ad6aaedf634c641443
[INFO] checking whq611/ece598pv-sp2022-master against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwhq611%2Fece598pv-sp2022-master" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/whq611/ece598pv-sp2022-master on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/whq611/ece598pv-sp2022-master
[INFO] finished tweaking git repo https://github.com/whq611/ece598pv-sp2022-master
[INFO] tweaked toml for git repo https://github.com/whq611/ece598pv-sp2022-master written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/whq611/ece598pv-sp2022-master already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6249c02bf4bc7f79df2424f5849cce1d9ae9f9116ea53af7d6884a67f9a928a6
[INFO] running `Command { std: "docker" "start" "-a" "6249c02bf4bc7f79df2424f5849cce1d9ae9f9116ea53af7d6884a67f9a928a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6249c02bf4bc7f79df2424f5849cce1d9ae9f9116ea53af7d6884a67f9a928a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6249c02bf4bc7f79df2424f5849cce1d9ae9f9116ea53af7d6884a67f9a928a6", kill_on_drop: false }`
[INFO] [stdout] 6249c02bf4bc7f79df2424f5849cce1d9ae9f9116ea53af7d6884a67f9a928a6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dnon_local_definitions" "-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bc8e7ef96afcaec76cc9e1dde257b2c623005501341b9ff4d569ebb88ddbb2ce
[INFO] running `Command { std: "docker" "start" "-a" "bc8e7ef96afcaec76cc9e1dde257b2c623005501341b9ff4d569ebb88ddbb2ce", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.108
[INFO] [stderr]    Compiling proc-macro2 v1.0.32
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.82
[INFO] [stderr]    Compiling futures-core v0.3.18
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling autocfg v0.1.6
[INFO] [stderr]     Checking futures-io v0.3.18
[INFO] [stderr]     Checking pin-project-lite v0.2.7
[INFO] [stderr]     Checking cache-padded v1.1.1
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling serde v1.0.101
[INFO] [stderr]     Checking event-listener v2.5.1
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking concurrent-queue v1.2.2
[INFO] [stderr]     Checking fastrand v1.5.0
[INFO] [stderr]     Checking parking v2.0.0
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking waker-fn v1.1.0
[INFO] [stderr]     Checking once_cell v1.8.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling futures-task v0.3.18
[INFO] [stderr]     Checking futures-lite v1.12.0
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling futures-channel v0.3.18
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]     Checking async-task v4.0.3
[INFO] [stderr]     Checking polling v2.2.0
[INFO] [stderr]     Checking socket2 v0.4.2
[INFO] [stderr]     Checking async-channel v1.6.1
[INFO] [stderr]     Checking futures-sink v0.3.18
[INFO] [stderr]    Compiling signal-hook v0.3.10
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]     Checking matches v0.1.8
[INFO] [stderr]     Checking atomic-waker v1.0.0
[INFO] [stderr]    Compiling futures-util v0.3.18
[INFO] [stderr]     Checking smallvec v0.6.10
[INFO] [stderr]     Checking unicode-bidi v0.3.4
[INFO] [stderr]     Checking unicode-normalization v0.1.8
[INFO] [stderr]     Checking blocking v1.1.0
[INFO] [stderr]     Checking async-io v1.6.0
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.0
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]    Compiling cc v1.0.45
[INFO] [stderr]    Compiling bitflags v1.2.0
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking term_size v0.3.1
[INFO] [stderr]     Checking atty v0.2.13
[INFO] [stderr]     Checking async-lock v2.4.0
[INFO] [stderr]    Compiling bincode v1.2.0
[INFO] [stderr]     Checking unicode-width v0.1.6
[INFO] [stderr]     Checking percent-encoding v2.1.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.15
[INFO] [stderr]     Checking async-fs v1.5.0
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking idna v0.2.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking async-process v1.3.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking async-net v1.6.1
[INFO] [stderr]     Checking async-executor v1.4.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling ring v0.16.9
[INFO] [stderr]     Checking simple-mutex v1.1.5
[INFO] [stderr]     Checking url v2.1.0
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking chunked_transfer v1.4.0
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]     Checking untrusted v0.7.0
[INFO] [stderr]    Compiling ntest_proc_macro_helper v0.7.3
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking ascii v1.0.0
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking smol v1.2.5
[INFO] [stderr]     Checking crossbeam v0.8.1
[INFO] [stderr]     Checking stderrlog v0.5.1
[INFO] [stderr]     Checking async-dup v1.2.2
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]    Compiling hex-literal v0.3.4
[INFO] [stderr]     Checking hex v0.4.0
[INFO] [stderr]     Checking tiny_http v0.9.0
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling futures-macro v0.3.18
[INFO] [stderr]    Compiling ntest_test_cases v0.7.3
[INFO] [stderr]     Checking futures-executor v0.3.18
[INFO] [stderr]     Checking futures v0.3.18
[INFO] [stderr]     Checking serde_json v1.0.44
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]     Checking bitcoin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `EdDSAParameters`, `KeyPair`, `VerificationAlgorithm`
[INFO] [stdout]  --> src/types/transaction.rs:2:50
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters};
[INFO] [stdout]   |                                                  ^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::Rng`
[INFO] [stdout]  --> src/types/transaction.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::Rng;
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender`, `TryRecvError`, `unbounded`
[INFO] [stdout]  --> src/miner/worker.rs:1:26
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crossbeam::channel::{unbounded, Receiver, Sender, TryRecvError};
[INFO] [stdout]   |                          ^^^^^^^^^            ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `debug`
[INFO] [stdout]  --> src/miner/worker.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, info};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::hash::H256`
[INFO] [stdout]  --> src/network/worker.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::types::hash::H256;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]   --> src/blockchain/mod.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub fn insert(&mut self, block: &Block) {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes`
[INFO] [stdout]   --> src/types/address.rs:50:34
[INFO] [stdout]    |
[INFO] [stdout] 50 |     pub fn from_public_key_bytes(bytes: &[u8]) -> Address {
[INFO] [stdout]    |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]  --> src/types/merkle.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new<T>(data: &[T]) -> Self where T: Hashable, {
[INFO] [stdout]   |                   ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> src/types/merkle.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub fn proof(&self, index: usize) -> Vec<H256> {
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `root`
[INFO] [stdout]   --> src/types/merkle.rs:25:15
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |               ^^^^ help: if this is intentional, prefix it with an underscore: `_root`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `datum`
[INFO] [stdout]   --> src/types/merkle.rs:25:28
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_datum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proof`
[INFO] [stdout]   --> src/types/merkle.rs:25:42
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_proof`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]   --> src/types/merkle.rs:25:58
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leaf_size`
[INFO] [stdout]   --> src/types/merkle.rs:25:72
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool {
[INFO] [stdout]    |                                                                        ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/types/transaction.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn sign(t: &Transaction, key: &Ed25519KeyPair) -> Signature {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/types/transaction.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn sign(t: &Transaction, key: &Ed25519KeyPair) -> Signature {
[INFO] [stdout]    |                              ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t`
[INFO] [stdout]   --> src/types/transaction.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |               ^ help: if this is intentional, prefix it with an underscore: `_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `public_key`
[INFO] [stdout]   --> src/types/transaction.rs:19:32
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |                                ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `signature`
[INFO] [stdout]   --> src/types/transaction.rs:19:51
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn verify(t: &Transaction, public_key: &[u8], signature: &[u8]) -> bool {
[INFO] [stdout]    |                                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_signature`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `finished_block_chan` is never read
[INFO] [stdout]   --> src/miner/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Context {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     finished_block_chan: Sender<Block>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]  --> src/miner/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Worker {
[INFO] [stdout]   |            ------ field in this struct
[INFO] [stdout] 9 |     server: ServerHandle,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Worker` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]   --> src/network/worker.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Worker {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     server: ServerHandle,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Worker` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/api/mod.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Serialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_ApiResponse`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/address.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Address`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/address.rs:4:36
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                                    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Address`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/block.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Block`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/block.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Block`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types/hash.rs:13:25
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_H256`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types/hash.rs:13:36
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]    |                                    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_H256`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/transaction.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Transaction`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/transaction.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Transaction`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/transaction.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_SignedTransaction`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types/transaction.rs:9:21
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_SignedTransaction`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/network/message.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Message`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/network/message.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Message`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 13 previous errors; 22 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitcoin` (bin "bitcoin") due to 14 previous errors; 22 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "bc8e7ef96afcaec76cc9e1dde257b2c623005501341b9ff4d569ebb88ddbb2ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bc8e7ef96afcaec76cc9e1dde257b2c623005501341b9ff4d569ebb88ddbb2ce", kill_on_drop: false }`
[INFO] [stdout] bc8e7ef96afcaec76cc9e1dde257b2c623005501341b9ff4d569ebb88ddbb2ce
