[INFO] cloning repository https://github.com/btfinch/COS-ECE470-fa2022
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/btfinch/COS-ECE470-fa2022" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbtfinch%2FCOS-ECE470-fa2022", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbtfinch%2FCOS-ECE470-fa2022'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f9b0f39ed5baaa7e9ee8b6c4c71893a450f72c78
[INFO] checking btfinch/COS-ECE470-fa2022 against 8006091eb71ae7d9e9bccb66c6122c9d68af4466 for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbtfinch%2FCOS-ECE470-fa2022" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/btfinch/COS-ECE470-fa2022
[INFO] finished tweaking git repo https://github.com/btfinch/COS-ECE470-fa2022
[INFO] tweaked toml for git repo https://github.com/btfinch/COS-ECE470-fa2022 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/btfinch/COS-ECE470-fa2022 on toolchain 8006091eb71ae7d9e9bccb66c6122c9d68af4466
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/btfinch/COS-ECE470-fa2022 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" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded url v2.1.0
[INFO] [stderr]   Downloaded parking v2.0.0
[INFO] [stderr]   Downloaded cache-padded v1.1.1
[INFO] [stderr]   Downloaded unicode-normalization v0.1.8
[INFO] [stderr]   Downloaded smallvec v0.6.10
[INFO] [stderr]   Downloaded stderrlog v0.5.1
[INFO] [stderr]   Downloaded async-channel v1.6.1
[INFO] [stderr]   Downloaded event-listener v2.5.1
[INFO] [stderr]   Downloaded ntest_proc_macro_helper v0.7.3
[INFO] [stderr]   Downloaded atty v0.2.13
[INFO] [stderr]   Downloaded concurrent-queue v1.2.2
[INFO] [stderr]   Downloaded futures-macro v0.3.18
[INFO] [stderr]   Downloaded pin-project-lite v0.2.7
[INFO] [stderr]   Downloaded fastrand v1.5.0
[INFO] [stderr]   Downloaded atomic-waker v1.0.0
[INFO] [stderr]   Downloaded slab v0.4.2
[INFO] [stderr]   Downloaded ntest_test_cases v0.7.3
[INFO] [stderr]   Downloaded futures-sink v0.3.18
[INFO] [stderr]   Downloaded crossbeam v0.8.1
[INFO] [stderr]   Downloaded memoffset v0.6.4
[INFO] [stderr]   Downloaded tiny_http v0.9.0
[INFO] [stderr]   Downloaded hex v0.4.0
[INFO] [stderr]   Downloaded chunked_transfer v1.4.0
[INFO] [stderr]   Downloaded async-executor v1.4.1
[INFO] [stderr]   Downloaded bincode v1.2.0
[INFO] [stderr]   Downloaded futures-task v0.3.18
[INFO] [stderr]   Downloaded simple-mutex v1.1.5
[INFO] [stderr]   Downloaded termcolor v1.1.2
[INFO] [stderr]   Downloaded blocking v1.1.0
[INFO] [stderr]   Downloaded async-task v4.0.3
[INFO] [stderr]   Downloaded signal-hook-registry v1.4.0
[INFO] [stderr]   Downloaded async-fs v1.5.0
[INFO] [stderr]   Downloaded ntest v0.7.3
[INFO] [stderr]   Downloaded async-lock v2.4.0
[INFO] [stderr]   Downloaded crossbeam-queue v0.3.2
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.81
[INFO] [stderr]   Downloaded futures-core v0.3.18
[INFO] [stderr]   Downloaded instant v0.1.12
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.81
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.81
[INFO] [stderr]   Downloaded futures-channel v0.3.18
[INFO] [stderr]   Downloaded crossbeam-deque v0.8.1
[INFO] [stderr]   Downloaded term_size v0.3.1
[INFO] [stderr]   Downloaded autocfg v0.1.6
[INFO] [stderr]   Downloaded waker-fn v1.1.0
[INFO] [stderr]   Downloaded futures-io v0.3.18
[INFO] [stderr]   Downloaded async-process v1.3.0
[INFO] [stderr]   Downloaded unicode-width v0.1.6
[INFO] [stderr]   Downloaded async-dup v1.2.2
[INFO] [stderr]   Downloaded ascii v1.0.0
[INFO] [stderr]   Downloaded futures-lite v1.12.0
[INFO] [stderr]   Downloaded memchr v2.4.1
[INFO] [stderr]   Downloaded async-io v1.6.0
[INFO] [stderr]   Downloaded polling v2.2.0
[INFO] [stderr]   Downloaded async-net v1.6.1
[INFO] [stderr]   Downloaded proc-macro2 v1.0.32
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.81
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.15
[INFO] [stderr]   Downloaded ntest_timeout v0.7.3
[INFO] [stderr]   Downloaded futures v0.3.18
[INFO] [stderr]   Downloaded futures-executor v0.3.18
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.5
[INFO] [stderr]   Downloaded bitflags v1.2.0
[INFO] [stderr]   Downloaded num-traits v0.2.8
[INFO] [stderr]   Downloaded smol v1.2.5
[INFO] [stderr]   Downloaded rand_hc v0.3.1
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.5
[INFO] [stderr]   Downloaded socket2 v0.4.2
[INFO] [stderr]   Downloaded signal-hook v0.3.10
[INFO] [stderr]   Downloaded serde_derive v1.0.101
[INFO] [stderr]   Downloaded cc v1.0.73
[INFO] [stderr]   Downloaded wepoll-ffi v0.1.2
[INFO] [stderr]   Downloaded serde v1.0.101
[INFO] [stderr]   Downloaded js-sys v0.3.58
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.1
[INFO] [stderr]   Downloaded rand v0.8.4
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.81
[INFO] [stderr]   Downloaded futures-util v0.3.18
[INFO] [stderr]   Downloaded idna v0.2.0
[INFO] [stderr]   Downloaded syn v1.0.82
[INFO] [stderr]   Downloaded libc v0.2.108
[INFO] [stderr]   Downloaded web-sys v0.3.58
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5
[INFO] running `Command { std: "docker" "start" "1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5" "/opt/rustwide/cargo-home/bin/cargo" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5" "/opt/rustwide/cargo-home/bin/cargo" "+8006091eb71ae7d9e9bccb66c6122c9d68af4466" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.108
[INFO] [stderr]    Compiling proc-macro2 v1.0.32
[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]     Checking futures-io v0.3.18
[INFO] [stderr]    Compiling autocfg v0.1.6
[INFO] [stderr]     Checking pin-project-lite v0.2.7
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking event-listener v2.5.1
[INFO] [stderr]    Compiling serde v1.0.101
[INFO] [stderr]     Checking cache-padded v1.1.1
[INFO] [stderr]     Checking waker-fn v1.1.0
[INFO] [stderr]     Checking once_cell v1.8.0
[INFO] [stderr]     Checking parking v2.0.0
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking fastrand v1.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]     Checking concurrent-queue v1.2.2
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling futures-task v0.3.18
[INFO] [stderr]     Checking async-task v4.0.3
[INFO] [stderr]    Compiling futures-channel v0.3.18
[INFO] [stderr]     Checking futures-sink v0.3.18
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.5
[INFO] [stderr]    Compiling signal-hook v0.3.10
[INFO] [stderr]     Checking smallvec v0.6.10
[INFO] [stderr]     Checking async-channel v1.6.1
[INFO] [stderr]    Compiling futures-util v0.3.18
[INFO] [stderr]     Checking matches v0.1.8
[INFO] [stderr]     Checking atomic-waker v1.0.0
[INFO] [stderr]    Compiling bitflags v1.2.0
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]     Checking unicode-bidi v0.3.4
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]     Checking unicode-normalization v0.1.8
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]     Checking async-lock v2.4.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 futures-lite v1.12.0
[INFO] [stderr]     Checking simple-mutex v1.1.5
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling bincode v1.2.0
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.1
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]     Checking ascii v1.0.0
[INFO] [stderr]    Compiling ntest_proc_macro_helper v0.7.3
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking chunked_transfer v1.4.0
[INFO] [stderr]     Checking untrusted v0.7.1
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking async-dup v1.2.2
[INFO] [stderr]     Checking polling v2.2.0
[INFO] [stderr]     Checking socket2 v0.4.2
[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 term_size v0.3.1
[INFO] [stderr]     Checking atty v0.2.13
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]    Compiling hex-literal v0.3.4
[INFO] [stderr]     Checking hex v0.4.0
[INFO] [stderr]     Checking crossbeam v0.8.1
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking idna v0.2.0
[INFO] [stderr]     Checking blocking v1.1.0
[INFO] [stderr]     Checking async-io v1.6.0
[INFO] [stderr]     Checking async-executor v1.4.1
[INFO] [stderr]     Checking url v2.1.0
[INFO] [stderr]     Checking async-fs v1.5.0
[INFO] [stderr]     Checking async-net v1.6.1
[INFO] [stderr]     Checking async-process v1.3.0
[INFO] [stderr]     Checking smol v1.2.5
[INFO] [stderr]     Checking stderrlog v0.5.1
[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]    Compiling toml v0.5.8
[INFO] [stderr]     Checking serde_json v1.0.44
[INFO] [stderr]     Checking bitcoin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/api/mod.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Serialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/api/mod.rs:184:99
[INFO] [stdout]     |
[INFO] [stdout] 184 | ...                   let relevant_state = &*blockchain.state_map.get(&longest_chain_vector[(block as usize)]).unwrap();
[INFO] [stdout]     |                                                                                             ^              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 184 -                             let relevant_state = &*blockchain.state_map.get(&longest_chain_vector[(block as usize)]).unwrap();
[INFO] [stdout] 184 +                             let relevant_state = &*blockchain.state_map.get(&longest_chain_vector[block as usize]).unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miner::new`
[INFO] [stdout]  --> src/blockchain/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::miner::new;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `generate_random_block_1` and `self`
[INFO] [stdout]  --> src/blockchain/mod.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::types::block::{Block, generate_random_block_1, self};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ring::rand::generate`
[INFO] [stdout]  --> src/blockchain/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ring::rand::generate;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/address.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/address.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                                    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/types/block.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/block.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/block.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]  --> src/types/hash.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/types/hash.rs:112:17
[INFO] [stdout]     |
[INFO] [stdout] 112 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[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]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[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]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/types/transaction.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EdDSAParameters` and `self`
[INFO] [stdout]  --> src/types/transaction.rs:2:82
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters, self};
[INFO] [stdout]   |                                                                                  ^^^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:19:21
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/types/transaction.rs:98:43
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn generate_random_transaction_1() -> (SignedTransaction) {
[INFO] [stdout]    |                                           ^                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 98 - pub fn generate_random_transaction_1() -> (SignedTransaction) {
[INFO] [stdout] 98 + pub fn generate_random_transaction_1() -> SignedTransaction {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::address`
[INFO] [stdout]    --> src/types/transaction.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 | use crate::types::address;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/miner/mod.rs:73:16
[INFO] [stdout]    |
[INFO] [stdout] 73 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender`, `TryRecvError`, and `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::network::worker`
[INFO] [stdout]  --> src/miner/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::network::worker;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/miner/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::block`
[INFO] [stdout]   --> src/miner/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::types::block;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/miner/mod.rs:245:16
[INFO] [stdout]     |
[INFO] [stdout] 245 |             if ((new_block.hash() <= c_dify) & !btclone.is_empty()){ 
[INFO] [stdout]     |                ^                                                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 245 -             if ((new_block.hash() <= c_dify) & !btclone.is_empty()){ 
[INFO] [stdout] 245 +             if (new_block.hash() <= c_dify) & !btclone.is_empty() { 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/network/message.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/network/message.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/peer.rs:30:16
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/peer.rs:62:16
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/peer.rs:49:20
[INFO] [stdout]    |
[INFO] [stdout] 49 |     #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/server.rs:235:16
[INFO] [stdout]     |
[INFO] [stdout] 235 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/server.rs:239:16
[INFO] [stdout]     |
[INFO] [stdout] 239 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/server.rs:270:20
[INFO] [stdout]     |
[INFO] [stdout] 270 |     #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/worker.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/worker.rs:21:16
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/worker.rs:328:16
[INFO] [stdout]     |
[INFO] [stdout] 328 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/worker.rs:332:16
[INFO] [stdout]     |
[INFO] [stdout] 332 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/worker.rs:346:16
[INFO] [stdout]     |
[INFO] [stdout] 346 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/network/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender`, `TryRecvError`, and `unbounded`
[INFO] [stdout]  --> src/txgen/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/txgen/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::block::Block`
[INFO] [stdout]  --> src/txgen/worker.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::types::block::Block;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Blockchain`
[INFO] [stdout]  --> src/txgen/worker.rs:8:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::blockchain::{Mempool, Blockchain};
[INFO] [stdout]   |                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::worker`
[INFO] [stdout]  --> src/txgen/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::network::worker;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `smol::net::unix::SocketAddr`
[INFO] [stdout]  --> src/txgen/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use smol::net::unix::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/txgen/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::mem;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::block`
[INFO] [stdout]   --> src/txgen/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::types::block;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::block::Block`
[INFO] [stdout]   --> src/txgen/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::types::block::Block;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `generate_random_transaction_1`
[INFO] [stdout]   --> src/txgen/mod.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::types::transaction::{generate_random_transaction_1, sign};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hashable`
[INFO] [stdout]   --> src/txgen/mod.rs:21:32
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::types::hash::{H256, Hashable};
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `generate_block`
[INFO] [stdout]   --> src/txgen/mod.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::types::block::{generate_block};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EdDSAParameters`, `Signature`, `VerificationAlgorithm`, and `self`
[INFO] [stdout]   --> src/txgen/mod.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters, self};
[INFO] [stdout]    |                                       ^^^^^^^^^           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_rng`
[INFO] [stdout]   --> src/txgen/mod.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | use rand::{thread_rng,Rng};
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stdout] warning: unused import: `VerificationAlgorithm`
[INFO] [stdout]  --> src/types/transaction.rs:2:59
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters, self};
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain/mod.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let mut new_map = HashMap::new();
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain/mod.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let mut address_vec: Vec<Address> = Vec::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address_vec`
[INFO] [stdout]   --> src/blockchain/mod.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let mut address_vec: Vec<Address> = Vec::new();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address_vec`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `produced_public_key`
[INFO] [stdout]   --> src/blockchain/mod.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let produced_public_key = public_key_bytes.clone().as_ref().to_vec();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_produced_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain/mod.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 187 |         for i in 0..(self.tip_level+1){
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/types/address.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut big_hash_slice: &[u8] = big_hash.as_ref();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lev`
[INFO] [stdout]   --> src/types/block.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let lev: u64 = 0;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_lev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/types/merkle.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let mut ind = index;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leaf_size`
[INFO] [stdout]    --> src/types/merkle.rs:113:72
[INFO] [stdout]     |
[INFO] [stdout] 113 | 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: `pub2`
[INFO] [stdout]    --> src/types/transaction.rs:109:20
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let (address2, pub2, keys2) = generate_random_address();
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_pub2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keys2`
[INFO] [stdout]    --> src/types/transaction.rs:109:26
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let (address2, pub2, keys2) = generate_random_address();
[INFO] [stdout]     |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_keys2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:142:29
[INFO] [stdout]     |
[INFO] [stdout] 142 |                         let mut block_state: HashMap<Address, (u32, u32)>;
[INFO] [stdout]     |                             ----^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |             let mut temp_parent: H256;
[INFO] [stdout]     |                 ----^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:271:29
[INFO] [stdout]     |
[INFO] [stdout] 271 |                         let mut new_nonce: u32;
[INFO] [stdout]     |                             ----^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:294:25
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     let mut block_state: HashMap<Address, (u32, u32)>;
[INFO] [stdout]     |                         ----^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cont` is never read
[INFO] [stdout]    --> src/miner/mod.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |         let mut cont = 0;
[INFO] [stdout]     |                        ^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 139 |                     cont =0;
[INFO] [stdout]     |                     ------- `cont` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/network/worker.rs:321:17
[INFO] [stdout]     |
[INFO] [stdout] 321 |                 _ => unimplemented!(),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/network/worker.rs:321:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 Message::Ping(nonce) => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  79 |                 Message::Pong(nonce) => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  82 |                 Message::NewBlockHashes(nonce) => {
[INFO] [stdout]     |                 ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  98 |                 Message::GetBlocks(nonce) =>{
[INFO] [stdout]     |                 ------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 321 |                 _ => unimplemented!(),
[INFO] [stdout]     |                 ^ ...and 4 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling ntest_timeout v0.7.3
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/worker.rs:153:49
[INFO] [stdout]     |
[INFO] [stdout] 153 | ...                   let mut block_state: HashMap<Address, (u32, u32)> = b_chain.state_map.get(&parenty.clone()).unwrap().clone();
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/worker.rs:295:41
[INFO] [stdout]     |
[INFO] [stdout] 295 | ...                   let mut tip_state: HashMap<Address, (u32, u32)>;
[INFO] [stdout]     |                           ----^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cc`
[INFO] [stdout]    --> src/network/worker.rs:121:29
[INFO] [stdout]     |
[INFO] [stdout] 121 |                         let cc = contained.clone();
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_cc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cc`
[INFO] [stdout]    --> src/network/worker.rs:262:29
[INFO] [stdout]     |
[INFO] [stdout] 262 |                         let cc = contained.clone();
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_cc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `send_balance`
[INFO] [stdout]    --> src/network/worker.rs:302:65
[INFO] [stdout]     |
[INFO] [stdout] 302 | ...                   let (tip_account_nonce, send_balance) = *tip_state.get(&sender_clone).unwrap();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send_balance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `produced_public_key`
[INFO] [stdout]   --> src/txgen/mod.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let produced_public_key = public_key_bytes.clone().as_ref().to_vec();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_produced_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_num`
[INFO] [stdout]   --> src/txgen/mod.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut node_num: u8;
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/txgen/mod.rs:212:21
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 let mut tip_hash: H256;
[INFO] [stdout]     |                     ----^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/txgen/mod.rs:230:25
[INFO] [stdout]     |
[INFO] [stdout] 230 |                     let mut sender_nonce: u32;
[INFO] [stdout]     |                         ----^^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/txgen/mod.rs:231:25
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     let mut sender_balance: u32;
[INFO] [stdout]     |                         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/api/mod.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Serialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ApiResponse`
[INFO] [stdout] 26 | struct ApiResponse {
[INFO] [stdout]    |        ----------- `ApiResponse` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/types/address.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                         ^--------
[INFO] [stdout]   |                         |
[INFO] [stdout]   |                         `Serialize` is not local
[INFO] [stdout]   |                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Address`
[INFO] [stdout] 6 | pub struct Address(pub [u8; 20]);
[INFO] [stdout]   |            ------- `Address` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/types/address.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                                    ^----------
[INFO] [stdout]   |                                    |
[INFO] [stdout]   |                                    `Deserialize` is not local
[INFO] [stdout]   |                                    move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Address`
[INFO] [stdout] 6 | pub struct Address(pub [u8; 20]);
[INFO] [stdout]   |            ------- `Address` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hashArray` should have a snake case name
[INFO] [stdout]   --> src/types/address.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut hashArray: [u8; 20] = [0; 20];
[INFO] [stdout]    |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_array`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:8:10
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Block`
[INFO] [stdout] ...
[INFO] [stdout] 12 | pub struct Block {
[INFO] [stdout]    |            ----- `Block` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:8:21
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Block`
[INFO] [stdout] ...
[INFO] [stdout] 12 | pub struct Block {
[INFO] [stdout]    |            ----- `Block` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Header`
[INFO] [stdout] 18 | pub struct Header{
[INFO] [stdout]    |            ------ `Header` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Header`
[INFO] [stdout] 18 | pub struct Header{
[INFO] [stdout]    |            ------ `Header` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Content`
[INFO] [stdout] 29 | pub struct Content(pub Vec<SignedTransaction>);
[INFO] [stdout]    |            ------- `Content` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Content`
[INFO] [stdout] 29 | pub struct Content(pub Vec<SignedTransaction>);
[INFO] [stdout]    |            ------- `Content` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[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]    |                         `Serialize` is not local
[INFO] [stdout]    |                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_H256`
[INFO] [stdout] 14 | pub struct H256([u8; 32]); // big endian u256
[INFO] [stdout]    |            ---- `H256` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[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]    |                                    `Deserialize` is not local
[INFO] [stdout]    |                                    move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_H256`
[INFO] [stdout] 14 | pub struct H256([u8; 32]); // big endian u256
[INFO] [stdout]    |            ---- `H256` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hash_H256` should have a snake case name
[INFO] [stdout]   --> src/types/merkle.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 |             let hash_H256 = H256::from(both_hash);
[INFO] [stdout]    |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_h256`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hash_H256` should have a snake case name
[INFO] [stdout]    --> src/types/merkle.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |             let hash_H256 = H256::from(both_hash);
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_h256`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hash_H256` should have a snake case name
[INFO] [stdout]    --> src/types/merkle.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let hash_H256 = H256::from(both_hash);
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_h256`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Transaction`
[INFO] [stdout] 11 | pub struct Transaction {
[INFO] [stdout]    |            ----------- `Transaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Transaction`
[INFO] [stdout] 11 | pub struct Transaction {
[INFO] [stdout]    |            ----------- `Transaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_SignedTransaction`
[INFO] [stdout] 20 | pub struct SignedTransaction {
[INFO] [stdout]    |            ----------------- `SignedTransaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:19:21
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SignedTransaction`
[INFO] [stdout] 20 | pub struct SignedTransaction {
[INFO] [stdout]    |            ----------------- `SignedTransaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/network/message.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Message`
[INFO] [stdout] 6 | pub enum Message {
[INFO] [stdout]   |          ------- `Message` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/network/message.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Message`
[INFO] [stdout] 6 | pub enum Message {
[INFO] [stdout]   |          ------- `Message` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking ntest v0.7.3
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/api/mod.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Serialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around index expression
[INFO] [stdout]    --> src/api/mod.rs:184:99
[INFO] [stdout]     |
[INFO] [stdout] 184 | ...                   let relevant_state = &*blockchain.state_map.get(&longest_chain_vector[(block as usize)]).unwrap();
[INFO] [stdout]     |                                                                                             ^              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 184 -                             let relevant_state = &*blockchain.state_map.get(&longest_chain_vector[(block as usize)]).unwrap();
[INFO] [stdout] 184 +                             let relevant_state = &*blockchain.state_map.get(&longest_chain_vector[block as usize]).unwrap();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::miner::new`
[INFO] [stdout]  --> src/blockchain/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::miner::new;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `generate_random_block_1` and `self`
[INFO] [stdout]  --> src/blockchain/mod.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::types::block::{Block, generate_random_block_1, self};
[INFO] [stdout]   |                                  ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ring::rand::generate`
[INFO] [stdout]  --> src/blockchain/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ring::rand::generate;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/address.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/address.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                                    ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/types/block.rs:97:17
[INFO] [stdout]    |
[INFO] [stdout] 97 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/block.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/types/block.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/block.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]  --> src/types/hash.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/types/hash.rs:112:17
[INFO] [stdout]     |
[INFO] [stdout] 112 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[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]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[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]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/types/transaction.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 | #[cfg(any(test, test_utilities))]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EdDSAParameters` and `self`
[INFO] [stdout]  --> src/types/transaction.rs:2:82
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters, self};
[INFO] [stdout]   |                                                                                  ^^^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]   --> src/types/transaction.rs:19:21
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]    = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]    = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/types/transaction.rs:98:43
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub fn generate_random_transaction_1() -> (SignedTransaction) {
[INFO] [stdout]    |                                           ^                 ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 98 - pub fn generate_random_transaction_1() -> (SignedTransaction) {
[INFO] [stdout] 98 + pub fn generate_random_transaction_1() -> SignedTransaction {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::address`
[INFO] [stdout]    --> src/types/transaction.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 120 | use crate::types::address;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/miner/mod.rs:73:16
[INFO] [stdout]    |
[INFO] [stdout] 73 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender`, `TryRecvError`, and `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::network::worker`
[INFO] [stdout]  --> src/miner/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::network::worker;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/miner/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::mem;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::block`
[INFO] [stdout]   --> src/miner/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::types::block;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/miner/mod.rs:245:16
[INFO] [stdout]     |
[INFO] [stdout] 245 |             if ((new_block.hash() <= c_dify) & !btclone.is_empty()){ 
[INFO] [stdout]     |                ^                                                  ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 245 -             if ((new_block.hash() <= c_dify) & !btclone.is_empty()){ 
[INFO] [stdout] 245 +             if (new_block.hash() <= c_dify) & !btclone.is_empty() { 
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/network/message.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]  --> src/network/message.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `default` and `test-utilities`
[INFO] [stdout]   = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/peer.rs:30:16
[INFO] [stdout]    |
[INFO] [stdout] 30 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/peer.rs:62:16
[INFO] [stdout]    |
[INFO] [stdout] 62 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/peer.rs:49:20
[INFO] [stdout]    |
[INFO] [stdout] 49 |     #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/server.rs:235:16
[INFO] [stdout]     |
[INFO] [stdout] 235 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/server.rs:239:16
[INFO] [stdout]     |
[INFO] [stdout] 239 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/server.rs:270:20
[INFO] [stdout]     |
[INFO] [stdout] 270 |     #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/worker.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]   --> src/network/worker.rs:21:16
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider using a Cargo feature instead
[INFO] [stdout]    = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]             [lints.rust]
[INFO] [stdout]             unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]    = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/worker.rs:328:16
[INFO] [stdout]     |
[INFO] [stdout] 328 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/worker.rs:332:16
[INFO] [stdout]     |
[INFO] [stdout] 332 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities`
[INFO] [stdout]    --> src/network/worker.rs:346:16
[INFO] [stdout]     |
[INFO] [stdout] 346 | #[cfg(any(test,test_utilities))]
[INFO] [stdout]     |                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Add`
[INFO] [stdout]  --> src/network/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::ops::Add;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sender`, `TryRecvError`, and `unbounded`
[INFO] [stdout]  --> src/txgen/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/txgen/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::block::Block`
[INFO] [stdout]  --> src/txgen/worker.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::types::block::Block;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Blockchain`
[INFO] [stdout]  --> src/txgen/worker.rs:8:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::blockchain::{Mempool, Blockchain};
[INFO] [stdout]   |                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::worker`
[INFO] [stdout]  --> src/txgen/worker.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::network::worker;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `smol::net::unix::SocketAddr`
[INFO] [stdout]  --> src/txgen/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use smol::net::unix::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem`
[INFO] [stdout]  --> src/txgen/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::mem;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::block`
[INFO] [stdout]   --> src/txgen/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::types::block;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::block::Block`
[INFO] [stdout]   --> src/txgen/mod.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::types::block::Block;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `generate_random_transaction_1`
[INFO] [stdout]   --> src/txgen/mod.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::types::transaction::{generate_random_transaction_1, sign};
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hashable`
[INFO] [stdout]   --> src/txgen/mod.rs:21:32
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::types::hash::{H256, Hashable};
[INFO] [stdout]    |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `generate_block`
[INFO] [stdout]   --> src/txgen/mod.rs:23:27
[INFO] [stdout]    |
[INFO] [stdout] 23 | use crate::types::block::{generate_block};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EdDSAParameters`, `Signature`, `VerificationAlgorithm`, and `self`
[INFO] [stdout]   --> src/txgen/mod.rs:25:39
[INFO] [stdout]    |
[INFO] [stdout] 25 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters, self};
[INFO] [stdout]    |                                       ^^^^^^^^^           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thread_rng`
[INFO] [stdout]   --> src/txgen/mod.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | use rand::{thread_rng,Rng};
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VerificationAlgorithm`
[INFO] [stdout]  --> src/types/transaction.rs:2:59
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters, self};
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain/mod.rs:32:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let mut new_map = HashMap::new();
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/blockchain/mod.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let mut address_vec: Vec<Address> = Vec::new();
[INFO] [stdout]    |             ----^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `address_vec`
[INFO] [stdout]   --> src/blockchain/mod.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |         let mut address_vec: Vec<Address> = Vec::new();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address_vec`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `produced_public_key`
[INFO] [stdout]   --> src/blockchain/mod.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let produced_public_key = public_key_bytes.clone().as_ref().to_vec();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_produced_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/blockchain/mod.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 187 |         for i in 0..(self.tip_level+1){
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/types/address.rs:61:13
[INFO] [stdout]    |
[INFO] [stdout] 61 |         let mut big_hash_slice: &[u8] = big_hash.as_ref();
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lev`
[INFO] [stdout]   --> src/types/block.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let lev: u64 = 0;
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_lev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lev`
[INFO] [stdout]    --> src/types/block.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let lev: u64 = 0;
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_lev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/types/merkle.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 |     let mut ind = index;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leaf_size`
[INFO] [stdout]    --> src/types/merkle.rs:113:72
[INFO] [stdout]     |
[INFO] [stdout] 113 | 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: `pub2`
[INFO] [stdout]    --> src/types/transaction.rs:109:20
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let (address2, pub2, keys2) = generate_random_address();
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_pub2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `keys2`
[INFO] [stdout]    --> src/types/transaction.rs:109:26
[INFO] [stdout]     |
[INFO] [stdout] 109 |     let (address2, pub2, keys2) = generate_random_address();
[INFO] [stdout]     |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_keys2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:142:29
[INFO] [stdout]     |
[INFO] [stdout] 142 |                         let mut block_state: HashMap<Address, (u32, u32)>;
[INFO] [stdout]     |                             ----^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:256:17
[INFO] [stdout]     |
[INFO] [stdout] 256 |             let mut temp_parent: H256;
[INFO] [stdout]     |                 ----^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:271:29
[INFO] [stdout]     |
[INFO] [stdout] 271 |                         let mut new_nonce: u32;
[INFO] [stdout]     |                             ----^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/miner/mod.rs:294:25
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     let mut block_state: HashMap<Address, (u32, u32)>;
[INFO] [stdout]     |                         ----^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cont` is never read
[INFO] [stdout]    --> src/miner/mod.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 |         let mut cont = 0;
[INFO] [stdout]     |                        ^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 139 |                     cont =0;
[INFO] [stdout]     |                     ------- `cont` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/network/worker.rs:321:17
[INFO] [stdout]     |
[INFO] [stdout] 321 |                 _ => unimplemented!(),
[INFO] [stdout]     |                 ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/network/worker.rs:321:17
[INFO] [stdout]     |
[INFO] [stdout]  75 |                 Message::Ping(nonce) => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  79 |                 Message::Pong(nonce) => {
[INFO] [stdout]     |                 -------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  82 |                 Message::NewBlockHashes(nonce) => {
[INFO] [stdout]     |                 ------------------------------ matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  98 |                 Message::GetBlocks(nonce) =>{
[INFO] [stdout]     |                 ------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 321 |                 _ => unimplemented!(),
[INFO] [stdout]     |                 ^ ...and 4 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/worker.rs:153:49
[INFO] [stdout]     |
[INFO] [stdout] 153 | ...                   let mut block_state: HashMap<Address, (u32, u32)> = b_chain.state_map.get(&parenty.clone()).unwrap().clone();
[INFO] [stdout]     |                           ----^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/worker.rs:295:41
[INFO] [stdout]     |
[INFO] [stdout] 295 | ...                   let mut tip_state: HashMap<Address, (u32, u32)>;
[INFO] [stdout]     |                           ----^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cc`
[INFO] [stdout]    --> src/network/worker.rs:121:29
[INFO] [stdout]     |
[INFO] [stdout] 121 |                         let cc = contained.clone();
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_cc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cc`
[INFO] [stdout]    --> src/network/worker.rs:262:29
[INFO] [stdout]     |
[INFO] [stdout] 262 |                         let cc = contained.clone();
[INFO] [stdout]     |                             ^^ help: if this is intentional, prefix it with an underscore: `_cc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `send_balance`
[INFO] [stdout]    --> src/network/worker.rs:302:65
[INFO] [stdout]     |
[INFO] [stdout] 302 | ...                   let (tip_account_nonce, send_balance) = *tip_state.get(&sender_clone).unwrap();
[INFO] [stdout]     |                                               ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_send_balance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `longest_chain_hashes` is never read
[INFO] [stdout]    --> src/network/worker.rs:356:47
[INFO] [stdout]     |
[INFO] [stdout] 356 |     let mut longest_chain_hashes: Vec<H256> = Vec::new();
[INFO] [stdout]     |                                               ^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] 357 |     {
[INFO] [stdout] 358 |         longest_chain_hashes = wrapped_bc.lock().unwrap().all_blocks_in_longest_chain(); // probably could subsitute this with the ...
[INFO] [stdout]     |         -------------------- `longest_chain_hashes` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `produced_public_key`
[INFO] [stdout]   --> src/txgen/mod.rs:72:13
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let produced_public_key = public_key_bytes.clone().as_ref().to_vec();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_produced_public_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_num`
[INFO] [stdout]   --> src/txgen/mod.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut node_num: u8;
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/txgen/mod.rs:212:21
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 let mut tip_hash: H256;
[INFO] [stdout]     |                     ----^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/txgen/mod.rs:230:25
[INFO] [stdout]     |
[INFO] [stdout] 230 |                     let mut sender_nonce: u32;
[INFO] [stdout]     |                         ----^^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/txgen/mod.rs:231:25
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     let mut sender_balance: u32;
[INFO] [stdout]     |                         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/api/mod.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | #[derive(Serialize)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ApiResponse`
[INFO] [stdout] 26 | struct ApiResponse {
[INFO] [stdout]    |        ----------- `ApiResponse` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/types/address.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                         ^--------
[INFO] [stdout]   |                         |
[INFO] [stdout]   |                         `Serialize` is not local
[INFO] [stdout]   |                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Address`
[INFO] [stdout] 6 | pub struct Address(pub [u8; 20]);
[INFO] [stdout]   |            ------- `Address` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/types/address.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)]
[INFO] [stdout]   |                                    ^----------
[INFO] [stdout]   |                                    |
[INFO] [stdout]   |                                    `Deserialize` is not local
[INFO] [stdout]   |                                    move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Address`
[INFO] [stdout] 6 | pub struct Address(pub [u8; 20]);
[INFO] [stdout]   |            ------- `Address` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hashArray` should have a snake case name
[INFO] [stdout]   --> src/types/address.rs:62:17
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut hashArray: [u8; 20] = [0; 20];
[INFO] [stdout]    |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_array`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:8:10
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Block`
[INFO] [stdout] ...
[INFO] [stdout] 12 | pub struct Block {
[INFO] [stdout]    |            ----- `Block` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:8:21
[INFO] [stdout]    |
[INFO] [stdout]  8 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Block`
[INFO] [stdout] ...
[INFO] [stdout] 12 | pub struct Block {
[INFO] [stdout]    |            ----- `Block` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Header`
[INFO] [stdout] 18 | pub struct Header{
[INFO] [stdout]    |            ------ `Header` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:17:35
[INFO] [stdout]    |
[INFO] [stdout] 17 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Header`
[INFO] [stdout] 18 | pub struct Header{
[INFO] [stdout]    |            ------ `Header` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                        ^--------
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Serialize` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Content`
[INFO] [stdout] 29 | pub struct Content(pub Vec<SignedTransaction>);
[INFO] [stdout]    |            ------- `Content` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/block.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Debug, Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                                   ^----------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Deserialize` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Content`
[INFO] [stdout] 29 | pub struct Content(pub Vec<SignedTransaction>);
[INFO] [stdout]    |            ------- `Content` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[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]    |                         `Serialize` is not local
[INFO] [stdout]    |                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_H256`
[INFO] [stdout] 14 | pub struct H256([u8; 32]); // big endian u256
[INFO] [stdout]    |            ---- `H256` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[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]    |                                    `Deserialize` is not local
[INFO] [stdout]    |                                    move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_H256`
[INFO] [stdout] 14 | pub struct H256([u8; 32]); // big endian u256
[INFO] [stdout]    |            ---- `H256` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hash_H256` should have a snake case name
[INFO] [stdout]   --> src/types/merkle.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 |             let hash_H256 = H256::from(both_hash);
[INFO] [stdout]    |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_h256`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hash_H256` should have a snake case name
[INFO] [stdout]    --> src/types/merkle.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |             let hash_H256 = H256::from(both_hash);
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_h256`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `hash_H256` should have a snake case name
[INFO] [stdout]    --> src/types/merkle.rs:129:17
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let hash_H256 = H256::from(both_hash);
[INFO] [stdout]     |                 ^^^^^^^^^ help: convert the identifier to snake case: `hash_h256`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Transaction`
[INFO] [stdout] 11 | pub struct Transaction {
[INFO] [stdout]    |            ----------- `Transaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Transaction`
[INFO] [stdout] 11 | pub struct Transaction {
[INFO] [stdout]    |            ----------- `Transaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |          ^--------
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Serialize` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_SignedTransaction`
[INFO] [stdout] 20 | pub struct SignedTransaction {
[INFO] [stdout]    |            ----------------- `SignedTransaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/types/transaction.rs:19:21
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Serialize, Deserialize, Debug, Default, Clone)]
[INFO] [stdout]    |                     ^----------
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     `Deserialize` is not local
[INFO] [stdout]    |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_SignedTransaction`
[INFO] [stdout] 20 | pub struct SignedTransaction {
[INFO] [stdout]    |            ----------------- `SignedTransaction` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/network/message.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Serialize` is not local
[INFO] [stdout]   |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Message`
[INFO] [stdout] 6 | pub enum Message {
[INFO] [stdout]   |          ------- `Message` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/network/message.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Serialize, Deserialize, Debug, Clone)]
[INFO] [stdout]   |                     ^----------
[INFO] [stdout]   |                     |
[INFO] [stdout]   |                     `Deserialize` is not local
[INFO] [stdout]   |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Message`
[INFO] [stdout] 6 | pub enum Message {
[INFO] [stdout]   |          ------- `Message` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `hex`
[INFO] [stderr]  --> Cargo.toml:6:1
[INFO] [stderr]   |
[INFO] [stderr] 6 | hex = "0.4"
[INFO] [stderr]   | ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `hex`
[INFO] [stderr] warning: `bitcoin` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.43s
[INFO] running `Command { std: "docker" "inspect" "1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5", kill_on_drop: false }`
[INFO] [stdout] 1949c6e828b7929df550b7c0f9e7b191f89c405ff42672d13f6a6bed71c9c1e5
