[INFO] cloning repository https://github.com/BearGuy/saito
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/BearGuy/saito" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBearGuy%2Fsaito", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBearGuy%2Fsaito'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8a6c6a07f56febff68aba9698ee92de00d07352a
[INFO] checking BearGuy/saito against master#a26e97be8826d408309fffbd8168362365719f50 for pr-136776
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBearGuy%2Fsaito" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/BearGuy/saito on toolchain a26e97be8826d408309fffbd8168362365719f50
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a26e97be8826d408309fffbd8168362365719f50" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/BearGuy/saito
[INFO] finished tweaking git repo https://github.com/BearGuy/saito
[INFO] tweaked toml for git repo https://github.com/BearGuy/saito written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/BearGuy/saito 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" "+a26e97be8826d408309fffbd8168362365719f50" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded typenum v1.10.0
[INFO] [stderr]   Downloaded opaque-debug v0.2.2
[INFO] [stderr]   Downloaded digest v0.8.0
[INFO] [stderr]   Downloaded block-padding v0.1.4
[INFO] [stderr]   Downloaded sha2 v0.8.0
[INFO] [stderr]   Downloaded generic-array v0.12.0
[INFO] [stderr]   Downloaded serde v1.0.93
[INFO] [stderr]   Downloaded unicode-width v0.1.5
[INFO] [stderr]   Downloaded tinytemplate v1.0.2
[INFO] [stderr]   Downloaded crossbeam-deque v0.6.3
[INFO] [stderr]   Downloaded serde_bytes v0.11.1
[INFO] [stderr]   Downloaded base58 v0.1.0
[INFO] [stderr]   Downloaded crossbeam-epoch v0.7.1
[INFO] [stderr]   Downloaded criterion-plot v0.3.1
[INFO] [stderr]   Downloaded bincode v1.1.4
[INFO] [stderr]   Downloaded cast v0.2.2
[INFO] [stderr]   Downloaded itertools v0.8.0
[INFO] [stderr]   Downloaded regex-automata v0.1.8
[INFO] [stderr]   Downloaded syn v0.15.40
[INFO] [stderr]   Downloaded criterion v0.2.11
[INFO] [stderr]   Downloaded rayon-core v1.5.0
[INFO] [stderr]   Downloaded rayon v1.1.0
[INFO] [stderr]   Downloaded cc v1.0.26
[INFO] [stderr]   Downloaded secp256k1 v0.12.2
[INFO] [stderr]   Downloaded serde_derive v1.0.97
[INFO] [stderr]   Downloaded csv-core v0.1.6
[INFO] [stderr]   Downloaded rand_xoshiro v0.1.0
[INFO] [stderr]   Downloaded winapi-util v0.1.2
[INFO] [stderr]   Downloaded merkle v1.10.0
[INFO] [stderr]   Downloaded crossbeam-utils v0.6.5
[INFO] [stderr]   Downloaded libc v0.2.58
[INFO] [stderr]   Downloaded bstr v0.2.4
[INFO] [stderr]   Downloaded autocfg v0.1.5
[INFO] [stderr]   Downloaded walkdir v2.2.9
[INFO] [stderr]   Downloaded rand_core v0.4.0
[INFO] [stderr]   Downloaded lazy_static v1.3.0
[INFO] [stderr]   Downloaded atty v0.2.13
[INFO] [stderr]   Downloaded num-traits v0.2.8
[INFO] [stderr]   Downloaded same-file v1.0.5
[INFO] [stderr]   Downloaded csv v1.1.1
[INFO] [stderr]   Downloaded winapi v0.3.7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+a26e97be8826d408309fffbd8168362365719f50" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5899e492265eee12625180b9ceb21b306b041339db33c06e237df9d2e48435b0
[INFO] running `Command { std: "docker" "start" "-a" "5899e492265eee12625180b9ceb21b306b041339db33c06e237df9d2e48435b0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5899e492265eee12625180b9ceb21b306b041339db33c06e237df9d2e48435b0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5899e492265eee12625180b9ceb21b306b041339db33c06e237df9d2e48435b0", kill_on_drop: false }`
[INFO] [stdout] 5899e492265eee12625180b9ceb21b306b041339db33c06e237df9d2e48435b0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+a26e97be8826d408309fffbd8168362365719f50" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9199ac4b35ab9876ec756ab4d257b71c80d3a4c321d86dd084d4aa0ac960a882
[INFO] running `Command { std: "docker" "start" "-a" "9199ac4b35ab9876ec756ab4d257b71c80d3a4c321d86dd084d4aa0ac960a882", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.58
[INFO] [stderr]    Compiling syn v0.15.40
[INFO] [stderr]     Checking lazy_static v1.3.0
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling serde v1.0.93
[INFO] [stderr]    Compiling cc v1.0.26
[INFO] [stderr]    Compiling arrayvec v0.4.11
[INFO] [stderr]     Checking cfg-if v0.1.9
[INFO] [stderr]    Compiling autocfg v0.1.5
[INFO] [stderr]    Compiling typenum v1.10.0
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]     Checking either v1.5.2
[INFO] [stderr]    Compiling memchr v2.2.1
[INFO] [stderr]    Compiling ryu v1.0.0
[INFO] [stderr]    Compiling rayon-core v1.5.0
[INFO] [stderr]     Checking crossbeam-utils v0.6.5
[INFO] [stderr]     Checking block-padding v0.1.4
[INFO] [stderr]     Checking untrusted v0.6.2
[INFO] [stderr]     Checking rand_core v0.4.0
[INFO] [stderr]     Checking itoa v0.4.4
[INFO] [stderr]    Compiling merkle v1.10.0
[INFO] [stderr]    Compiling bitflags v1.1.0
[INFO] [stderr]     Checking opaque-debug v0.2.2
[INFO] [stderr]     Checking crossbeam-queue v0.1.2
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking itertools v0.8.0
[INFO] [stderr]    Compiling bincode v1.1.4
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]     Checking cast v0.2.2
[INFO] [stderr]     Checking base58 v0.1.0
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking same-file v1.0.5
[INFO] [stderr]     Checking walkdir v2.2.9
[INFO] [stderr]     Checking clap v2.33.0
[INFO] [stderr]    Compiling ring v0.13.5
[INFO] [stderr]    Compiling secp256k1 v0.12.2
[INFO] [stderr]     Checking crossbeam-epoch v0.7.1
[INFO] [stderr]     Checking regex-automata v0.1.8
[INFO] [stderr]     Checking rand_xoshiro v0.1.0
[INFO] [stderr]     Checking criterion-plot v0.3.1
[INFO] [stderr]     Checking num_cpus v1.10.1
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking atty v0.2.13
[INFO] [stderr]     Checking crossbeam-deque v0.6.3
[INFO] [stderr]     Checking csv-core v0.1.6
[INFO] [stderr]     Checking generic-array v0.12.0
[INFO] [stderr]     Checking block-buffer v0.7.3
[INFO] [stderr]     Checking digest v0.8.0
[INFO] [stderr]     Checking rayon v1.1.0
[INFO] [stderr]     Checking sha2 v0.8.0
[INFO] [stderr]    Compiling serde_derive v1.0.97
[INFO] [stderr]     Checking bstr v0.2.4
[INFO] [stderr]     Checking serde_bytes v0.11.1
[INFO] [stderr]     Checking serde_json v1.0.40
[INFO] [stderr]     Checking saito-rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:343:10
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:343:21
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:353:10
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:353:21
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:519:10
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:519:21
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:685:10
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:685:21
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `golden_tx_solution`
[INFO] [stdout]    --> src/lib.rs:132:17
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let golden_tx_solution = self.calculate_solution(
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx_solution`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `golden_tx`
[INFO] [stdout]    --> src/lib.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let mut golden_tx = wallet.create_transaction(
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:162:17
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let mut golden_tx = wallet.create_transaction(
[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: unused variable: `vote`
[INFO] [stdout]    --> src/lib.rs:205:17
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let mut vote: u8 = 0;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_vote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let mut vote: u8 = 0;
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `random_solution`
[INFO] [stdout]    --> src/lib.rs:234:27
[INFO] [stdout]     |
[INFO] [stdout] 234 |     fn find_winner(&self, random_solution: &[u8], previous_block: &Block) -> PublicKey {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_solution`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:248:12
[INFO] [stdout]     |
[INFO] [stdout] 248 |        let mut winning_tx = self.find_winning_transaction(previous_block);
[INFO] [stdout]     |            ----^^^^^^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]     --> src/lib.rs:1137:10
[INFO] [stdout]      |
[INFO] [stdout] 1137 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]      |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/lib.rs:1140:10
[INFO] [stdout]      |
[INFO] [stdout] 1140 |      for x in 0..10 {
[INFO] [stdout]      |          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]     --> src/lib.rs:1150:9
[INFO] [stdout]      |
[INFO] [stdout] 1150 |     for block in blocks.iter() {
[INFO] [stdout]      |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]     --> src/lib.rs:1155:17
[INFO] [stdout]      |
[INFO] [stdout] 1155 |         let mut f = BufWriter::new(File::create(filename).unwrap());
[INFO] [stdout]      |                 ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1155:13
[INFO] [stdout]      |
[INFO] [stdout] 1155 |         let mut f = BufWriter::new(File::create(filename).unwrap());
[INFO] [stdout]      |             ----^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]     --> src/lib.rs:1174:17
[INFO] [stdout]      |
[INFO] [stdout] 1174 |             let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]     --> src/lib.rs:1195:9
[INFO] [stdout]      |
[INFO] [stdout] 1195 |     let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `blocks` is never read
[INFO] [stdout]    --> src/lib.rs:283:5
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub struct Mempool {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 283 |     blocks: RefCell<Vec<Block>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Mempool` has a derived impl for the trait `Debug`, 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: fields `target`, `vote`, `random`, and `publickey` are never read
[INFO] [stdout]    --> src/lib.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 313 | struct GoldenTicket {
[INFO] [stdout]     |        ------------ fields in this struct
[INFO] [stdout] 314 |     target: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 315 |     vote: u8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 316 |     random: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 317 |     publickey: PublicKey
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GoldenTicket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `calculate_difficulty` and `calculate_paysplit` are never used
[INFO] [stdout]    --> src/lib.rs:321:8
[INFO] [stdout]     |
[INFO] [stdout] 320 | impl GoldenTicket {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] 321 |     fn calculate_difficulty (&self, previous_block: &Block) -> f32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     fn calculate_paysplit (&self, previous_block: &Block) -> f32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_to_amount` is never used
[INFO] [stdout]    --> src/lib.rs:436:8
[INFO] [stdout]     |
[INFO] [stdout] 366 | impl Transaction {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 436 |     fn calculate_to_amount(&self) -> f32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `genesis_ts` is never read
[INFO] [stdout]    --> src/lib.rs:908:5
[INFO] [stdout]     |
[INFO] [stdout] 907 | pub struct Blockchain {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 908 |     genesis_ts: u128,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Blockchain` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_block` is never used
[INFO] [stdout]     --> src/lib.rs:1136:4
[INFO] [stdout]      |
[INFO] [stdout] 1136 | fn create_block() -> Block {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_blocks` is never used
[INFO] [stdout]     --> src/lib.rs:1149:4
[INFO] [stdout]      |
[INFO] [stdout] 1149 | fn write_blocks(blocks: &Vec<Block>) {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_blocks` is never used
[INFO] [stdout]     --> src/lib.rs:1164:4
[INFO] [stdout]      |
[INFO] [stdout] 1164 | fn read_blocks() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_and_deserialize` is never used
[INFO] [stdout]     --> src/lib.rs:1183:4
[INFO] [stdout]      |
[INFO] [stdout] 1183 | fn serialize_and_deserialize(block: &Block) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[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/lib.rs:343:10
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_TransactionType`
[INFO] [stdout] 344 | pub enum TransactionType {
[INFO] [stdout]     |          --------------- `TransactionType` 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/lib.rs:343:21
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_TransactionType`
[INFO] [stdout] 344 | pub enum TransactionType {
[INFO] [stdout]     |          --------------- `TransactionType` 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/lib.rs:353:10
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[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] 354 | 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/lib.rs:353:21
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[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] 354 | pub struct Transaction {
[INFO] [stdout]     |            ----------- `Transaction` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lib.rs:519:10
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Slip`
[INFO] [stdout] 520 | pub struct Slip {
[INFO] [stdout]     |            ---- `Slip` 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/lib.rs:519:21
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Slip`
[INFO] [stdout] 520 | pub struct Slip {
[INFO] [stdout]     |            ---- `Slip` 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/lib.rs:685:10
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Block`
[INFO] [stdout] 686 | 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/lib.rs:685:21
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Block`
[INFO] [stdout] 686 | 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: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:879:9
[INFO] [stdout]     |
[INFO] [stdout] 879 |         f.write_all(&encode[..]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 879 |         let _ = f.write_all(&encode[..]);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1003:9
[INFO] [stdout]      |
[INFO] [stdout] 1003 |         f.write_all(&encode[..]);
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1003 |         let _ = f.write_all(&encode[..]);
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1187:5
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     f.write_all(&encode[..]);
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     let _ = f.write_all(&encode[..]);
[INFO] [stdout]      |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_merkle_root`
[INFO] [stdout]  --> src/main.rs:1:65
[INFO] [stdout]   |
[INFO] [stdout] 1 | use saito::{Mempool, Blockchain, BurnFee, Wallet, Miner, Block, create_merkle_root};
[INFO] [stdout]   |                                                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RefCell` and `RefMut`
[INFO] [stdout]  --> src/main.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::cell::{RefCell, RefMut};
[INFO] [stdout]   |                 ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH`
[INFO] [stdout]  --> src/main.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut mempool = Mempool::new();
[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] [stderr]     Checking csv v1.1.1
[INFO] [stderr]     Checking tinytemplate v1.0.2
[INFO] [stderr]     Checking criterion v0.2.11
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]  --> benches/saito_benchmark.rs:6:41
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::time::{SystemTime, UNIX_EPOCH, Duration};
[INFO] [stdout]   |                                         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `deserialize_from` and `serialize_into`
[INFO] [stdout]  --> benches/saito_benchmark.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 | use bincode::{serialize_into, deserialize_from};
[INFO] [stdout]   |               ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BufReader` and `BufWriter`
[INFO] [stdout]   --> benches/saito_benchmark.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{BufWriter, BufReader, Read};
[INFO] [stdout]    |               ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]   --> benches/saito_benchmark.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::thread;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> benches/saito_benchmark.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::sync::{Mutex, Arc};
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Receiver`
[INFO] [stdout]   --> benches/saito_benchmark.rs:18:31
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::sync::mpsc::{Sender, Receiver};
[INFO] [stdout]    |                               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `create_merkle_root`
[INFO] [stdout]  --> src/main.rs:1:65
[INFO] [stdout]   |
[INFO] [stdout] 1 | use saito::{Mempool, Blockchain, BurnFee, Wallet, Miner, Block, create_merkle_root};
[INFO] [stdout]   |                                                                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RefCell` and `RefMut`
[INFO] [stdout]  --> src/main.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::cell::{RefCell, RefMut};
[INFO] [stdout]   |                 ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH`
[INFO] [stdout]  --> src/main.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> benches/saito_benchmark.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     for x in 0..100 {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> benches/saito_benchmark.rs:61:60
[INFO] [stdout]    |
[INFO] [stdout] 61 |     (0..1000000).into_par_iter().for_each_with(sender, |s, x| create_transaction_multi(s.clone()));
[INFO] [stdout]    |                                                            ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/main.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let mut mempool = Mempool::new();
[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: unused variable: `x`
[INFO] [stdout]   --> benches/saito_benchmark.rs:73:19
[INFO] [stdout]    |
[INFO] [stdout] 73 |             |rng, x| rng.gen()
[INFO] [stdout]    |                   ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]    --> benches/saito_benchmark.rs:115:17
[INFO] [stdout]     |
[INFO] [stdout] 115 |             let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]    --> benches/saito_benchmark.rs:128:9
[INFO] [stdout]     |
[INFO] [stdout] 128 |     let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]    --> benches/saito_benchmark.rs:143:9
[INFO] [stdout]     |
[INFO] [stdout] 143 |     let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]    --> benches/saito_benchmark.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 |     let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `encoded`
[INFO] [stdout]    --> benches/saito_benchmark.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |     let encoded: Vec<u8> = bincode::serialize(block).unwrap();
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_encoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]    --> benches/saito_benchmark.rs:166:10
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]    --> benches/saito_benchmark.rs:178:10
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]    --> benches/saito_benchmark.rs:191:10
[INFO] [stdout]     |
[INFO] [stdout] 191 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]    --> benches/saito_benchmark.rs:232:10
[INFO] [stdout]     |
[INFO] [stdout] 232 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]    --> benches/saito_benchmark.rs:245:10
[INFO] [stdout]     |
[INFO] [stdout] 245 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]    --> benches/saito_benchmark.rs:258:10
[INFO] [stdout]     |
[INFO] [stdout] 258 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]    --> benches/saito_benchmark.rs:271:10
[INFO] [stdout]     |
[INFO] [stdout] 271 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]     |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `time_since_unix_epoch` is never used
[INFO] [stdout]   --> benches/saito_benchmark.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn time_since_unix_epoch() -> u128 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_block` is never used
[INFO] [stdout]   --> benches/saito_benchmark.rs:41:4
[INFO] [stdout]    |
[INFO] [stdout] 41 | fn create_block(public_key: PublicKey) -> Block {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_blocks` is never used
[INFO] [stdout]   --> benches/saito_benchmark.rs:88:4
[INFO] [stdout]    |
[INFO] [stdout] 88 | fn write_blocks(blocks: &Vec<Block>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_blocks` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn read_blocks() {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_block` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn read_block() {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_and_deserialize_with_file` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:131:4
[INFO] [stdout]     |
[INFO] [stdout] 131 | fn serialize_and_deserialize_with_file(block: &Block) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_and_deserialize_in_memory` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:150:4
[INFO] [stdout]     |
[INFO] [stdout] 150 | fn serialize_and_deserialize_in_memory(block: &Block) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_in_memory` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:155:4
[INFO] [stdout]     |
[INFO] [stdout] 155 | fn serialize_in_memory(block: &Block) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_block_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:164:4
[INFO] [stdout]     |
[INFO] [stdout] 164 | fn create_block_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_block_multi_thread_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn create_block_multi_thread_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_blocks_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:190:4
[INFO] [stdout]     |
[INFO] [stdout] 190 | fn serialize_blocks_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_blocks_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:208:4
[INFO] [stdout]     |
[INFO] [stdout] 208 | fn deserialize_blocks_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `deserialize_block_from_disk_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:220:4
[INFO] [stdout]     |
[INFO] [stdout] 220 | fn deserialize_block_from_disk_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_in_memory_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:231:4
[INFO] [stdout]     |
[INFO] [stdout] 231 | fn serialize_in_memory_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_deserialize_in_memory_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:244:4
[INFO] [stdout]     |
[INFO] [stdout] 244 | fn serialize_deserialize_in_memory_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_deserialize_to_file_benchmark` is never used
[INFO] [stdout]    --> benches/saito_benchmark.rs:257:4
[INFO] [stdout]     |
[INFO] [stdout] 257 | fn serialize_deserialize_to_file_benchmark(c: &mut Criterion) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> benches/saito_benchmark.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |         f.write_all(&encode[..]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 101 |         let _ = f.write_all(&encode[..]);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> benches/saito_benchmark.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     f.write_all(&encode[..]);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |     let _ = f.write_all(&encode[..]);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:343:10
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:343:21
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:353:10
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:353:21
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:519:10
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:519:21
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:685:10
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy`
[INFO] [stdout]    --> src/lib.rs:685:21
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[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 <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]     --> src/lib.rs:1204:9
[INFO] [stdout]      |
[INFO] [stdout] 1204 |     use super::*;
[INFO] [stdout]      |         ^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]     --> src/lib.rs:1205:9
[INFO] [stdout]      |
[INFO] [stdout] 1205 |     use std::thread;
[INFO] [stdout]      |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `Mutex`
[INFO] [stdout]     --> src/lib.rs:1206:21
[INFO] [stdout]      |
[INFO] [stdout] 1206 |     use std::sync::{Mutex, Arc};
[INFO] [stdout]      |                     ^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `golden_tx_solution`
[INFO] [stdout]    --> src/lib.rs:132:17
[INFO] [stdout]     |
[INFO] [stdout] 132 |             let golden_tx_solution = self.calculate_solution(
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx_solution`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `golden_tx`
[INFO] [stdout]    --> src/lib.rs:162:21
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let mut golden_tx = wallet.create_transaction(
[INFO] [stdout]     |                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_golden_tx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:162:17
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let mut golden_tx = wallet.create_transaction(
[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: unused variable: `vote`
[INFO] [stdout]    --> src/lib.rs:205:17
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let mut vote: u8 = 0;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_vote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 |         let mut vote: u8 = 0;
[INFO] [stdout]     |             ----^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `random_solution`
[INFO] [stdout]    --> src/lib.rs:234:27
[INFO] [stdout]     |
[INFO] [stdout] 234 |     fn find_winner(&self, random_solution: &[u8], previous_block: &Block) -> PublicKey {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_solution`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:248:12
[INFO] [stdout]     |
[INFO] [stdout] 248 |        let mut winning_tx = self.find_winning_transaction(previous_block);
[INFO] [stdout]     |            ----^^^^^^^^^^
[INFO] [stdout]     |            |
[INFO] [stdout]     |            help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `secret_key`
[INFO] [stdout]     --> src/lib.rs:1137:10
[INFO] [stdout]      |
[INFO] [stdout] 1137 |     let (secret_key, public_key) = generate_keys();
[INFO] [stdout]      |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_secret_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/lib.rs:1140:10
[INFO] [stdout]      |
[INFO] [stdout] 1140 |      for x in 0..10 {
[INFO] [stdout]      |          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `block`
[INFO] [stdout]     --> src/lib.rs:1150:9
[INFO] [stdout]      |
[INFO] [stdout] 1150 |     for block in blocks.iter() {
[INFO] [stdout]      |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_block`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]     --> src/lib.rs:1155:17
[INFO] [stdout]      |
[INFO] [stdout] 1155 |         let mut f = BufWriter::new(File::create(filename).unwrap());
[INFO] [stdout]      |                 ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/lib.rs:1155:13
[INFO] [stdout]      |
[INFO] [stdout] 1155 |         let mut f = BufWriter::new(File::create(filename).unwrap());
[INFO] [stdout]      |             ----^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]     --> src/lib.rs:1174:17
[INFO] [stdout]      |
[INFO] [stdout] 1174 |             let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]      |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `decoded`
[INFO] [stdout]     --> src/lib.rs:1195:9
[INFO] [stdout]      |
[INFO] [stdout] 1195 |     let decoded: Block = bincode::deserialize(&encoded[..]).unwrap();
[INFO] [stdout]      |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_decoded`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `blocks` is never read
[INFO] [stdout]    --> src/lib.rs:283:5
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub struct Mempool {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 283 |     blocks: RefCell<Vec<Block>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Mempool` has a derived impl for the trait `Debug`, 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: fields `target`, `vote`, `random`, and `publickey` are never read
[INFO] [stdout]    --> src/lib.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 313 | struct GoldenTicket {
[INFO] [stdout]     |        ------------ fields in this struct
[INFO] [stdout] 314 |     target: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 315 |     vote: u8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 316 |     random: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 317 |     publickey: PublicKey
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GoldenTicket` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `calculate_difficulty` and `calculate_paysplit` are never used
[INFO] [stdout]    --> src/lib.rs:321:8
[INFO] [stdout]     |
[INFO] [stdout] 320 | impl GoldenTicket {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] 321 |     fn calculate_difficulty (&self, previous_block: &Block) -> f32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     fn calculate_paysplit (&self, previous_block: &Block) -> f32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `calculate_to_amount` is never used
[INFO] [stdout]    --> src/lib.rs:436:8
[INFO] [stdout]     |
[INFO] [stdout] 366 | impl Transaction {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 436 |     fn calculate_to_amount(&self) -> f32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `genesis_ts` is never read
[INFO] [stdout]    --> src/lib.rs:908:5
[INFO] [stdout]     |
[INFO] [stdout] 907 | pub struct Blockchain {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] 908 |     genesis_ts: u128,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Blockchain` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_block` is never used
[INFO] [stdout]     --> src/lib.rs:1136:4
[INFO] [stdout]      |
[INFO] [stdout] 1136 | fn create_block() -> Block {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_blocks` is never used
[INFO] [stdout]     --> src/lib.rs:1149:4
[INFO] [stdout]      |
[INFO] [stdout] 1149 | fn write_blocks(blocks: &Vec<Block>) {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_blocks` is never used
[INFO] [stdout]     --> src/lib.rs:1164:4
[INFO] [stdout]      |
[INFO] [stdout] 1164 | fn read_blocks() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialize_and_deserialize` is never used
[INFO] [stdout]     --> src/lib.rs:1183:4
[INFO] [stdout]      |
[INFO] [stdout] 1183 | fn serialize_and_deserialize(block: &Block) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[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/lib.rs:343:10
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_TransactionType`
[INFO] [stdout] 344 | pub enum TransactionType {
[INFO] [stdout]     |          --------------- `TransactionType` 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/lib.rs:343:21
[INFO] [stdout]     |
[INFO] [stdout] 343 | #[derive(Serialize, Deserialize, PartialEq, Debug, Copy, Clone)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_TransactionType`
[INFO] [stdout] 344 | pub enum TransactionType {
[INFO] [stdout]     |          --------------- `TransactionType` 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/lib.rs:353:10
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[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] 354 | 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/lib.rs:353:21
[INFO] [stdout]     |
[INFO] [stdout] 353 | #[derive(Serialize, Deserialize, PartialEq, Debug)]
[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] 354 | pub struct Transaction {
[INFO] [stdout]     |            ----------- `Transaction` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/lib.rs:519:10
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Slip`
[INFO] [stdout] 520 | pub struct Slip {
[INFO] [stdout]     |            ---- `Slip` 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/lib.rs:519:21
[INFO] [stdout]     |
[INFO] [stdout] 519 | #[derive(Serialize, Deserialize, PartialEq, Clone, Debug)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Slip`
[INFO] [stdout] 520 | pub struct Slip {
[INFO] [stdout]     |            ---- `Slip` 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/lib.rs:685:10
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |          ^--------
[INFO] [stdout]     |          |
[INFO] [stdout]     |          `Serialize` is not local
[INFO] [stdout]     |          move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Block`
[INFO] [stdout] 686 | 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/lib.rs:685:21
[INFO] [stdout]     |
[INFO] [stdout] 685 | #[derive(Serialize, Deserialize, PartialEq, Debug, Clone)]
[INFO] [stdout]     |                     ^----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `Deserialize` is not local
[INFO] [stdout]     |                     move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Block`
[INFO] [stdout] 686 | 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: unused `Result` that must be used
[INFO] [stdout]    --> src/lib.rs:879:9
[INFO] [stdout]     |
[INFO] [stdout] 879 |         f.write_all(&encode[..]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 879 |         let _ = f.write_all(&encode[..]);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1003:9
[INFO] [stdout]      |
[INFO] [stdout] 1003 |         f.write_all(&encode[..]);
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1003 |         let _ = f.write_all(&encode[..]);
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> src/lib.rs:1187:5
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     f.write_all(&encode[..]);
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1187 |     let _ = f.write_all(&encode[..]);
[INFO] [stdout]      |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.51s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "9199ac4b35ab9876ec756ab4d257b71c80d3a4c321d86dd084d4aa0ac960a882", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9199ac4b35ab9876ec756ab4d257b71c80d3a4c321d86dd084d4aa0ac960a882", kill_on_drop: false }`
[INFO] [stdout] 9199ac4b35ab9876ec756ab4d257b71c80d3a4c321d86dd084d4aa0ac960a882
