[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 28b6e691688c15cef4c60d9044274e7b84397870 for pr-162986
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbtfinch%2FCOS-ECE470-fa2022" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-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-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/btfinch/COS-ECE470-fa2022 on toolchain 28b6e691688c15cef4c60d9044274e7b84397870
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+28b6e691688c15cef4c60d9044274e7b84397870" "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" "+28b6e691688c15cef4c60d9044274e7b84397870" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded matches v0.1.8
[INFO] [stderr]   Downloaded url v2.1.0
[INFO] [stderr]   Downloaded smallvec v0.6.10
[INFO] [stderr]   Downloaded unicode-normalization v0.1.8
[INFO] [stderr]   Downloaded waker-fn v1.1.0
[INFO] [stderr]   Downloaded autocfg v0.1.6
[INFO] [stderr]   Downloaded unicode-bidi v0.3.4
[INFO] [stderr]   Downloaded tiny_http v0.9.0
[INFO] [stderr]   Downloaded fastrand v1.5.0
[INFO] [stderr]   Downloaded chunked_transfer v1.4.0
[INFO] [stderr]   Downloaded async-channel v1.6.1
[INFO] [stderr]   Downloaded term_size v0.3.1
[INFO] [stderr]   Downloaded atty v0.2.13
[INFO] [stderr]   Downloaded atomic-waker v1.0.0
[INFO] [stderr]   Downloaded event-listener v2.5.1
[INFO] [stderr]   Downloaded cache-padded v1.1.1
[INFO] [stderr]   Downloaded async-executor v1.4.1
[INFO] [stderr]   Downloaded hex-literal v0.3.4
[INFO] [stderr]   Downloaded futures-io v0.3.18
[INFO] [stderr]   Downloaded async-process v1.3.0
[INFO] [stderr]   Downloaded async-net v1.6.1
[INFO] [stderr]   Downloaded quote v1.0.2
[INFO] [stderr]   Downloaded futures-core v0.3.18
[INFO] [stderr]   Downloaded concurrent-queue v1.2.2
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.81
[INFO] [stderr]   Downloaded rand_hc v0.3.1
[INFO] [stderr]   Downloaded ntest v0.7.3
[INFO] [stderr]   Downloaded pin-project-lite v0.2.7
[INFO] [stderr]   Downloaded parking v2.0.0
[INFO] [stderr]   Downloaded ascii v1.0.0
[INFO] [stderr]   Downloaded async-io v1.6.0
[INFO] [stderr]   Downloaded async-fs v1.5.0
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.81
[INFO] [stderr]   Downloaded futures-sink v0.3.18
[INFO] [stderr]   Downloaded byteorder v1.3.2
[INFO] [stderr]   Downloaded smol v1.2.5
[INFO] [stderr]   Downloaded slab v0.4.2
[INFO] [stderr]   Downloaded async-task v4.0.3
[INFO] [stderr]   Downloaded async-lock v2.4.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.81
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.15
[INFO] [stderr]   Downloaded ntest_timeout v0.7.3
[INFO] [stderr]   Downloaded ntest_proc_macro_helper v0.7.3
[INFO] [stderr]   Downloaded ntest_test_cases v0.7.3
[INFO] [stderr]   Downloaded hex v0.4.0
[INFO] [stderr]   Downloaded futures-task v0.3.18
[INFO] [stderr]   Downloaded futures-executor v0.3.18
[INFO] [stderr]   Downloaded bitflags v1.2.0
[INFO] [stderr]   Downloaded num-integer v0.1.41
[INFO] [stderr]   Downloaded stderrlog v0.5.1
[INFO] [stderr]   Downloaded futures-lite v1.12.0
[INFO] [stderr]   Downloaded signal-hook v0.3.10
[INFO] [stderr]   Downloaded socket2 v0.4.2
[INFO] [stderr]   Downloaded futures v0.3.18
[INFO] [stderr]   Downloaded futures-channel v0.3.18
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.5
[INFO] [stderr]   Downloaded ryu v1.0.2
[INFO] [stderr]   Downloaded idna v0.2.0
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.5
[INFO] [stderr]   Downloaded bincode v1.2.0
[INFO] [stderr]   Downloaded simple-mutex v1.1.5
[INFO] [stderr]   Downloaded num-traits v0.2.8
[INFO] [stderr]   Downloaded once_cell v1.8.0
[INFO] [stderr]   Downloaded blocking v1.1.0
[INFO] [stderr]   Downloaded wepoll-ffi v0.1.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.32
[INFO] [stderr]   Downloaded toml v0.5.8
[INFO] [stderr]   Downloaded crossbeam-queue v0.3.2
[INFO] [stderr]   Downloaded memoffset v0.6.4
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.1
[INFO] [stderr]   Downloaded unicode-width v0.1.6
[INFO] [stderr]   Downloaded serde_json v1.0.44
[INFO] [stderr]   Downloaded serde v1.0.101
[INFO] [stderr]   Downloaded serde_derive v1.0.101
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.81
[INFO] [stderr]   Downloaded rand v0.8.4
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.81
[INFO] [stderr]   Downloaded js-sys v0.3.58
[INFO] [stderr]   Downloaded async-dup v1.2.2
[INFO] [stderr]   Downloaded syn v1.0.82
[INFO] [stderr]   Downloaded futures-util v0.3.18
[INFO] [stderr]   Downloaded web-sys v0.3.58
[INFO] [stderr]   Downloaded futures-macro v0.3.18
[INFO] [stderr]   Downloaded crossbeam v0.8.1
[INFO] [stderr]   Downloaded unicode-xid v0.2.0
[INFO] [stderr]   Downloaded itoa v0.4.4
[INFO] [stderr]   Downloaded polling v2.2.0
[INFO] [stderr]   Downloaded libc v0.2.108
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] 1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606
[INFO] running `Command { std: "docker" "start" "1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606", 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" "1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606" "/opt/rustwide/cargo-home/bin/cargo" "+28b6e691688c15cef4c60d9044274e7b84397870" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606", 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" "1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606" "/opt/rustwide/cargo-home/bin/cargo" "+28b6e691688c15cef4c60d9044274e7b84397870" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.108
[INFO] [stderr]     Checking cfg-if v1.0.0
[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 lazy_static v1.4.0
[INFO] [stderr]     Checking parking v2.0.0
[INFO] [stderr]     Checking concurrent-queue v1.2.2
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking fastrand v1.5.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling futures-channel v0.3.18
[INFO] [stderr]    Compiling futures-task v0.3.18
[INFO] [stderr]     Checking async-task v4.0.3
[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]    Compiling futures-util v0.3.18
[INFO] [stderr]     Checking matches v0.1.8
[INFO] [stderr]     Checking atomic-waker v1.0.0
[INFO] [stderr]     Checking futures-sink v0.3.18
[INFO] [stderr]     Checking async-channel v1.6.1
[INFO] [stderr]     Checking unicode-bidi v0.3.4
[INFO] [stderr]    Compiling bitflags v1.2.0
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling num-integer v0.1.41
[INFO] [stderr]    Compiling crossbeam-queue v0.3.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]    Compiling bincode v1.2.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 crossbeam-channel v0.5.1
[INFO] [stderr]     Checking unicode-normalization v0.1.8
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking simple-mutex v1.1.5
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]     Checking ascii v1.0.0
[INFO] [stderr]     Checking strsim v0.8.0
[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 crossbeam-deque v0.8.1
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]    Compiling ntest_proc_macro_helper v0.7.3
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking futures-lite v1.12.0
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking termcolor v1.1.2
[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]    Compiling hex-literal v0.3.4
[INFO] [stderr]     Checking hex v0.4.0
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking crossbeam v0.8.1
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking chrono v0.4.19
[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 async-fs v1.5.0
[INFO] [stderr]     Checking idna v0.2.0
[INFO] [stderr]     Checking async-net v1.6.1
[INFO] [stderr]     Checking async-process v1.3.0
[INFO] [stderr]     Checking stderrlog v0.5.1
[INFO] [stderr]     Checking smol v1.2.5
[INFO] [stderr]     Checking url v2.1.0
[INFO] [stderr]     Checking tiny_http v0.9.0
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling futures-macro v0.3.18
[INFO] [stderr]    Compiling ntest_test_cases v0.7.3
[INFO] [stderr]     Checking futures-executor v0.3.18
[INFO] [stderr]     Checking futures v0.3.18
[INFO] [stderr]     Checking serde_json v1.0.44
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]     Checking bitcoin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: 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] [stderr]    Compiling proc-macro-crate v0.1.5
[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] [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]    Compiling ntest_timeout v0.7.3
[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 26.23s
[INFO] running `Command { std: "docker" "inspect" "1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606", kill_on_drop: false }`
[INFO] [stdout] 1c1ca5b062e02af3bd7b9c0b1e2e59819b9dbc0186420a09b3c283973ab79606
