[INFO] cloning repository https://github.com/Kevingislason/rust_bitcoin_hardware_wallet_demos
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Kevingislason/rust_bitcoin_hardware_wallet_demos" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKevingislason%2Frust_bitcoin_hardware_wallet_demos", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKevingislason%2Frust_bitcoin_hardware_wallet_demos'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b3f36a6b856cce40e99f81289c96a8bca040a3cb
[INFO] checking Kevingislason/rust_bitcoin_hardware_wallet_demos against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKevingislason%2Frust_bitcoin_hardware_wallet_demos" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Kevingislason/rust_bitcoin_hardware_wallet_demos
[INFO] finished tweaking git repo https://github.com/Kevingislason/rust_bitcoin_hardware_wallet_demos
[INFO] tweaked toml for git repo https://github.com/Kevingislason/rust_bitcoin_hardware_wallet_demos written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Kevingislason/rust_bitcoin_hardware_wallet_demos on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 46 packages to latest compatible versions
[INFO] [stderr]       Adding auto_ops v0.1.0 (available: v0.3.0)
[INFO] [stderr]       Adding bit-vec v0.6.3 (available: v0.8.0)
[INFO] [stderr]       Adding bitcoin v0.19.2 (available: v0.32.7)
[INFO] [stderr]       Adding cc v1.0.26 (available: v1.2.45)
[INFO] [stderr]       Adding hashbrown v0.7.2 (available: v0.16.0)
[INFO] [stderr]       Adding hmac v0.7.1 (available: v0.12.1)
[INFO] [stderr]       Adding num v0.2.1 (available: v0.4.3)
[INFO] [stderr]       Adding pbkdf2 v0.3.0 (available: v0.12.2)
[INFO] [stderr]       Adding ripemd160 v0.8.0 (available: v0.10.0)
[INFO] [stderr]       Adding sha2 v0.8.2 (available: v0.10.9)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ripemd160 v0.8.0
[INFO] [stderr]   Downloaded cc v1.0.26
[INFO] [stderr]   Downloaded auto_ops v0.1.0
[INFO] [stderr]   Downloaded secp256k1 v0.12.2
[INFO] [stderr]   Downloaded genio v0.2.1
[INFO] [stderr]   Downloaded bitcoin v0.19.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c90564fbb235f71e4e6f0b8616c83568bf0a18261bbe4fbd4942feb41c957047
[INFO] running `Command { std: "docker" "start" "-a" "c90564fbb235f71e4e6f0b8616c83568bf0a18261bbe4fbd4942feb41c957047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c90564fbb235f71e4e6f0b8616c83568bf0a18261bbe4fbd4942feb41c957047", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c90564fbb235f71e4e6f0b8616c83568bf0a18261bbe4fbd4942feb41c957047", kill_on_drop: false }`
[INFO] [stdout] c90564fbb235f71e4e6f0b8616c83568bf0a18261bbe4fbd4942feb41c957047
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 411fccf1c6ce1e11ebfe292fb048beb18f2b824e07d98bf77a95cfbbb256dfa1
[INFO] running `Command { std: "docker" "start" "-a" "411fccf1c6ce1e11ebfe292fb048beb18f2b824e07d98bf77a95cfbbb256dfa1", kill_on_drop: false }`
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling cc v1.0.26
[INFO] [stderr]    Compiling crunchy v0.1.6
[INFO] [stderr]     Checking subtle v1.0.0
[INFO] [stderr]    Compiling hashbrown v0.7.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking opaque-debug v0.2.3
[INFO] [stderr]     Checking ahash v0.3.8
[INFO] [stderr]     Checking hex v0.3.2
[INFO] [stderr]     Checking bech32 v0.7.3
[INFO] [stderr]     Checking bitcoin_hashes v0.7.6
[INFO] [stderr]     Checking genio v0.2.1
[INFO] [stderr]     Checking bigint v4.4.3
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking auto_ops v0.1.0
[INFO] [stderr]    Compiling secp256k1 v0.12.2
[INFO] [stderr]     Checking generic-array v0.12.4
[INFO] [stderr]     Checking digest v0.8.1
[INFO] [stderr]     Checking crypto-mac v0.7.0
[INFO] [stderr]     Checking block-buffer v0.7.3
[INFO] [stderr]     Checking pbkdf2 v0.3.0
[INFO] [stderr]     Checking hmac v0.7.1
[INFO] [stderr]     Checking sha2 v0.8.2
[INFO] [stderr]     Checking ripemd160 v0.8.0
[INFO] [stderr]     Checking bitcoin v0.19.2
[INFO] [stderr]     Checking rust_bitcoin_hardware_wallet_demos v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on macro calls
[INFO] [stdout]   --> src/ecc.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[macro_use]
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `U256_from_hex_str`
[INFO] [stdout]  --> src/ecc.rs:9:56
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::helpers::{encode_base58_checksum, hash_160, U256_from_hex_str};
[INFO] [stdout]   |                                                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num::pow::pow`
[INFO] [stdout]   --> src/ecc.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use num::pow::pow;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_160`
[INFO] [stdout]  --> src/hd_wallet.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::helpers::{hash_160, hmac_512};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryInto`
[INFO] [stdout]  --> src/helpers.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use core::convert::{From, TryInto};
[INFO] [stdout]   |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hd_wallet::HDSeed`
[INFO] [stdout]  --> src/seed_phrase.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::hd_wallet::HDSeed;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_int_pow` has been stable since 1.50.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_int_pow)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[macro_use]` attribute cannot be used on macro calls
[INFO] [stdout]   --> src/ecc.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[macro_use]
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[macro_use]` can be applied to crates, extern crates, and modules
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_160`
[INFO] [stdout]  --> src/hd_wallet.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::helpers::{hash_160, hmac_512};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryInto`
[INFO] [stdout]  --> src/helpers.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use core::convert::{From, TryInto};
[INFO] [stdout]   |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_int_pow` has been stable since 1.50.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_int_pow)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> src/ecc.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ecc.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |         let mut y_bytes = vec![0; 32];
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/hd_wallet.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut hardened_children = HashMap::new();
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/hd_wallet.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let mut unhardened_children = HashMap::new();
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extended_private_key`
[INFO] [stdout]    --> src/hd_wallet.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |     if let Some(extended_private_key) = self.hardened_children.get(&new_child_number) {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extended_private_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extended_private_key`
[INFO] [stdout]    --> src/hd_wallet.rs:187:17
[INFO] [stdout]     |
[INFO] [stdout] 187 |     if let Some(extended_private_key) = self.unhardened_children.get(&new_child_number) {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extended_private_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/helpers.rs:123:7
[INFO] [stdout]     |
[INFO] [stdout] 123 |   let mut combined = &combined[7..32];
[INFO] [stdout]     |       ----^^^^^^^^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word_index`
[INFO] [stdout]   --> src/seed_phrase.rs:93:10
[INFO] [stdout]    |
[INFO] [stdout] 93 |     for (word_index, word) in self.words().iter().enumerate() {
[INFO] [stdout]    |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_word_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/ecc.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     &self.num.to_big_endian(&mut num_bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let _ = &self.num.to_big_endian(&mut num_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/ecc.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     &self.prime.to_big_endian(&mut vec_bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let _ = &self.prime.to_big_endian(&mut vec_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout] 248 |     reader.read_exact(&mut version_bytes);
[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] 248 |     let _ = reader.read_exact(&mut version_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     reader.read_exact(&mut fingerprint_bytes);
[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] 250 |     let _ = reader.read_exact(&mut fingerprint_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 |     reader.read_exact(&mut chain_code_bytes);
[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] 252 |     let _ = reader.read_exact(&mut chain_code_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:253:5
[INFO] [stdout]     |
[INFO] [stdout] 253 |     reader.read_exact(&mut private_key_bytes);
[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] 253 |     let _ = reader.read_exact(&mut private_key_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `U256_from_hex_str` should have a snake case name
[INFO] [stdout]    --> src/helpers.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub fn U256_from_hex_str(hex_str: &str) -> U256 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `u256_from_hex_str`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ecc.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |         let mut y_bytes = vec![0; 32];
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/hd_wallet.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     let mut hardened_children = HashMap::new();
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/hd_wallet.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     let mut unhardened_children = HashMap::new();
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extended_private_key`
[INFO] [stdout]    --> src/hd_wallet.rs:134:17
[INFO] [stdout]     |
[INFO] [stdout] 134 |     if let Some(extended_private_key) = self.hardened_children.get(&new_child_number) {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extended_private_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extended_private_key`
[INFO] [stdout]    --> src/hd_wallet.rs:187:17
[INFO] [stdout]     |
[INFO] [stdout] 187 |     if let Some(extended_private_key) = self.unhardened_children.get(&new_child_number) {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extended_private_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/helpers.rs:123:7
[INFO] [stdout]     |
[INFO] [stdout] 123 |   let mut combined = &combined[7..32];
[INFO] [stdout]     |       ----^^^^^^^^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `word_index`
[INFO] [stdout]   --> src/seed_phrase.rs:93:10
[INFO] [stdout]    |
[INFO] [stdout] 93 |     for (word_index, word) in self.words().iter().enumerate() {
[INFO] [stdout]    |          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_word_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/ecc.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 101 |     &self.num.to_big_endian(&mut num_bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let _ = &self.num.to_big_endian(&mut num_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused borrow that must be used
[INFO] [stdout]    --> src/ecc.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     &self.prime.to_big_endian(&mut vec_bytes);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let _ = &self.prime.to_big_endian(&mut vec_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout] 248 |     reader.read_exact(&mut version_bytes);
[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] 248 |     let _ = reader.read_exact(&mut version_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     reader.read_exact(&mut fingerprint_bytes);
[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] 250 |     let _ = reader.read_exact(&mut fingerprint_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:252:5
[INFO] [stdout]     |
[INFO] [stdout] 252 |     reader.read_exact(&mut chain_code_bytes);
[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] 252 |     let _ = reader.read_exact(&mut chain_code_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/hd_wallet.rs:253:5
[INFO] [stdout]     |
[INFO] [stdout] 253 |     reader.read_exact(&mut private_key_bytes);
[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] 253 |     let _ = reader.read_exact(&mut private_key_bytes);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `U256_from_hex_str` should have a snake case name
[INFO] [stdout]    --> src/helpers.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub fn U256_from_hex_str(hex_str: &str) -> U256 {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `u256_from_hex_str`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_U256_from_hex_str` should have a snake case name
[INFO] [stdout]    --> src/helpers.rs:177:8
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub fn test_U256_from_hex_str() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `test_u256_from_hex_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `max_U256` should have a snake case name
[INFO] [stdout]    --> src/helpers.rs:178:7
[INFO] [stdout]     |
[INFO] [stdout] 178 |   let max_U256 = U256::MAX;
[INFO] [stdout]     |       ^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `max_u256`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `U256_max_str` should have a snake case name
[INFO] [stdout]    --> src/helpers.rs:179:7
[INFO] [stdout]     |
[INFO] [stdout] 179 |   let U256_max_str = &"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff";
[INFO] [stdout]     |       ^^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `u256_max_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.46s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: bigint v4.4.3
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 6`
[INFO] running `Command { std: "docker" "inspect" "411fccf1c6ce1e11ebfe292fb048beb18f2b824e07d98bf77a95cfbbb256dfa1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "411fccf1c6ce1e11ebfe292fb048beb18f2b824e07d98bf77a95cfbbb256dfa1", kill_on_drop: false }`
[INFO] [stdout] 411fccf1c6ce1e11ebfe292fb048beb18f2b824e07d98bf77a95cfbbb256dfa1
