[INFO] cloning repository https://github.com/yl2280/ece598pv [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yl2280/ece598pv" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyl2280%2Fece598pv", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyl2280%2Fece598pv'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7c0488d9de84c00dda9261efcd0e8f0edc9fe099 [INFO] testing yl2280/ece598pv against master#b03b3a7ec92682be2917540b679478d41c95a30c for pr-137122-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyl2280%2Fece598pv" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/yl2280/ece598pv [INFO] finished tweaking git repo https://github.com/yl2280/ece598pv [INFO] tweaked toml for git repo https://github.com/yl2280/ece598pv written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/yl2280/ece598pv on toolchain b03b3a7ec92682be2917540b679478d41c95a30c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b03b3a7ec92682be2917540b679478d41c95a30c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/yl2280/ece598pv 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" "+b03b3a7ec92682be2917540b679478d41c95a30c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded stderrlog v0.4.1 [INFO] [stderr] Downloaded wasm-bindgen-backend v0.2.51 [INFO] [stderr] Downloaded wasm-bindgen-webidl v0.2.51 [INFO] [stderr] Downloaded wasm-bindgen-shared v0.2.51 [INFO] [stderr] Downloaded bincode v1.2.0 [INFO] [stderr] Downloaded js-sys v0.3.28 [INFO] [stderr] Downloaded wasm-bindgen-macro-support v0.2.51 [INFO] [stderr] Downloaded wasm-bindgen-macro v0.2.51 [INFO] [stderr] Downloaded wasm-bindgen v0.2.51 [INFO] [stderr] Downloaded web-sys v0.3.28 [INFO] [stderr] Downloaded ring v0.16.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+b03b3a7ec92682be2917540b679478d41c95a30c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 58496864b3b2c1bb1df45cad7c42a90527011a2142d6f0d1b1d273a1be957d78 [INFO] running `Command { std: "docker" "start" "-a" "58496864b3b2c1bb1df45cad7c42a90527011a2142d6f0d1b1d273a1be957d78", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "58496864b3b2c1bb1df45cad7c42a90527011a2142d6f0d1b1d273a1be957d78", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "58496864b3b2c1bb1df45cad7c42a90527011a2142d6f0d1b1d273a1be957d78", kill_on_drop: false }` [INFO] [stdout] 58496864b3b2c1bb1df45cad7c42a90527011a2142d6f0d1b1d273a1be957d78 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+b03b3a7ec92682be2917540b679478d41c95a30c" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 199ee99660d471c27cda8e4d9f92bb914ff9625dad4cccf156d5b34e1be7229f [INFO] running `Command { std: "docker" "start" "-a" "199ee99660d471c27cda8e4d9f92bb914ff9625dad4cccf156d5b34e1be7229f", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Compiling libc v0.2.62 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling proc-macro2 v1.0.5 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling smallvec v0.6.10 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling unicode-normalization v0.1.8 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling serde v1.0.101 [INFO] [stderr] Compiling time v0.1.42 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Compiling bitflags v1.2.0 [INFO] [stderr] Compiling ryu v1.0.2 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling crossbeam-epoch v0.7.2 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling chrono v0.4.9 [INFO] [stderr] Compiling term_size v0.3.1 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling bincode v1.2.0 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling unicode-width v0.1.6 [INFO] [stderr] Compiling percent-encoding v1.0.1 [INFO] [stderr] Compiling mio v0.6.19 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling crossbeam-deque v0.7.1 [INFO] [stderr] Compiling ring v0.16.9 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling atty v0.2.13 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling crossbeam-channel v0.3.9 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling thread_local v0.3.6 [INFO] [stderr] Compiling termcolor v0.3.6 [INFO] [stderr] Compiling untrusted v0.7.0 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling lazycell v1.2.1 [INFO] [stderr] Compiling ascii v0.8.7 [INFO] [stderr] Compiling chunked_transfer v0.3.1 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling stderrlog v0.4.1 [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling url v2.1.0 [INFO] [stderr] Compiling mio-extras v2.0.5 [INFO] [stderr] Compiling tiny_http v0.6.2 [INFO] [stderr] Compiling crossbeam v0.7.2 [INFO] [stderr] Compiling hex v0.4.0 [INFO] [stderr] Compiling serde_derive v1.0.101 [INFO] [stderr] Compiling proc-macro-hack v0.5.11 [INFO] [stderr] Compiling hex-literal-impl v0.2.1 [INFO] [stderr] Compiling hex-literal v0.2.1 [INFO] [stderr] Compiling serde_json v1.0.44 [INFO] [stderr] Compiling bitcoin v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/api/mod.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | #[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] = help: 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: see 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: unexpected `cfg` condition name: `test_utilities` [INFO] [stdout] --> src/block.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | #[cfg(any(test, test_utilities))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deserialize` [INFO] [stdout] --> src/block.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{serialize, deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::prelude::*` [INFO] [stdout] --> src/block.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration`, `SystemTime`, and `UNIX_EPOCH` [INFO] [stdout] --> src/block.rs:9:17 [INFO] [stdout] | [INFO] [stdout] 9 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `NaiveDateTime` and `NaiveDate` [INFO] [stdout] --> src/block.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | use chrono::{NaiveDate, NaiveDateTime}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/block.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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/block.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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/block.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] = help: 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: see 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/block.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] = help: 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: see 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/blockchain.rs:111:17 [INFO] [stdout] | [INFO] [stdout] 111 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Header` [INFO] [stdout] --> src/blockchain.rs:1:26 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::block::{Block,Header}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::merkle::MerkleTree` [INFO] [stdout] --> src/blockchain.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::merkle::MerkleTree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `deserialize` and `serialize` [INFO] [stdout] --> src/blockchain.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | use bincode::{serialize, deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::transaction::Transaction` [INFO] [stdout] --> src/blockchain.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::transaction::Transaction; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/blockchain.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [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] = help: 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: see 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/blockchain.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [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] = help: 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: see 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/blockchain.rs:89:21 [INFO] [stdout] | [INFO] [stdout] 89 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stdout] --> src/crypto/hash.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/crypto/hash.rs:11:25 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] = help: 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: see 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/crypto/hash.rs:11:36 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] = help: 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: see 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: unused import: `ring::digest::Algorithm` [INFO] [stdout] --> src/crypto/merkle.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use ring::digest::Algorithm; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/crypto/merkle.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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/crypto/merkle.rs:8:21 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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/crypto/merkle.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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/crypto/merkle.rs:16:21 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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: unused import: `Duration` [INFO] [stdout] --> src/miner.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hashable` [INFO] [stdout] --> src/network/message.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::crypto::hash::{Hashable, H256}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `digest` [INFO] [stdout] --> src/network/message.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | use ring::{digest}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/network/message.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Blockchain` [INFO] [stdout] --> src/network/message.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::blockchain::{Blockchain}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Header` [INFO] [stdout] --> src/network/message.rs:6:26 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::block::{Block,Header}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/network/message.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] = help: 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: see 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: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] = help: 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: see 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: unused import: `H256` [INFO] [stdout] --> src/network/worker.rs:6:37 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::crypto::hash::{Hashable, H256}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `digest` [INFO] [stdout] --> src/network/worker.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | use ring::{digest}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block` and `Header` [INFO] [stdout] --> src/network/worker.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::block::{Block,Header}; [INFO] [stdout] | ^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stdout] --> src/transaction.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `EdDSAParameters` [INFO] [stdout] --> src/transaction.rs:2:82 [INFO] [stdout] | [INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::slice` [INFO] [stdout] --> src/transaction.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::slice; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deserialize` [INFO] [stdout] --> src/transaction.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{serialize, deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng` and `thread_rng` [INFO] [stdout] --> src/transaction.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | use rand::{thread_rng, Rng}; [INFO] [stdout] | ^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::distributions::Alphanumeric` [INFO] [stdout] --> src/transaction.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::distributions::Alphanumeric; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/transaction.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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/transaction.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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 `if` condition [INFO] [stdout] --> src/transaction.rs:48:7 [INFO] [stdout] | [INFO] [stdout] 48 | if(ret == Ok(())) { return true;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 48 - if(ret == Ok(())) { return true;} [INFO] [stdout] 48 + if ret == Ok(()) { return true;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VerificationAlgorithm` [INFO] [stdout] --> src/transaction.rs:2:59 [INFO] [stdout] | [INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `diff_rand` [INFO] [stdout] --> src/blockchain.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let diff_rand = ::from(rand_u8); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_diff_rand` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/crypto/merkle.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | let n = odd.val; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/crypto/merkle.rs:60:21 [INFO] [stdout] | [INFO] [stdout] 60 | let n = odd.val; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `j` is assigned to, but never used [INFO] [stdout] --> src/crypto/merkle.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | let mut j = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_j` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `leaf_size` [INFO] [stdout] --> src/crypto/merkle.rs:153:72 [INFO] [stdout] | [INFO] [stdout] 153 | 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: `now` [INFO] [stdout] --> src/miner.rs:147:17 [INFO] [stdout] | [INFO] [stdout] 147 | let now = Utc::now(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_now` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block_m` [INFO] [stdout] --> src/network/worker.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let block_m = Arc::new(Mutex::new(block)); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/worker.rs:84:25 [INFO] [stdout] | [INFO] [stdout] 84 | let mut nonce = blk.clone(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/worker.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 104 | let mut nonce = blk.clone(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `server` is never read [INFO] [stdout] --> src/network/worker.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Context { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | server: ServerHandle, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Context` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` 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/api/mod.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | #[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] 21 | 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/block.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] 13 | 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/block.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] 13 | 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/block.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] 29 | 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/block.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] 29 | 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: structure field `genesisBlock` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 13 | genesisBlock: Option, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `genesis_block` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` 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/blockchain.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Blockchain` [INFO] [stdout] 12 | pub struct Blockchain { [INFO] [stdout] | ---------- `Blockchain` 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/blockchain.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Blockchain` [INFO] [stdout] 12 | pub struct Blockchain { [INFO] [stdout] | ---------- `Blockchain` 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/crypto/hash.rs:11:25 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] 12 | 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/crypto/hash.rs:11:36 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] 12 | 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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/crypto/merkle.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Node` [INFO] [stdout] 9 | struct Node { [INFO] [stdout] | ---- `Node` 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/crypto/merkle.rs:8:21 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Node` [INFO] [stdout] 9 | struct Node { [INFO] [stdout] | ---- `Node` 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/crypto/merkle.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_MerkleTree` [INFO] [stdout] 17 | pub struct MerkleTree { [INFO] [stdout] | ---------- `MerkleTree` 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/crypto/merkle.rs:16:21 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_MerkleTree` [INFO] [stdout] 17 | pub struct MerkleTree { [INFO] [stdout] | ---------- `MerkleTree` 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 `parentH` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:74:25 [INFO] [stdout] | [INFO] [stdout] 74 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `newNode` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:76:25 [INFO] [stdout] | [INFO] [stdout] 76 | let newNode:Node = Node{val, l: Some(Box::new(l1)), r: Some(Box::new(r1))}; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `new_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `sibV` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:127:21 [INFO] [stdout] | [INFO] [stdout] 127 | let sibV = sibiling.val; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `sib_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `sibV` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:139:21 [INFO] [stdout] | [INFO] [stdout] 139 | let sibV = sibiling.val; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `sib_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/crypto/merkle.rs:157:34 [INFO] [stdout] | [INFO] [stdout] 157 | let mut vec = Vec::from(proof.clone()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[H256]` does not implement `Clone`, so calling `clone` on `&[H256]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `parentH` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:165:17 [INFO] [stdout] | [INFO] [stdout] 165 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `parentH` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [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: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_Message` [INFO] [stdout] 9 | 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: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_Message` [INFO] [stdout] 9 | 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] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/transaction.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] 12 | 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/transaction.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] 12 | 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] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 40.03s [INFO] running `Command { std: "docker" "inspect" "199ee99660d471c27cda8e4d9f92bb914ff9625dad4cccf156d5b34e1be7229f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "199ee99660d471c27cda8e4d9f92bb914ff9625dad4cccf156d5b34e1be7229f", kill_on_drop: false }` [INFO] [stdout] 199ee99660d471c27cda8e4d9f92bb914ff9625dad4cccf156d5b34e1be7229f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+b03b3a7ec92682be2917540b679478d41c95a30c" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ac424e446da984c8f09d10bcd7e52de6908a7f233efc97c490016b788a6dbce5 [INFO] running `Command { std: "docker" "start" "-a" "ac424e446da984c8f09d10bcd7e52de6908a7f233efc97c490016b788a6dbce5", kill_on_drop: false }` [INFO] [stderr] Compiling bitcoin v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/api/mod.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | #[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] = help: 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: see 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: unexpected `cfg` condition name: `test_utilities` [INFO] [stdout] --> src/block.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | #[cfg(any(test, test_utilities))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deserialize` [INFO] [stdout] --> src/block.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{serialize, deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/block.rs:9:17 [INFO] [stdout] | [INFO] [stdout] 9 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/block.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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/block.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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/block.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] = help: 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: see 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/block.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] = help: 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: see 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/blockchain.rs:111:17 [INFO] [stdout] | [INFO] [stdout] 111 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Header` [INFO] [stdout] --> src/blockchain.rs:1:26 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::block::{Block,Header}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::merkle::MerkleTree` [INFO] [stdout] --> src/blockchain.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::merkle::MerkleTree; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `deserialize` and `serialize` [INFO] [stdout] --> src/blockchain.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | use bincode::{serialize, deserialize}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::transaction::Transaction` [INFO] [stdout] --> src/blockchain.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::transaction::Transaction; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/blockchain.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [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] = help: 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: see 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/blockchain.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [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] = help: 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: see 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/blockchain.rs:89:21 [INFO] [stdout] | [INFO] [stdout] 89 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stdout] --> src/crypto/hash.rs:110:17 [INFO] [stdout] | [INFO] [stdout] 110 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/crypto/hash.rs:11:25 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] = help: 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: see 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/crypto/hash.rs:11:36 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] = help: 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: see 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: unused import: `ring::digest::Algorithm` [INFO] [stdout] --> src/crypto/merkle.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use ring::digest::Algorithm; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/crypto/merkle.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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/crypto/merkle.rs:8:21 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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/crypto/merkle.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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/crypto/merkle.rs:16:21 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [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] = help: 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: see 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: unused import: `Duration` [INFO] [stdout] --> src/miner.rs:12:17 [INFO] [stdout] | [INFO] [stdout] 12 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Hashable` [INFO] [stdout] --> src/network/message.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::crypto::hash::{Hashable, H256}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `digest` [INFO] [stdout] --> src/network/message.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | use ring::{digest}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/network/message.rs:4:17 [INFO] [stdout] | [INFO] [stdout] 4 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Blockchain` [INFO] [stdout] --> src/network/message.rs:5:25 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::blockchain::{Blockchain}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Header` [INFO] [stdout] --> src/network/message.rs:6:26 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::block::{Block,Header}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/network/message.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] = help: 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: see 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: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] = help: 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: see 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: unused import: `H256` [INFO] [stdout] --> src/network/worker.rs:6:37 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::crypto::hash::{Hashable, H256}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `digest` [INFO] [stdout] --> src/network/worker.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | use ring::{digest}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Block` and `Header` [INFO] [stdout] --> src/network/worker.rs:10:20 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::block::{Block,Header}; [INFO] [stdout] | ^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stdout] --> src/transaction.rs:53:17 [INFO] [stdout] | [INFO] [stdout] 53 | #[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 for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `EdDSAParameters` [INFO] [stdout] --> src/transaction.rs:2:82 [INFO] [stdout] | [INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::slice` [INFO] [stdout] --> src/transaction.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::slice; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `deserialize` [INFO] [stdout] --> src/transaction.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | use bincode::{serialize, deserialize}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> src/transaction.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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/transaction.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] = help: 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: see 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 `if` condition [INFO] [stdout] --> src/transaction.rs:48:7 [INFO] [stdout] | [INFO] [stdout] 48 | if(ret == Ok(())) { return true;} [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 48 - if(ret == Ok(())) { return true;} [INFO] [stdout] 48 + if ret == Ok(()) { return true;} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VerificationAlgorithm` [INFO] [stdout] --> src/transaction.rs:2:59 [INFO] [stdout] | [INFO] [stdout] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `date_time` [INFO] [stdout] --> src/block.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | let date_time: NaiveDateTime = NaiveDate::from_ymd(2017, 11, 12).and_hms(17, 33, 44); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_date_time` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `diff_rand` [INFO] [stdout] --> src/blockchain.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let diff_rand = ::from(rand_u8); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_diff_rand` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/crypto/merkle.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | let n = odd.val; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/crypto/merkle.rs:60:21 [INFO] [stdout] | [INFO] [stdout] 60 | let n = odd.val; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `j` is assigned to, but never used [INFO] [stdout] --> src/crypto/merkle.rs:109:17 [INFO] [stdout] | [INFO] [stdout] 109 | let mut j = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_j` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `leaf_size` [INFO] [stdout] --> src/crypto/merkle.rs:153:72 [INFO] [stdout] | [INFO] [stdout] 153 | 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: `a` [INFO] [stdout] --> src/crypto/merkle.rs:204:13 [INFO] [stdout] | [INFO] [stdout] 204 | let a = input_data[0].hash(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/crypto/merkle.rs:205:13 [INFO] [stdout] | [INFO] [stdout] 205 | let b = input_data[1].hash(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `now` [INFO] [stdout] --> src/miner.rs:147:17 [INFO] [stdout] | [INFO] [stdout] 147 | let now = Utc::now(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_now` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block_m` [INFO] [stdout] --> src/network/worker.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let block_m = Arc::new(Mutex::new(block)); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_m` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/worker.rs:84:25 [INFO] [stdout] | [INFO] [stdout] 84 | let mut nonce = blk.clone(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/network/worker.rs:104:25 [INFO] [stdout] | [INFO] [stdout] 104 | let mut nonce = blk.clone(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/transaction.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | let s = ""; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `server` is never read [INFO] [stdout] --> src/network/worker.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct Context { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | server: ServerHandle, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Context` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` 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/api/mod.rs:20:10 [INFO] [stdout] | [INFO] [stdout] 20 | #[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] 21 | 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/block.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] 13 | 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/block.rs:12:21 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [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] 13 | 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/block.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] 29 | 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/block.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [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] 29 | 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: structure field `genesisBlock` should have a snake case name [INFO] [stdout] --> src/blockchain.rs:13:6 [INFO] [stdout] | [INFO] [stdout] 13 | genesisBlock: Option, [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `genesis_block` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` 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/blockchain.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Blockchain` [INFO] [stdout] 12 | pub struct Blockchain { [INFO] [stdout] | ---------- `Blockchain` 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/blockchain.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Blockchain` [INFO] [stdout] 12 | pub struct Blockchain { [INFO] [stdout] | ---------- `Blockchain` 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/crypto/hash.rs:11:25 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] 12 | 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/crypto/hash.rs:11:36 [INFO] [stdout] | [INFO] [stdout] 11 | #[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] 12 | 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: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/crypto/merkle.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Node` [INFO] [stdout] 9 | struct Node { [INFO] [stdout] | ---- `Node` 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/crypto/merkle.rs:8:21 [INFO] [stdout] | [INFO] [stdout] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Node` [INFO] [stdout] 9 | struct Node { [INFO] [stdout] | ---- `Node` 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/crypto/merkle.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_MerkleTree` [INFO] [stdout] 17 | pub struct MerkleTree { [INFO] [stdout] | ---------- `MerkleTree` 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/crypto/merkle.rs:16:21 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_MerkleTree` [INFO] [stdout] 17 | pub struct MerkleTree { [INFO] [stdout] | ---------- `MerkleTree` 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 `parentH` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:74:25 [INFO] [stdout] | [INFO] [stdout] 74 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `newNode` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:76:25 [INFO] [stdout] | [INFO] [stdout] 76 | let newNode:Node = Node{val, l: Some(Box::new(l1)), r: Some(Box::new(r1))}; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `new_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `sibV` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:127:21 [INFO] [stdout] | [INFO] [stdout] 127 | let sibV = sibiling.val; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `sib_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `sibV` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:139:21 [INFO] [stdout] | [INFO] [stdout] 139 | let sibV = sibiling.val; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `sib_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/crypto/merkle.rs:157:34 [INFO] [stdout] | [INFO] [stdout] 157 | let mut vec = Vec::from(proof.clone()); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[H256]` does not implement `Clone`, so calling `clone` on `&[H256]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `parentH` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:165:17 [INFO] [stdout] | [INFO] [stdout] 165 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `parentH` should have a snake case name [INFO] [stdout] --> src/crypto/merkle.rs:176:17 [INFO] [stdout] | [INFO] [stdout] 176 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [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: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_Message` [INFO] [stdout] 9 | 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: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_Message` [INFO] [stdout] 9 | 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] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/transaction.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] 12 | 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/transaction.rs:11:21 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [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] 12 | 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] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.50s [INFO] running `Command { std: "docker" "inspect" "ac424e446da984c8f09d10bcd7e52de6908a7f233efc97c490016b788a6dbce5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ac424e446da984c8f09d10bcd7e52de6908a7f233efc97c490016b788a6dbce5", kill_on_drop: false }` [INFO] [stdout] ac424e446da984c8f09d10bcd7e52de6908a7f233efc97c490016b788a6dbce5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+b03b3a7ec92682be2917540b679478d41c95a30c" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 1dc75fb2cebd4ab47bb227ba2577fab1bff8334fd594fc4bf783836d93fb7526 [INFO] running `Command { std: "docker" "start" "-a" "1dc75fb2cebd4ab47bb227ba2577fab1bff8334fd594fc4bf783836d93fb7526", kill_on_drop: false }` [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/api/mod.rs:20:10 [INFO] [stderr] | [INFO] [stderr] 20 | #[derive(Serialize)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stderr] --> src/block.rs:41:17 [INFO] [stderr] | [INFO] [stderr] 41 | #[cfg(any(test, test_utilities))] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused import: `deserialize` [INFO] [stderr] --> src/block.rs:4:26 [INFO] [stderr] | [INFO] [stderr] 4 | use bincode::{serialize, deserialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/block.rs:9:17 [INFO] [stderr] | [INFO] [stderr] 9 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/block.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/block.rs:12:21 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/block.rs:28:10 [INFO] [stderr] | [INFO] [stderr] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/block.rs:28:21 [INFO] [stderr] | [INFO] [stderr] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stderr] --> src/blockchain.rs:111:17 [INFO] [stderr] | [INFO] [stderr] 111 | #[cfg(any(test, test_utilities))] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused import: `Header` [INFO] [stderr] --> src/blockchain.rs:1:26 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::block::{Block,Header}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::crypto::merkle::MerkleTree` [INFO] [stderr] --> src/blockchain.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::crypto::merkle::MerkleTree; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `deserialize` and `serialize` [INFO] [stderr] --> src/blockchain.rs:5:15 [INFO] [stderr] | [INFO] [stderr] 5 | use bincode::{serialize, deserialize}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::transaction::Transaction` [INFO] [stderr] --> src/blockchain.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::transaction::Transaction; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/blockchain.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/blockchain.rs:11:21 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stderr] --> src/blockchain.rs:89:21 [INFO] [stderr] | [INFO] [stderr] 89 | #[cfg(any(test, test_utilities))] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stderr] --> src/crypto/hash.rs:110:17 [INFO] [stderr] | [INFO] [stderr] 110 | #[cfg(any(test, test_utilities))] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/crypto/hash.rs:11:25 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/crypto/hash.rs:11:36 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused import: `ring::digest::Algorithm` [INFO] [stderr] --> src/crypto/merkle.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use ring::digest::Algorithm; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/crypto/merkle.rs:8:10 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/crypto/merkle.rs:8:21 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/crypto/merkle.rs:16:10 [INFO] [stderr] | [INFO] [stderr] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/crypto/merkle.rs:16:21 [INFO] [stderr] | [INFO] [stderr] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/miner.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | use std::time::{Duration, SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Hashable` [INFO] [stderr] --> src/network/message.rs:2:27 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::crypto::hash::{Hashable, H256}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `digest` [INFO] [stderr] --> src/network/message.rs:3:12 [INFO] [stderr] | [INFO] [stderr] 3 | use ring::{digest}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc` and `Mutex` [INFO] [stderr] --> src/network/message.rs:4:17 [INFO] [stderr] | [INFO] [stderr] 4 | use std::sync::{Arc, Mutex}; [INFO] [stderr] | ^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Blockchain` [INFO] [stderr] --> src/network/message.rs:5:25 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::blockchain::{Blockchain}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Header` [INFO] [stderr] --> src/network/message.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::block::{Block,Header}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/network/message.rs:8:10 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/network/message.rs:8:21 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused import: `H256` [INFO] [stderr] --> src/network/worker.rs:6:37 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::crypto::hash::{Hashable, H256}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `digest` [INFO] [stderr] --> src/network/worker.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 7 | use ring::{digest}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Block` and `Header` [INFO] [stderr] --> src/network/worker.rs:10:20 [INFO] [stderr] | [INFO] [stderr] 10 | use crate::block::{Block,Header}; [INFO] [stderr] | ^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_utilities` [INFO] [stderr] --> src/transaction.rs:53:17 [INFO] [stderr] | [INFO] [stderr] 53 | #[cfg(any(test, test_utilities))] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_utilities)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_utilities)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused import: `EdDSAParameters` [INFO] [stderr] --> src/transaction.rs:2:82 [INFO] [stderr] | [INFO] [stderr] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::slice` [INFO] [stderr] --> src/transaction.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::slice; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `deserialize` [INFO] [stderr] --> src/transaction.rs:4:26 [INFO] [stderr] | [INFO] [stderr] 4 | use bincode::{serialize, deserialize}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/transaction.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Serialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> src/transaction.rs:11:21 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default` and `test-utilities` [INFO] [stderr] = 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] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/transaction.rs:48:7 [INFO] [stderr] | [INFO] [stderr] 48 | if(ret == Ok(())) { return true;} [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 48 - if(ret == Ok(())) { return true;} [INFO] [stderr] 48 + if ret == Ok(()) { return true;} [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `VerificationAlgorithm` [INFO] [stderr] --> src/transaction.rs:2:59 [INFO] [stderr] | [INFO] [stderr] 2 | use ring::signature::{Ed25519KeyPair, Signature, KeyPair, VerificationAlgorithm, EdDSAParameters}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `date_time` [INFO] [stderr] --> src/block.rs:51:13 [INFO] [stderr] | [INFO] [stderr] 51 | let date_time: NaiveDateTime = NaiveDate::from_ymd(2017, 11, 12).and_hms(17, 33, 44); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_date_time` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `diff_rand` [INFO] [stderr] --> src/blockchain.rs:29:13 [INFO] [stderr] | [INFO] [stderr] 29 | let diff_rand = ::from(rand_u8); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_diff_rand` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n` [INFO] [stderr] --> src/crypto/merkle.rs:50:17 [INFO] [stderr] | [INFO] [stderr] 50 | let n = odd.val; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n` [INFO] [stderr] --> src/crypto/merkle.rs:60:21 [INFO] [stderr] | [INFO] [stderr] 60 | let n = odd.val; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stderr] [INFO] [stderr] warning: variable `j` is assigned to, but never used [INFO] [stderr] --> src/crypto/merkle.rs:109:17 [INFO] [stderr] | [INFO] [stderr] 109 | let mut j = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_j` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `leaf_size` [INFO] [stderr] --> src/crypto/merkle.rs:153:72 [INFO] [stderr] | [INFO] [stderr] 153 | pub fn verify(root: &H256, datum: &H256, proof: &[H256], index: usize, leaf_size: usize) -> bool { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leaf_size` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/crypto/merkle.rs:204:13 [INFO] [stderr] | [INFO] [stderr] 204 | let a = input_data[0].hash(); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/crypto/merkle.rs:205:13 [INFO] [stderr] | [INFO] [stderr] 205 | let b = input_data[1].hash(); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `now` [INFO] [stderr] --> src/miner.rs:147:17 [INFO] [stderr] | [INFO] [stderr] 147 | let now = Utc::now(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_now` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `block_m` [INFO] [stderr] --> src/network/worker.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | let block_m = Arc::new(Mutex::new(block)); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_block_m` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/network/worker.rs:84:25 [INFO] [stderr] | [INFO] [stderr] 84 | let mut nonce = blk.clone(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/network/worker.rs:104:25 [INFO] [stderr] | [INFO] [stderr] 104 | let mut nonce = blk.clone(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/transaction.rs:70:13 [INFO] [stderr] | [INFO] [stderr] 70 | let s = ""; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stderr] [INFO] [stderr] warning: field `server` is never read [INFO] [stderr] --> src/network/worker.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct Context { [INFO] [stderr] | ------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 17 | server: ServerHandle, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Context` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/api/mod.rs:20:10 [INFO] [stderr] | [INFO] [stderr] 20 | #[derive(Serialize)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_ApiResponse` [INFO] [stderr] 21 | struct ApiResponse { [INFO] [stderr] | ----------- `ApiResponse` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/block.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Header` [INFO] [stderr] 13 | pub struct Header { [INFO] [stderr] | ------ `Header` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/block.rs:12:21 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Serialize, Deserialize,Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Header` [INFO] [stderr] 13 | pub struct Header { [INFO] [stderr] | ------ `Header` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/block.rs:28:10 [INFO] [stderr] | [INFO] [stderr] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Block` [INFO] [stderr] 29 | pub struct Block { [INFO] [stderr] | ----- `Block` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/block.rs:28:21 [INFO] [stderr] | [INFO] [stderr] 28 | #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Block` [INFO] [stderr] 29 | pub struct Block { [INFO] [stderr] | ----- `Block` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: structure field `genesisBlock` should have a snake case name [INFO] [stderr] --> src/blockchain.rs:13:6 [INFO] [stderr] | [INFO] [stderr] 13 | genesisBlock: Option, [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `genesis_block` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/blockchain.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Blockchain` [INFO] [stderr] 12 | pub struct Blockchain { [INFO] [stderr] | ---------- `Blockchain` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/blockchain.rs:11:21 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize,Debug, Default)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Blockchain` [INFO] [stderr] 12 | pub struct Blockchain { [INFO] [stderr] | ---------- `Blockchain` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/crypto/hash.rs:11:25 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_H256` [INFO] [stderr] 12 | pub struct H256([u8; 32]); // big endian u256 [INFO] [stderr] | ---- `H256` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/crypto/hash.rs:11:36 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Eq, PartialEq, Serialize, Deserialize, Clone, Hash, Default, Copy)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_H256` [INFO] [stderr] 12 | pub struct H256([u8; 32]); // big endian u256 [INFO] [stderr] | ---- `H256` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/crypto/merkle.rs:8:10 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Node` [INFO] [stderr] 9 | struct Node { [INFO] [stderr] | ---- `Node` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/crypto/merkle.rs:8:21 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize,Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Node` [INFO] [stderr] 9 | struct Node { [INFO] [stderr] | ---- `Node` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/crypto/merkle.rs:16:10 [INFO] [stderr] | [INFO] [stderr] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_MerkleTree` [INFO] [stderr] 17 | pub struct MerkleTree { [INFO] [stderr] | ---------- `MerkleTree` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/crypto/merkle.rs:16:21 [INFO] [stderr] | [INFO] [stderr] 16 | #[derive(Serialize, Deserialize, Debug, Default, Clone,PartialEq)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_MerkleTree` [INFO] [stderr] 17 | pub struct MerkleTree { [INFO] [stderr] | ---------- `MerkleTree` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable `parentH` should have a snake case name [INFO] [stderr] --> src/crypto/merkle.rs:74:25 [INFO] [stderr] | [INFO] [stderr] 74 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [INFO] [stderr] [INFO] [stderr] warning: variable `newNode` should have a snake case name [INFO] [stderr] --> src/crypto/merkle.rs:76:25 [INFO] [stderr] | [INFO] [stderr] 76 | let newNode:Node = Node{val, l: Some(Box::new(l1)), r: Some(Box::new(r1))}; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `new_node` [INFO] [stderr] [INFO] [stderr] warning: variable `sibV` should have a snake case name [INFO] [stderr] --> src/crypto/merkle.rs:127:21 [INFO] [stderr] | [INFO] [stderr] 127 | let sibV = sibiling.val; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `sib_v` [INFO] [stderr] [INFO] [stderr] warning: variable `sibV` should have a snake case name [INFO] [stderr] --> src/crypto/merkle.rs:139:21 [INFO] [stderr] | [INFO] [stderr] 139 | let sibV = sibiling.val; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `sib_v` [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/crypto/merkle.rs:157:34 [INFO] [stderr] | [INFO] [stderr] 157 | let mut vec = Vec::from(proof.clone()); [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `[H256]` does not implement `Clone`, so calling `clone` on `&[H256]` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `parentH` should have a snake case name [INFO] [stderr] --> src/crypto/merkle.rs:165:17 [INFO] [stderr] | [INFO] [stderr] 165 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [INFO] [stderr] [INFO] [stderr] warning: variable `parentH` should have a snake case name [INFO] [stderr] --> src/crypto/merkle.rs:176:17 [INFO] [stderr] | [INFO] [stderr] 176 | let parentH = digest::digest(&digest::SHA256, &parent); [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `parent_h` [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/network/message.rs:8:10 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Message` [INFO] [stderr] 9 | pub enum Message { [INFO] [stderr] | ------- `Message` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/network/message.rs:8:21 [INFO] [stderr] | [INFO] [stderr] 8 | #[derive(Serialize, Deserialize, Debug, Clone)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Message` [INFO] [stderr] 9 | pub enum Message { [INFO] [stderr] | ------- `Message` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/transaction.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^-------- [INFO] [stderr] | | [INFO] [stderr] | `Serialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Transaction` [INFO] [stderr] 12 | pub struct Transaction { [INFO] [stderr] | ----------- `Transaction` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/transaction.rs:11:21 [INFO] [stderr] | [INFO] [stderr] 11 | #[derive(Serialize, Deserialize, Debug, Default, Clone, PartialEq)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Transaction` [INFO] [stderr] 12 | pub struct Transaction { [INFO] [stderr] | ----------- `Transaction` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `bitcoin` (bin "bitcoin" test) generated 82 warnings (run `cargo fix --bin "bitcoin" --tests` to apply 23 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/bitcoin-2f4957bacb7aa858) [INFO] [stdout] test crypto::merkle::tests::proof ... ok [INFO] [stdout] test crypto::merkle::tests::root ... ok [INFO] [stdout] test crypto::merkle::tests::verifying ... ok [INFO] [stdout] test blockchain::tests::insert_one ... ok [INFO] [stdout] test transaction::tests::sign_verify ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "1dc75fb2cebd4ab47bb227ba2577fab1bff8334fd594fc4bf783836d93fb7526", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1dc75fb2cebd4ab47bb227ba2577fab1bff8334fd594fc4bf783836d93fb7526", kill_on_drop: false }` [INFO] [stdout] 1dc75fb2cebd4ab47bb227ba2577fab1bff8334fd594fc4bf783836d93fb7526