[INFO] cloning repository https://github.com/duanbing/xchain-rust-crypto
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/duanbing/xchain-rust-crypto" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduanbing%2Fxchain-rust-crypto", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduanbing%2Fxchain-rust-crypto'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a0fe47d2f10c9c7b886e38163dfe57be794f9021
[INFO] testing duanbing/xchain-rust-crypto against beta-2023-04-20 for beta-1.70-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduanbing%2Fxchain-rust-crypto" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/duanbing/xchain-rust-crypto on toolchain beta-2023-04-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/duanbing/xchain-rust-crypto
[INFO] finished tweaking git repo https://github.com/duanbing/xchain-rust-crypto
[INFO] tweaked toml for git repo https://github.com/duanbing/xchain-rust-crypto written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/duanbing/xchain-rust-crypto 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" "+beta-2023-04-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ed633a55a3665e231399b3e7fa7a281ba7a5e117eae25a54f9c9a16efcce8af0
[INFO] running `Command { std: "docker" "start" "-a" "ed633a55a3665e231399b3e7fa7a281ba7a5e117eae25a54f9c9a16efcce8af0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ed633a55a3665e231399b3e7fa7a281ba7a5e117eae25a54f9c9a16efcce8af0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed633a55a3665e231399b3e7fa7a281ba7a5e117eae25a54f9c9a16efcce8af0", kill_on_drop: false }`
[INFO] [stdout] ed633a55a3665e231399b3e7fa7a281ba7a5e117eae25a54f9c9a16efcce8af0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b70b08d38e4d4e26934291c0b5a5f8bc19b387d5e240c4a2142b35376256ad11
[INFO] running `Command { std: "docker" "start" "-a" "b70b08d38e4d4e26934291c0b5a5f8bc19b387d5e240c4a2142b35376256ad11", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.69
[INFO] [stderr]    Compiling autocfg v1.0.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.10
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.17
[INFO] [stderr]    Compiling getrandom v0.1.14
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling serde v1.0.106
[INFO] [stderr]    Compiling memchr v2.3.3
[INFO] [stderr]    Compiling cc v1.0.50
[INFO] [stderr]    Compiling ryu v1.0.3
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]    Compiling ppv-lite86 v0.2.6
[INFO] [stderr]    Compiling untrusted v0.7.0
[INFO] [stderr]    Compiling itoa v0.4.5
[INFO] [stderr]    Compiling regex-syntax v0.6.18
[INFO] [stderr]    Compiling thread_local v1.0.1
[INFO] [stderr]    Compiling spin v0.5.2
[INFO] [stderr]    Compiling rustc-serialize v0.3.24
[INFO] [stderr]    Compiling base58 v0.1.0
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]    Compiling num-integer v0.1.42
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling aho-corasick v0.7.10
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]    Compiling quote v1.0.3
[INFO] [stderr]    Compiling ring v0.16.12
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling time v0.1.43
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling regex v1.3.9
[INFO] [stderr]    Compiling serde_derive v1.0.106
[INFO] [stderr]    Compiling serde_json v1.0.51
[INFO] [stderr]    Compiling xchain-rust-crypto v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `int` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) type int = i32;
[INFO] [stdout]    |                 ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Int`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `uint` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(crate) type uint = u32;
[INFO] [stdout]    |                 ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Uint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `size_t` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) type size_t = usize;
[INFO] [stdout]    |                 ^^^^^^ help: convert the identifier to upper camel case: `SizeT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/languages.rs:10:41
[INFO] [stdout]    |
[INFO] [stdout] 10 |     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stdout]    |                                         ^^                                                           ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 10 -     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stdout] 10 +     static ref WORDLIST_S_CH: WordMap = load_wordlist(include_str!("langs/simplified_chinese.txt"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/languages.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 |     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stdout]    |                                       ^^                                                ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 11 -     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stdout] 11 +     static ref WORDLIST_EN: WordMap = load_wordlist(include_str!("langs/english.txt"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stdout]    |         ^^                                           ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 11 -         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stdout] 11 +         num_bigint::BigInt::from_i32(2048).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stdout]    |         ^^                                           ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 13 -         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stdout] 13 +         num_bigint::BigInt::from_i32(2047).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stdout]    |                                                      ^^                        ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 14 -     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stdout] 14 +     pub static ref BIGINT_ZERO: num_bigint::BigInt = num_traits::Zero::zero();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:15:53
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stdout]    |                                                     ^^                      ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 15 -     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stdout] 15 +     pub static ref BIGINT_ONE: num_bigint::BigInt = num_traits::One::one();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:16:53
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stdout]    |                                                     ^^                                        ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 16 -     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stdout] 16 +     pub static ref BIGINT_TWO: num_bigint::BigInt = num_bigint::BigInt::from_i32(2).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ECDSA_P256_SHA256_ASN1_SIGNING` should have an upper camel case name
[INFO] [stdout]   --> src/ec/suite_b/ecdsa/signing.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ECDSA_P256_SHA256_ASN1_SIGNING,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1Signing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ECDSA_P256_SHA256_ASN1` should have an upper camel case name
[INFO] [stdout]   --> src/ec/suite_b/ecdsa/verification.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ECDSA_P256_SHA256_ASN1,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::arithmetic::montgomery::R`
[INFO] [stdout]  --> src/ec/suite_b/ecies.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::arithmetic::montgomery::R;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:81:44
[INFO] [stdout]    |
[INFO] [stdout] 81 |         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stdout]    |                                               ^                                                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stdout] 81 +         ErrorKind::ErrInvalidEntropyLength => "Entropy length must within [128, 256] and be multiples of 32",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:84:44
[INFO] [stdout]    |
[INFO] [stdout] 84 |         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stdout]    |                                               ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 84 -         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stdout] 84 +         ErrorKind::ErrStrengthNotSupported => "This strength has not been supported yet.",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stdout]    |                                               ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 88 -         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stdout] 88 +         ErrorKind::ErrLanguageNotSupported => "This language has not been supported yet.",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:90:43
[INFO] [stdout]    |
[INFO] [stdout] 90 | ...cNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stdout]    |                    ^                                                                                                   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 -         ErrorKind::ErrMnemonicNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stdout] 90 +         ErrorKind::ErrMnemonicNumNotValid => "The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:92:49
[INFO] [stdout]    |
[INFO] [stdout] 92 |         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stdout]    |                                                    ^                                                     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stdout] 92 +         ErrorKind::ErrMnemonicChecksumIncorrect => "The checksum within the Mnemonic sentence incorrect",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entropy` is never read
[INFO] [stdout]   --> src/account/account.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct ECDSAAccount {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 18 |     entropy: Vec<u8>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ECDSAAccount` 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: type alias `uint` is never used
[INFO] [stdout]   --> src/c.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(crate) type uint = u32;
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generate_private_key` is never read
[INFO] [stdout]   --> src/ec.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Curve {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `generate` is never used
[INFO] [stdout]   --> src/ec/keys.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl Seed {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 29 |     pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result<Self> {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unary_op_from_binary_op_assign` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/elem.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub fn unary_op_from_binary_op_assign<M, E: Encoding>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PUBLIC_KEY_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub static PUBLIC_KEY_OPS: PublicKeyOps = PublicKeyOps {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `SCALAR_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub static SCALAR_OPS: ScalarOps = ScalarOps {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PUBLIC_SCALAR_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub static PUBLIC_SCALAR_OPS: PublicScalarOps = PublicScalarOps {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PRIVATE_SCALAR_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p384_scalar_inv_to_mont` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:193:4
[INFO] [stdout]     |
[INFO] [stdout] 193 | fn p384_scalar_inv_to_mont(a: &Scalar<Unencoded>) -> Scalar<R> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `N_RR_LIMBS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:336:7
[INFO] [stdout]     |
[INFO] [stdout] 336 | const N_RR_LIMBS: [Limb; MAX_LIMBS] = p384_limbs![
[INFO] [stdout]     |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `GFp_p384_scalar_mul_mont` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:365:8
[INFO] [stdout]     |
[INFO] [stdout] 365 |     fn GFp_p384_scalar_mul_mont(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `zero` is never used
[INFO] [stdout]   --> src/io/writer.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl LengthMeasurement {
[INFO] [stdout]    | ---------------------- associated function in this implementation
[INFO] [stdout] 33 |     pub fn zero() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_capacity` is never used
[INFO] [stdout]   --> src/io/writer.rs:53:19
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl Writer {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 53 |     pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_copy` is never used
[INFO] [stdout]   --> src/io/writer.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn write_copy(accumulator: &mut dyn Accumulator, to_copy: untrusted::Input) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_positive_integer` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) fn write_positive_integer(output: &mut dyn Accumulator, value: &Positive) {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_all` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn write_all(tag: Tag, write_value: &dyn Fn(&mut dyn Accumulator)) -> Box<[u8]> {
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_tlv` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn write_tlv<F>(output: &mut dyn Accumulator, tag: Tag, write_value: F)
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/account/address.rs:31:27
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout]    |                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 31 - pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout] 31 + pub type PublicKey<'a, B> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     oneRR: One<M, RR>,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:278:13
[INFO] [stdout]     |
[INFO] [stdout] 278 |         let oneRR = {
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn oneRR(&self) -> &One<M, RR> {
[INFO] [stdout]     |            ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:622:8
[INFO] [stdout]     |
[INFO] [stdout] 622 |     fn newRR(m: &PartialModulus<M>, m_bits: bits::BitLength) -> Self {
[INFO] [stdout]     |        ^^^^^ help: convert the identifier to snake case: `new_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `RR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:652:13
[INFO] [stdout]     |
[INFO] [stdout] 652 |         let RR = elem_exp_vartime_(base, exponent, m);
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dP` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:785:13
[INFO] [stdout]     |
[INFO] [stdout] 785 |         let dP = BoxedLimbs::from_be_bytes_padded_less_than(input, p)?;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `d_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `GFp_p384_elem_sqr_mont` should have a snake case name
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:328:22
[INFO] [stdout]     |
[INFO] [stdout] 328 | unsafe extern "C" fn GFp_p384_elem_sqr_mont(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `gfp_p384_elem_sqr_mont`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 12.80s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: rustc-serialize v0.3.24
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "b70b08d38e4d4e26934291c0b5a5f8bc19b387d5e240c4a2142b35376256ad11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b70b08d38e4d4e26934291c0b5a5f8bc19b387d5e240c4a2142b35376256ad11", kill_on_drop: false }`
[INFO] [stdout] b70b08d38e4d4e26934291c0b5a5f8bc19b387d5e240c4a2142b35376256ad11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b92f417c3438794695b606facf6f8250c12e38bf6687d8a3e9d434d2e6f952c3
[INFO] running `Command { std: "docker" "start" "-a" "b92f417c3438794695b606facf6f8250c12e38bf6687d8a3e9d434d2e6f952c3", kill_on_drop: false }`
[INFO] [stderr]    Compiling base64 v0.12.1
[INFO] [stderr]    Compiling hex v0.4.2
[INFO] [stdout] warning: type `int` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) type int = i32;
[INFO] [stdout]    |                 ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Int`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `uint` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(crate) type uint = u32;
[INFO] [stdout]    |                 ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Uint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `size_t` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) type size_t = usize;
[INFO] [stdout]    |                 ^^^^^^ help: convert the identifier to upper camel case: `SizeT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/languages.rs:10:41
[INFO] [stdout]    |
[INFO] [stdout] 10 |     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stdout]    |                                         ^^                                                           ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 10 -     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stdout] 10 +     static ref WORDLIST_S_CH: WordMap = load_wordlist(include_str!("langs/simplified_chinese.txt"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/languages.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 |     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stdout]    |                                       ^^                                                ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 11 -     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stdout] 11 +     static ref WORDLIST_EN: WordMap = load_wordlist(include_str!("langs/english.txt"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stdout]    |         ^^                                           ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 11 -         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stdout] 11 +         num_bigint::BigInt::from_i32(2048).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stdout]    |         ^^                                           ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 13 -         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stdout] 13 +         num_bigint::BigInt::from_i32(2047).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stdout]    |                                                      ^^                        ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 14 -     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stdout] 14 +     pub static ref BIGINT_ZERO: num_bigint::BigInt = num_traits::Zero::zero();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:15:53
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stdout]    |                                                     ^^                      ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 15 -     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stdout] 15 +     pub static ref BIGINT_ONE: num_bigint::BigInt = num_traits::One::one();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:16:53
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stdout]    |                                                     ^^                                        ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 16 -     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stdout] 16 +     pub static ref BIGINT_TWO: num_bigint::BigInt = num_bigint::BigInt::from_i32(2).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ECDSA_P256_SHA256_ASN1_SIGNING` should have an upper camel case name
[INFO] [stdout]   --> src/ec/suite_b/ecdsa/signing.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ECDSA_P256_SHA256_ASN1_SIGNING,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1Signing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ECDSA_P256_SHA256_ASN1` should have an upper camel case name
[INFO] [stdout]   --> src/ec/suite_b/ecdsa/verification.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ECDSA_P256_SHA256_ASN1,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::arithmetic::montgomery::R`
[INFO] [stdout]  --> src/ec/suite_b/ecies.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::arithmetic::montgomery::R;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:81:44
[INFO] [stdout]    |
[INFO] [stdout] 81 |         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stdout]    |                                               ^                                                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stdout] 81 +         ErrorKind::ErrInvalidEntropyLength => "Entropy length must within [128, 256] and be multiples of 32",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:84:44
[INFO] [stdout]    |
[INFO] [stdout] 84 |         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stdout]    |                                               ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 84 -         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stdout] 84 +         ErrorKind::ErrStrengthNotSupported => "This strength has not been supported yet.",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stdout]    |                                               ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 88 -         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stdout] 88 +         ErrorKind::ErrLanguageNotSupported => "This language has not been supported yet.",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:90:43
[INFO] [stdout]    |
[INFO] [stdout] 90 | ...cNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stdout]    |                    ^                                                                                                   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 -         ErrorKind::ErrMnemonicNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stdout] 90 +         ErrorKind::ErrMnemonicNumNotValid => "The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:92:49
[INFO] [stdout]    |
[INFO] [stdout] 92 |         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stdout]    |                                                    ^                                                     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stdout] 92 +         ErrorKind::ErrMnemonicChecksumIncorrect => "The checksum within the Mnemonic sentence incorrect",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entropy` is never read
[INFO] [stdout]   --> src/account/account.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct ECDSAAccount {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 18 |     entropy: Vec<u8>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ECDSAAccount` 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: type alias `uint` is never used
[INFO] [stdout]   --> src/c.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(crate) type uint = u32;
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `generate_private_key` is never read
[INFO] [stdout]   --> src/ec.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Curve {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `generate` is never used
[INFO] [stdout]   --> src/ec/keys.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl Seed {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 29 |     pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result<Self> {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unary_op_from_binary_op_assign` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/elem.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub fn unary_op_from_binary_op_assign<M, E: Encoding>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PUBLIC_KEY_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub static PUBLIC_KEY_OPS: PublicKeyOps = PublicKeyOps {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `SCALAR_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:161:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub static SCALAR_OPS: ScalarOps = ScalarOps {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PUBLIC_SCALAR_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:167:12
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub static PUBLIC_SCALAR_OPS: PublicScalarOps = PublicScalarOps {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PRIVATE_SCALAR_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `p384_scalar_inv_to_mont` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:193:4
[INFO] [stdout]     |
[INFO] [stdout] 193 | fn p384_scalar_inv_to_mont(a: &Scalar<Unencoded>) -> Scalar<R> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `N_RR_LIMBS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:336:7
[INFO] [stdout]     |
[INFO] [stdout] 336 | const N_RR_LIMBS: [Limb; MAX_LIMBS] = p384_limbs![
[INFO] [stdout]     |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `GFp_p384_scalar_mul_mont` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:365:8
[INFO] [stdout]     |
[INFO] [stdout] 365 |     fn GFp_p384_scalar_mul_mont(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `zero` is never used
[INFO] [stdout]   --> src/io/writer.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl LengthMeasurement {
[INFO] [stdout]    | ---------------------- associated function in this implementation
[INFO] [stdout] 33 |     pub fn zero() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_capacity` is never used
[INFO] [stdout]   --> src/io/writer.rs:53:19
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl Writer {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 53 |     pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_copy` is never used
[INFO] [stdout]   --> src/io/writer.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn write_copy(accumulator: &mut dyn Accumulator, to_copy: untrusted::Input) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_positive_integer` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) fn write_positive_integer(output: &mut dyn Accumulator, value: &Positive) {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_all` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn write_all(tag: Tag, write_value: &dyn Fn(&mut dyn Accumulator)) -> Box<[u8]> {
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_tlv` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn write_tlv<F>(output: &mut dyn Accumulator, tag: Tag, write_value: F)
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/account/address.rs:31:27
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout]    |                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 31 - pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout] 31 + pub type PublicKey<'a, B> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     oneRR: One<M, RR>,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:278:13
[INFO] [stdout]     |
[INFO] [stdout] 278 |         let oneRR = {
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn oneRR(&self) -> &One<M, RR> {
[INFO] [stdout]     |            ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:622:8
[INFO] [stdout]     |
[INFO] [stdout] 622 |     fn newRR(m: &PartialModulus<M>, m_bits: bits::BitLength) -> Self {
[INFO] [stdout]     |        ^^^^^ help: convert the identifier to snake case: `new_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `RR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:652:13
[INFO] [stdout]     |
[INFO] [stdout] 652 |         let RR = elem_exp_vartime_(base, exponent, m);
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dP` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:785:13
[INFO] [stdout]     |
[INFO] [stdout] 785 |         let dP = BoxedLimbs::from_be_bytes_padded_less_than(input, p)?;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `d_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `GFp_p384_elem_sqr_mont` should have a snake case name
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:328:22
[INFO] [stdout]     |
[INFO] [stdout] 328 | unsafe extern "C" fn GFp_p384_elem_sqr_mont(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `gfp_p384_elem_sqr_mont`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 44 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling xchain-rust-crypto v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `int` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub(crate) type int = i32;
[INFO] [stdout]    |                 ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Int`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `uint` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub(crate) type uint = u32;
[INFO] [stdout]    |                 ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Uint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `size_t` should have an upper camel case name
[INFO] [stdout]   --> src/c.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) type size_t = usize;
[INFO] [stdout]    |                 ^^^^^^ help: convert the identifier to upper camel case: `SizeT`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/languages.rs:10:41
[INFO] [stdout]    |
[INFO] [stdout] 10 |     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stdout]    |                                         ^^                                                           ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 10 -     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stdout] 10 +     static ref WORDLIST_S_CH: WordMap = load_wordlist(include_str!("langs/simplified_chinese.txt"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/languages.rs:11:39
[INFO] [stdout]    |
[INFO] [stdout] 11 |     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stdout]    |                                       ^^                                                ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 11 -     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stdout] 11 +     static ref WORDLIST_EN: WordMap = load_wordlist(include_str!("langs/english.txt"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stdout]    |         ^^                                           ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 11 -         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stdout] 11 +         num_bigint::BigInt::from_i32(2048).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stdout]    |         ^^                                           ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 13 -         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stdout] 13 +         num_bigint::BigInt::from_i32(2047).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:14:54
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stdout]    |                                                      ^^                        ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 14 -     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stdout] 14 +     pub static ref BIGINT_ZERO: num_bigint::BigInt = num_traits::Zero::zero();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:15:53
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stdout]    |                                                     ^^                      ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 15 -     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stdout] 15 +     pub static ref BIGINT_ONE: num_bigint::BigInt = num_traits::One::one();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> src/hdwallet/rand.rs:16:53
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stdout]    |                                                     ^^                                        ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 16 -     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stdout] 16 +     pub static ref BIGINT_TWO: num_bigint::BigInt = num_bigint::BigInt::from_i32(2).unwrap();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]    --> src/sign/ecdsa.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 134 |     use std::str::FromStr;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: duplicated attribute
[INFO] [stdout]     --> src/arithmetic/bigint.rs:1309:5
[INFO] [stdout]      |
[INFO] [stdout] 1309 |     #[test]
[INFO] [stdout]      |     ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(duplicate_macro_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ECDSA_P256_SHA256_ASN1_SIGNING` should have an upper camel case name
[INFO] [stdout]   --> src/ec/suite_b/ecdsa/signing.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ECDSA_P256_SHA256_ASN1_SIGNING,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1Signing`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `ECDSA_P256_SHA256_ASN1` should have an upper camel case name
[INFO] [stdout]   --> src/ec/suite_b/ecdsa/verification.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     ECDSA_P256_SHA256_ASN1,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::arithmetic::montgomery::R`
[INFO] [stdout]  --> src/ec/suite_b/ecies.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::arithmetic::montgomery::R;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]    --> src/ec/suite_b/ecies.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |     use std::str::FromStr;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:81:44
[INFO] [stdout]    |
[INFO] [stdout] 81 |         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stdout]    |                                               ^                                                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stdout] 81 +         ErrorKind::ErrInvalidEntropyLength => "Entropy length must within [128, 256] and be multiples of 32",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:84:44
[INFO] [stdout]    |
[INFO] [stdout] 84 |         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stdout]    |                                               ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 84 -         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stdout] 84 +         ErrorKind::ErrStrengthNotSupported => "This strength has not been supported yet.",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stdout]    |                                               ^                                           ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 88 -         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stdout] 88 +         ErrorKind::ErrLanguageNotSupported => "This language has not been supported yet.",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:90:43
[INFO] [stdout]    |
[INFO] [stdout] 90 | ...cNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stdout]    |                    ^                                                                                                   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 -         ErrorKind::ErrMnemonicNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stdout] 90 +         ErrorKind::ErrMnemonicNumNotValid => "The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/errors.rs:92:49
[INFO] [stdout]    |
[INFO] [stdout] 92 |         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stdout]    |                                                    ^                                                     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stdout] 92 +         ErrorKind::ErrMnemonicChecksumIncorrect => "The checksum within the Mnemonic sentence incorrect",
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entropy` is never read
[INFO] [stdout]   --> src/account/account.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct ECDSAAccount {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 18 |     entropy: Vec<u8>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ECDSAAccount` 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: field `generate_private_key` is never read
[INFO] [stdout]   --> src/ec.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Curve {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `generate` is never used
[INFO] [stdout]   --> src/ec/keys.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl Seed {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 29 |     pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result<Self> {
[INFO] [stdout]    |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PRIVATE_SCALAR_OPS` is never used
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:183:12
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `zero` is never used
[INFO] [stdout]   --> src/io/writer.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl LengthMeasurement {
[INFO] [stdout]    | ---------------------- associated function in this implementation
[INFO] [stdout] 33 |     pub fn zero() -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_capacity` is never used
[INFO] [stdout]   --> src/io/writer.rs:53:19
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl Writer {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 53 |     pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_copy` is never used
[INFO] [stdout]   --> src/io/writer.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub fn write_copy(accumulator: &mut dyn Accumulator, to_copy: untrusted::Input) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_positive_integer` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) fn write_positive_integer(output: &mut dyn Accumulator, value: &Positive) {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_all` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:29:15
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn write_all(tag: Tag, write_value: &dyn Fn(&mut dyn Accumulator)) -> Box<[u8]> {
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_tlv` is never used
[INFO] [stdout]   --> src/io/der_writer.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn write_tlv<F>(output: &mut dyn Accumulator, tag: Tag, write_value: F)
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/account/address.rs:31:27
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout]    |                           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 31 - pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout] 31 + pub type PublicKey<'a, B> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     oneRR: One<M, RR>,
[INFO] [stdout]     |     ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:278:13
[INFO] [stdout]     |
[INFO] [stdout] 278 |         let oneRR = {
[INFO] [stdout]     |             ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `oneRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn oneRR(&self) -> &One<M, RR> {
[INFO] [stdout]     |            ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `newRR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:622:8
[INFO] [stdout]     |
[INFO] [stdout] 622 |     fn newRR(m: &PartialModulus<M>, m_bits: bits::BitLength) -> Self {
[INFO] [stdout]     |        ^^^^^ help: convert the identifier to snake case: `new_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `RR` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:652:13
[INFO] [stdout]     |
[INFO] [stdout] 652 |         let RR = elem_exp_vartime_(base, exponent, m);
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `dP` should have a snake case name
[INFO] [stdout]    --> src/arithmetic/bigint.rs:785:13
[INFO] [stdout]     |
[INFO] [stdout] 785 |         let dP = BoxedLimbs::from_be_bytes_padded_less_than(input, p)?;
[INFO] [stdout]     |             ^^ help: convert the identifier to snake case: `d_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `oneRR` should have a snake case name
[INFO] [stdout]     --> src/arithmetic/bigint.rs:1370:21
[INFO] [stdout]      |
[INFO] [stdout] 1370 |                 let oneRR = m.oneRR();
[INFO] [stdout]      |                     ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `GFp_p384_elem_sqr_mont` should have a snake case name
[INFO] [stdout]    --> src/ec/suite_b/ops/p384.rs:328:22
[INFO] [stdout]     |
[INFO] [stdout] 328 | unsafe extern "C" fn GFp_p384_elem_sqr_mont(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `gfp_p384_elem_sqr_mont`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 40 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.17s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: rustc-serialize v0.3.24
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "b92f417c3438794695b606facf6f8250c12e38bf6687d8a3e9d434d2e6f952c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b92f417c3438794695b606facf6f8250c12e38bf6687d8a3e9d434d2e6f952c3", kill_on_drop: false }`
[INFO] [stdout] b92f417c3438794695b606facf6f8250c12e38bf6687d8a3e9d434d2e6f952c3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c3d51357dca96b01239064ea9bc1260895fb1b8831bc8d5b5e9a5db52ec32357
[INFO] running `Command { std: "docker" "start" "-a" "c3d51357dca96b01239064ea9bc1260895fb1b8831bc8d5b5e9a5db52ec32357", kill_on_drop: false }`
[INFO] [stderr] warning: type `int` should have an upper camel case name
[INFO] [stderr]   --> src/c.rs:25:17
[INFO] [stderr]    |
[INFO] [stderr] 25 | pub(crate) type int = i32;
[INFO] [stderr]    |                 ^^^ help: convert the identifier to upper camel case (notice the capitalization): `Int`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `uint` should have an upper camel case name
[INFO] [stderr]   --> src/c.rs:26:17
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub(crate) type uint = u32;
[INFO] [stderr]    |                 ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Uint`
[INFO] [stderr] 
[INFO] [stderr] warning: type `size_t` should have an upper camel case name
[INFO] [stderr]   --> src/c.rs:27:17
[INFO] [stderr]    |
[INFO] [stderr] 27 | pub(crate) type size_t = usize;
[INFO] [stderr]    |                 ^^^^^^ help: convert the identifier to upper camel case: `SizeT`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/hdwallet/languages.rs:10:41
[INFO] [stderr]    |
[INFO] [stderr] 10 |     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stderr]    |                                         ^^                                                           ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_braces)]` on by default
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 10 -     static ref WORDLIST_S_CH: WordMap = { load_wordlist(include_str!("langs/simplified_chinese.txt")) };
[INFO] [stderr] 10 +     static ref WORDLIST_S_CH: WordMap = load_wordlist(include_str!("langs/simplified_chinese.txt"));
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/hdwallet/languages.rs:11:39
[INFO] [stderr]    |
[INFO] [stderr] 11 |     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stderr]    |                                       ^^                                                ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 11 -     static ref WORDLIST_EN: WordMap = { load_wordlist(include_str!("langs/english.txt")) };
[INFO] [stderr] 11 +     static ref WORDLIST_EN: WordMap = load_wordlist(include_str!("langs/english.txt"));
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/hdwallet/rand.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 |         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stderr]    |         ^^                                           ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 11 -         { num_bigint::BigInt::from_i32(2048).unwrap() };
[INFO] [stderr] 11 +         num_bigint::BigInt::from_i32(2048).unwrap();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/hdwallet/rand.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stderr]    |         ^^                                           ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 13 -         { num_bigint::BigInt::from_i32(2047).unwrap() };
[INFO] [stderr] 13 +         num_bigint::BigInt::from_i32(2047).unwrap();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/hdwallet/rand.rs:14:54
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stderr]    |                                                      ^^                        ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 14 -     pub static ref BIGINT_ZERO: num_bigint::BigInt = { num_traits::Zero::zero() };
[INFO] [stderr] 14 +     pub static ref BIGINT_ZERO: num_bigint::BigInt = num_traits::Zero::zero();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/hdwallet/rand.rs:15:53
[INFO] [stderr]    |
[INFO] [stderr] 15 |     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stderr]    |                                                     ^^                      ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 15 -     pub static ref BIGINT_ONE: num_bigint::BigInt = { num_traits::One::one() };
[INFO] [stderr] 15 +     pub static ref BIGINT_ONE: num_bigint::BigInt = num_traits::One::one();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary braces around block return value
[INFO] [stderr]   --> src/hdwallet/rand.rs:16:53
[INFO] [stderr]    |
[INFO] [stderr] 16 |     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stderr]    |                                                     ^^                                        ^^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these braces
[INFO] [stderr]    |
[INFO] [stderr] 16 -     pub static ref BIGINT_TWO: num_bigint::BigInt = { num_bigint::BigInt::from_i32(2).unwrap() };
[INFO] [stderr] 16 +     pub static ref BIGINT_TWO: num_bigint::BigInt = num_bigint::BigInt::from_i32(2).unwrap();
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ECDSA_P256_SHA256_ASN1_SIGNING` should have an upper camel case name
[INFO] [stderr]   --> src/ec/suite_b/ecdsa/signing.rs:42:5
[INFO] [stderr]    |
[INFO] [stderr] 42 |     ECDSA_P256_SHA256_ASN1_SIGNING,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1Signing`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `ECDSA_P256_SHA256_ASN1` should have an upper camel case name
[INFO] [stderr]   --> src/ec/suite_b/ecdsa/verification.rs:42:5
[INFO] [stderr]    |
[INFO] [stderr] 42 |     ECDSA_P256_SHA256_ASN1,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EcdsaP256Sha256Asn1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::arithmetic::montgomery::R`
[INFO] [stderr]  --> src/ec/suite_b/ecies.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::arithmetic::montgomery::R;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/errors.rs:81:44
[INFO] [stderr]    |
[INFO] [stderr] 81 |         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stderr]    |                                               ^                                                              ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 81 -         ErrorKind::ErrInvalidEntropyLength => ("Entropy length must within [128, 256] and be multiples of 32"),
[INFO] [stderr] 81 +         ErrorKind::ErrInvalidEntropyLength => "Entropy length must within [128, 256] and be multiples of 32",
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/errors.rs:84:44
[INFO] [stderr]    |
[INFO] [stderr] 84 |         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stderr]    |                                               ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 84 -         ErrorKind::ErrStrengthNotSupported => ("This strength has not been supported yet."),
[INFO] [stderr] 84 +         ErrorKind::ErrStrengthNotSupported => "This strength has not been supported yet.",
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/errors.rs:88:44
[INFO] [stderr]    |
[INFO] [stderr] 88 |         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stderr]    |                                               ^                                           ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 88 -         ErrorKind::ErrLanguageNotSupported => ("This language has not been supported yet."),
[INFO] [stderr] 88 +         ErrorKind::ErrLanguageNotSupported => "This language has not been supported yet.",
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/errors.rs:90:43
[INFO] [stderr]    |
[INFO] [stderr] 90 | ...cNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stderr]    |                    ^                                                                                                   ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 90 -         ErrorKind::ErrMnemonicNumNotValid => ("The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]"),
[INFO] [stderr] 90 +         ErrorKind::ErrMnemonicNumNotValid => "The number of words in the Mnemonic sentence is not valid. It must be within [12, 15, 18, 21, 24]",
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/errors.rs:92:49
[INFO] [stderr]    |
[INFO] [stderr] 92 |         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stderr]    |                                                    ^                                                     ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 92 -         ErrorKind::ErrMnemonicChecksumIncorrect => ("The checksum within the Mnemonic sentence incorrect"),
[INFO] [stderr] 92 +         ErrorKind::ErrMnemonicChecksumIncorrect => "The checksum within the Mnemonic sentence incorrect",
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: field `entropy` is never read
[INFO] [stderr]   --> src/account/account.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct ECDSAAccount {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 18 |     entropy: Vec<u8>,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ECDSAAccount` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `uint` is never used
[INFO] [stderr]   --> src/c.rs:26:17
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub(crate) type uint = u32;
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `generate_private_key` is never read
[INFO] [stderr]   --> src/ec.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub struct Curve {
[INFO] [stderr]    |            ----- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 28 |     generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `generate` is never used
[INFO] [stderr]   --> src/ec/keys.rs:29:19
[INFO] [stderr]    |
[INFO] [stderr] 28 | impl Seed {
[INFO] [stderr]    | --------- associated function in this implementation
[INFO] [stderr] 29 |     pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result<Self> {
[INFO] [stderr]    |                   ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unary_op_from_binary_op_assign` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/elem.rs:113:8
[INFO] [stderr]     |
[INFO] [stderr] 113 | pub fn unary_op_from_binary_op_assign<M, E: Encoding>(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `PUBLIC_KEY_OPS` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:157:12
[INFO] [stderr]     |
[INFO] [stderr] 157 | pub static PUBLIC_KEY_OPS: PublicKeyOps = PublicKeyOps {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `SCALAR_OPS` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:161:12
[INFO] [stderr]     |
[INFO] [stderr] 161 | pub static SCALAR_OPS: ScalarOps = ScalarOps {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `PUBLIC_SCALAR_OPS` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:167:12
[INFO] [stderr]     |
[INFO] [stderr] 167 | pub static PUBLIC_SCALAR_OPS: PublicScalarOps = PublicScalarOps {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `PRIVATE_SCALAR_OPS` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:183:12
[INFO] [stderr]     |
[INFO] [stderr] 183 | pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `p384_scalar_inv_to_mont` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:193:4
[INFO] [stderr]     |
[INFO] [stderr] 193 | fn p384_scalar_inv_to_mont(a: &Scalar<Unencoded>) -> Scalar<R> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `N_RR_LIMBS` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:336:7
[INFO] [stderr]     |
[INFO] [stderr] 336 | const N_RR_LIMBS: [Limb; MAX_LIMBS] = p384_limbs![
[INFO] [stderr]     |       ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `GFp_p384_scalar_mul_mont` is never used
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:365:8
[INFO] [stderr]     |
[INFO] [stderr] 365 |     fn GFp_p384_scalar_mul_mont(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `zero` is never used
[INFO] [stderr]   --> src/io/writer.rs:33:12
[INFO] [stderr]    |
[INFO] [stderr] 32 | impl LengthMeasurement {
[INFO] [stderr]    | ---------------------- associated function in this implementation
[INFO] [stderr] 33 |     pub fn zero() -> Self {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `with_capacity` is never used
[INFO] [stderr]   --> src/io/writer.rs:53:19
[INFO] [stderr]    |
[INFO] [stderr] 52 | impl Writer {
[INFO] [stderr]    | ----------- associated function in this implementation
[INFO] [stderr] 53 |     pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self {
[INFO] [stderr]    |                   ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `write_copy` is never used
[INFO] [stderr]   --> src/io/writer.rs:77:8
[INFO] [stderr]    |
[INFO] [stderr] 77 | pub fn write_copy(accumulator: &mut dyn Accumulator, to_copy: untrusted::Input) {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `write_positive_integer` is never used
[INFO] [stderr]   --> src/io/der_writer.rs:18:15
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub(crate) fn write_positive_integer(output: &mut dyn Accumulator, value: &Positive) {
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `write_all` is never used
[INFO] [stderr]   --> src/io/der_writer.rs:29:15
[INFO] [stderr]    |
[INFO] [stderr] 29 | pub(crate) fn write_all(tag: Tag, write_value: &dyn Fn(&mut dyn Accumulator)) -> Box<[u8]> {
[INFO] [stderr]    |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `write_tlv` is never used
[INFO] [stderr]   --> src/io/der_writer.rs:42:4
[INFO] [stderr]    |
[INFO] [stderr] 42 | fn write_tlv<F>(output: &mut dyn Accumulator, tag: Tag, write_value: F)
[INFO] [stderr]    |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stderr]   --> src/account/address.rs:31:27
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stderr]    |                           ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stderr] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stderr]    |
[INFO] [stderr] 31 - pub type PublicKey<'a, B: AsRef<[u8]>> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stderr] 31 + pub type PublicKey<'a, B> = crate::sign::ecdsa::UnparsedPublicKey<&'a B>;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `oneRR` should have a snake case name
[INFO] [stderr]    --> src/arithmetic/bigint.rs:217:5
[INFO] [stderr]     |
[INFO] [stderr] 217 |     oneRR: One<M, RR>,
[INFO] [stderr]     |     ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `oneRR` should have a snake case name
[INFO] [stderr]    --> src/arithmetic/bigint.rs:278:13
[INFO] [stderr]     |
[INFO] [stderr] 278 |         let oneRR = {
[INFO] [stderr]     |             ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stderr] 
[INFO] [stderr] warning: method `oneRR` should have a snake case name
[INFO] [stderr]    --> src/arithmetic/bigint.rs:317:12
[INFO] [stderr]     |
[INFO] [stderr] 317 |     pub fn oneRR(&self) -> &One<M, RR> {
[INFO] [stderr]     |            ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stderr] 
[INFO] [stderr] warning: method `newRR` should have a snake case name
[INFO] [stderr]    --> src/arithmetic/bigint.rs:622:8
[INFO] [stderr]     |
[INFO] [stderr] 622 |     fn newRR(m: &PartialModulus<M>, m_bits: bits::BitLength) -> Self {
[INFO] [stderr]     |        ^^^^^ help: convert the identifier to snake case: `new_rr`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `RR` should have a snake case name
[INFO] [stderr]    --> src/arithmetic/bigint.rs:652:13
[INFO] [stderr]     |
[INFO] [stderr] 652 |         let RR = elem_exp_vartime_(base, exponent, m);
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case: `rr`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `dP` should have a snake case name
[INFO] [stderr]    --> src/arithmetic/bigint.rs:785:13
[INFO] [stderr]     |
[INFO] [stderr] 785 |         let dP = BoxedLimbs::from_be_bytes_padded_less_than(input, p)?;
[INFO] [stderr]     |             ^^ help: convert the identifier to snake case: `d_p`
[INFO] [stderr] 
[INFO] [stderr] warning: function `GFp_p384_elem_sqr_mont` should have a snake case name
[INFO] [stderr]    --> src/ec/suite_b/ops/p384.rs:328:22
[INFO] [stderr]     |
[INFO] [stderr] 328 | unsafe extern "C" fn GFp_p384_elem_sqr_mont(
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `gfp_p384_elem_sqr_mont`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]    --> src/sign/ecdsa.rs:134:9
[INFO] [stderr]     |
[INFO] [stderr] 134 |     use std::str::FromStr;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: duplicated attribute
[INFO] [stderr]     --> src/arithmetic/bigint.rs:1309:5
[INFO] [stderr]      |
[INFO] [stderr] 1309 |     #[test]
[INFO] [stderr]      |     ^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(duplicate_macro_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::arithmetic::montgomery::R`
[INFO] [stderr]  --> src/ec/suite_b/ecies.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::arithmetic::montgomery::R;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]    --> src/ec/suite_b/ecies.rs:229:9
[INFO] [stderr]     |
[INFO] [stderr] 229 |     use std::str::FromStr;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable `oneRR` should have a snake case name
[INFO] [stderr]     --> src/arithmetic/bigint.rs:1370:21
[INFO] [stderr]      |
[INFO] [stderr] 1370 |                 let oneRR = m.oneRR();
[INFO] [stderr]      |                     ^^^^^ help: convert the identifier to snake case: `one_rr`
[INFO] [stderr] 
[INFO] [stderr] warning: `xchain-rust-crypto` (lib) generated 44 warnings (run `cargo fix --lib -p xchain-rust-crypto` to apply 14 suggestions)
[INFO] [stderr] warning: `xchain-rust-crypto` (lib test) generated 40 warnings (35 duplicates) (run `cargo fix --lib -p xchain-rust-crypto --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: rustc-serialize v0.3.24
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/xchain_rust_crypto-539dcfc50f723d3e)
[INFO] [stdout] 
[INFO] [stdout] running 67 tests
[INFO] [stdout] test account::json_key::test_json_public ... ok
[INFO] [stdout] test account::json_key::test_json_private ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_modulus_debug ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_elem_reduced_once ... ok
[INFO] [stdout] test c::tests::test_libc_compatible ... ok
[INFO] [stdout] test bssl::tests::result::size_and_alignment ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_elem_squared ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_public_exponent_debug ... ok
[INFO] [stdout] test ec::suite_b::ecies::tests::test_ecies ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_elem_neg_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_elem_mul_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_point_double_test ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_elem_reduced ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_point_mul_serialized_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_q_minus_n_plus_n_equals_0_test ... ok
[INFO] [stdout] test ec::suite_b::ecies::tests::test_aes ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_point_sum_test ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_elem_exp_consttime ... ok
[INFO] [stdout] test bssl::tests::result::semantics ... ok
[INFO] [stdout] test ec::suite_b::ecdsa::digest_scalar::tests::test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_scalar_mul_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_point_sum_mixed_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_elem_add_test ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_elem_mul ... ok
[INFO] [stdout] test arithmetic::bigint::tests::test_elem_mul ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_scalar_square_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_neg_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_div_by_2_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_mul_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_point_double_test ... ok
[INFO] [stdout] test account::json_key::test_del_quote ... ok
[INFO] [stdout] test ec::suite_b::public_key::tests::parse_uncompressed_point_test ... ok
[INFO] [stdout] test limb::tests::test_big_endian_from_limbs_same_length ... ok
[INFO] [stdout] test limb::tests::test_limbs_are_even ... ok
[INFO] [stdout] test limb::tests::test_limbs_are_zero ... ok
[INFO] [stdout] test limb::tests::test_limbs_equal_limb ... ok
[INFO] [stdout] test limb::tests::test_limbs_less_than_limb_constant_time ... ok
[INFO] [stdout] test limb::tests::test_limbs_minimal_bits ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_point_mul_base_test ... ok
[INFO] [stdout] test limb::tests::test_parse_big_endian_and_pad_consttime ... ok
[INFO] [stdout] test sign::ecdsa::tests::test_public_sig ... ok
[INFO] [stdout] test sign::ecdsa::tests::test_seed_private_public ... ok
[INFO] [stdout] test sign::ecdsa::tests::test_sign ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_point_sum_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_q_minus_n_plus_n_equals_0_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_add_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_scalar_mul_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_sub_test ... ok
[INFO] [stdout] test account::account::tests::test_create_account ... ok
[INFO] [stdout] test account::account::tests::test_check_account ... ok
[INFO] [stdout] test test::tests::one_ok ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_scalar_inv_to_mont_zero_panic_test - should panic ... ok
[INFO] [stdout] test limb::tests::test_big_endian_from_limbs_fewer_limbs - should panic ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_scalar_inv_to_mont_zero_panic_test - should panic ... ok
[INFO] [stdout] test test::tests::first_err - should panic ... ok
[INFO] [stdout] test test::tests::first_panic - should panic ... ok
[INFO] [stdout] test test::tests::last_err - should panic ... ok
[INFO] [stdout] test test::tests::last_panic - should panic ... ok
[INFO] [stdout] test test::tests::middle_err - should panic ... ok
[INFO] [stdout] test test::tests::middle_panic - should panic ... ok
[INFO] [stdout] test test::tests::one_panics - should panic ... ok
[INFO] [stdout] test account::account::tests::test_open_and_save_account ... FAILED
[INFO] [stdout] test test::tests::one_err - should panic ... ok
[INFO] [stdout] test test::tests::syntax_error - should panic ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p256_point_mul_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_point_mul_base_test ... ok
[INFO] [stdout] test ec::suite_b::ops::tests::p384_point_mul_test ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- account::account::tests::test_open_and_save_account stdout ----
[INFO] [stdout] thread 'account::account::tests::test_open_and_save_account' panicked at 'assertion failed: `(left == right)`
[INFO] [stdout]   left: `false`,
[INFO] [stdout]  right: `true`', src/account/account.rs:186:9
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55c8e96fe81a - std::backtrace_rs::backtrace::libunwind::trace::h2f05d0192276a8f6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
[INFO] [stdout]    1:     0x55c8e96fe81a - std::backtrace_rs::backtrace::trace_unsynchronized::hedc23dff7a1af150
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55c8e96fe81a - std::sys_common::backtrace::_print_fmt::h17541ef7592f3ce2
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:65:5
[INFO] [stdout]    3:     0x55c8e96fe81a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h20f75df5ab0c0792
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x55c8e97225df - core::fmt::write::h78109e6f466b3af6
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/fmt/mod.rs:1254:17
[INFO] [stdout]    5:     0x55c8e96fbb65 - std::io::Write::write_fmt::hd24bfb68a1b35a25
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/io/mod.rs:1698:15
[INFO] [stdout]    6:     0x55c8e96fe5e5 - std::sys_common::backtrace::_print::h8dac57a9f8fbf9a5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    7:     0x55c8e96fe5e5 - std::sys_common::backtrace::print::hf9ecbf41d1aa712f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    8:     0x55c8e970029e - std::panicking::default_hook::{{closure}}::h04c07acfc84ca028
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:269:22
[INFO] [stdout]    9:     0x55c8e96fffd1 - std::panicking::default_hook::h01f6bb23e1eceb2c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:285:9
[INFO] [stdout]   10:     0x55c8e94ab3ab - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h87fe9f7b2fd49e4c
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   11:     0x55c8e94ab3ab - test::test_main::{{closure}}::he94d679243a7531b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x55c8e9700984 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h3f2d6d8b14c4769f
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1987:9
[INFO] [stdout]   13:     0x55c8e9700984 - std::panicking::rust_panic_with_hook::h2bb3722bbaf2f6df
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:695:13
[INFO] [stdout]   14:     0x55c8e97006f9 - std::panicking::begin_panic_handler::{{closure}}::h91bc7f36a4be011b
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:582:13
[INFO] [stdout]   15:     0x55c8e96fec86 - std::sys_common::backtrace::__rust_end_short_backtrace::h8b3d3717114f9e59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:150:18
[INFO] [stdout]   16:     0x55c8e9700452 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:578:5
[INFO] [stdout]   17:     0x55c8e94010b3 - core::panicking::panic_fmt::hfd368e3fbdabea26
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:67:14
[INFO] [stdout]   18:     0x55c8e94014df - core::panicking::assert_failed_inner::haef49168e1798a91
[INFO] [stdout]   19:     0x55c8e94561fa - core::panicking::assert_failed::h27fe9a99e1779dcb
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panicking.rs:228:5
[INFO] [stdout]   20:     0x55c8e943a602 - xchain_rust_crypto::account::account::tests::test_open_and_save_account::h74ba39aa5c59046c
[INFO] [stdout]                                at /opt/rustwide/workdir/src/account/account.rs:186:9
[INFO] [stdout]   21:     0x55c8e943a4b7 - xchain_rust_crypto::account::account::tests::test_open_and_save_account::{{closure}}::hd1c6b92e42611173
[INFO] [stdout]                                at /opt/rustwide/workdir/src/account/account.rs:179:37
[INFO] [stdout]   22:     0x55c8e94086f5 - core::ops::function::FnOnce::call_once::hf3c13d35f7d1e608
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x55c8e94b027f - core::ops::function::FnOnce::call_once::ha6a70e79f7481a7e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x55c8e94b027f - test::__rust_begin_short_backtrace::hce33033019b61e69
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:655:18
[INFO] [stdout]   25:     0x55c8e947da6c - test::run_test::{{closure}}::h858d3528838ae3e5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:646:30
[INFO] [stdout]   26:     0x55c8e947da6c - core::ops::function::FnOnce::call_once{{vtable.shim}}::he8ac2b00f01ae79e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x55c8e94af356 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h8093d25b522725ef
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   28:     0x55c8e94af356 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h5c334c204e4a3913
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   29:     0x55c8e94af356 - std::panicking::try::do_call::ha8b740c7b9478074
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   30:     0x55c8e94af356 - std::panicking::try::h5d34f63d0e41b64e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   31:     0x55c8e94af356 - std::panic::catch_unwind::hcfbb511e1aa7fc67
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   32:     0x55c8e94af356 - test::run_test_in_process::h9abda90f802eaf21
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:678:27
[INFO] [stdout]   33:     0x55c8e94af356 - test::run_test::run_test_inner::{{closure}}::h0f058de91f6c6edf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:572:39
[INFO] [stdout]   34:     0x55c8e9478275 - test::run_test::run_test_inner::{{closure}}::h5ca48a4c59c6c1fb
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/test/src/lib.rs:599:37
[INFO] [stdout]   35:     0x55c8e9478275 - std::sys_common::backtrace::__rust_begin_short_backtrace::h32bd51e1495d4a33
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys_common/backtrace.rs:134:18
[INFO] [stdout]   36:     0x55c8e947d7b1 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hc086fae9b128b2db
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:526:17
[INFO] [stdout]   37:     0x55c8e947d7b1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb66571888d270d43
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/panic/unwind_safe.rs:271:9
[INFO] [stdout]   38:     0x55c8e947d7b1 - std::panicking::try::do_call::h4fa2ef4f6e51fecf
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:485:40
[INFO] [stdout]   39:     0x55c8e947d7b1 - std::panicking::try::h1e9e22b8584489b5
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panicking.rs:449:19
[INFO] [stdout]   40:     0x55c8e947d7b1 - std::panic::catch_unwind::h44698a3de0e0769e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/panic.rs:140:14
[INFO] [stdout]   41:     0x55c8e947d7b1 - std::thread::Builder::spawn_unchecked_::{{closure}}::h50153abde3fe239e
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/thread/mod.rs:525:30
[INFO] [stdout]   42:     0x55c8e947d7b1 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hbe5bbf6f38394364
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x55c8e9704e75 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0d83cb2920a49046
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   44:     0x55c8e9704e75 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hbe0a008aa7d9ef59
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/alloc/src/boxed.rs:1973:9
[INFO] [stdout]   45:     0x55c8e9704e75 - std::sys::unix::thread::Thread::new::thread_start::h3a466996bdf6b1f9
[INFO] [stdout]                                at /rustc/1b7dd2252b99671ce5d1cb9664c5f8636329436d/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   46:     0x7f5ebc183b43 - <unknown>
[INFO] [stdout]   47:     0x7f5ebc214bb4 - __clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     account::account::tests::test_open_and_save_account
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 66 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.58s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "c3d51357dca96b01239064ea9bc1260895fb1b8831bc8d5b5e9a5db52ec32357", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3d51357dca96b01239064ea9bc1260895fb1b8831bc8d5b5e9a5db52ec32357", kill_on_drop: false }`
[INFO] [stdout] c3d51357dca96b01239064ea9bc1260895fb1b8831bc8d5b5e9a5db52ec32357
