[INFO] updating cached repository https://github.com/duanbing/xchain-rust-crypto [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] [stderr] From https://github.com/duanbing/xchain-rust-crypto [INFO] [stderr] 30f5219..3703172 master -> master [INFO] [stderr] * [new tag] v0.5.0 -> v0.5.0 [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 3703172897576edfb27e96a0f1e0f34387d0a88d [INFO] testing duanbing/xchain-rust-crypto against 1.44.0 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduanbing%2Fxchain-rust-crypto" "/workspace/builds/worker-5/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/duanbing/xchain-rust-crypto on toolchain 1.44.0 [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "read-manifest" "--manifest-path" "Cargo.toml"` [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/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 `"/workspace/cargo-home/bin/cargo" "+1.44.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 09986caa6cd8aaa67d1b120c250c4e0857c35ffad6f7b6c82b6658cb03675e06 [INFO] running `"docker" "start" "-a" "09986caa6cd8aaa67d1b120c250c4e0857c35ffad6f7b6c82b6658cb03675e06"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling base58 v0.1.0 [INFO] [stderr] Compiling num-bigint v0.2.6 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling ring v0.16.12 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Compiling rust-crypto v0.2.36 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling serde_json v1.0.51 [INFO] [stderr] Compiling xchain-rust-crypto v0.1.0 (/opt/rustwide/workdir) [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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: type alias is never used: `uint` [INFO] [stderr] --> src/c.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | pub(crate) type uint = u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `generate_private_key` [INFO] [stderr] --> src/ec.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `generate` [INFO] [stderr] --> src/ec/keys.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `unary_op_from_binary_op_assign` [INFO] [stderr] --> src/ec/suite_b/ops/elem.rs:113:8 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn unary_op_from_binary_op_assign( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PUBLIC_KEY_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:157:1 [INFO] [stderr] | [INFO] [stderr] 157 | / pub static PUBLIC_KEY_OPS: PublicKeyOps = PublicKeyOps { [INFO] [stderr] 158 | | common: &COMMON_OPS, [INFO] [stderr] 159 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:161:1 [INFO] [stderr] | [INFO] [stderr] 161 | / pub static SCALAR_OPS: ScalarOps = ScalarOps { [INFO] [stderr] 162 | | common: &COMMON_OPS, [INFO] [stderr] 163 | | scalar_inv_to_mont_impl: p384_scalar_inv_to_mont, [INFO] [stderr] 164 | | scalar_mul_mont: GFp_p384_scalar_mul_mont, [INFO] [stderr] 165 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PUBLIC_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:167:1 [INFO] [stderr] | [INFO] [stderr] 167 | / pub static PUBLIC_SCALAR_OPS: PublicScalarOps = PublicScalarOps { [INFO] [stderr] 168 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 169 | | public_key_ops: &PUBLIC_KEY_OPS, [INFO] [stderr] 170 | | private_key_ops: &PRIVATE_KEY_OPS, [INFO] [stderr] ... | [INFO] [stderr] 180 | | }, [INFO] [stderr] 181 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PRIVATE_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | / pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps { [INFO] [stderr] 184 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 185 | | [INFO] [stderr] 186 | | oneRR_mod_n: Scalar { [INFO] [stderr] ... | [INFO] [stderr] 190 | | }, [INFO] [stderr] 191 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `p384_scalar_inv_to_mont` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:193:4 [INFO] [stderr] | [INFO] [stderr] 193 | fn p384_scalar_inv_to_mont(a: &Scalar) -> Scalar { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `N_RR_LIMBS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:336:1 [INFO] [stderr] | [INFO] [stderr] 336 | / const N_RR_LIMBS: [Limb; MAX_LIMBS] = p384_limbs![ [INFO] [stderr] 337 | | 0x19b409a9, 0x2d319b24, 0xdf1aa419, 0xff3d81e5, 0xfcb82947, 0xbc3e483a, 0x4aab1cc5, 0xd40d4917, [INFO] [stderr] 338 | | 0x28266895, 0x3fb05b7a, 0x2b39bf21, 0x0c84ee01 [INFO] [stderr] 339 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: foreign function is never used: `GFp_p384_scalar_mul_mont` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:365:5 [INFO] [stderr] | [INFO] [stderr] 365 | / fn GFp_p384_scalar_mul_mont( [INFO] [stderr] 366 | | r: *mut Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 367 | | a: *const Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 368 | | b: *const Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 369 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero` [INFO] [stderr] --> src/io/writer.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn zero() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_capacity` [INFO] [stderr] --> src/io/writer.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_copy` [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 is never used: `write_positive_integer` [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 is never used: `write_all` [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 is never used: `write_tlv` [INFO] [stderr] --> src/io/der_writer.rs:42:4 [INFO] [stderr] | [INFO] [stderr] 42 | fn write_tlv(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> = 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, [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 { [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_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: 38 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 35.80s [INFO] running `"docker" "inspect" "09986caa6cd8aaa67d1b120c250c4e0857c35ffad6f7b6c82b6658cb03675e06"` [INFO] running `"docker" "rm" "-f" "09986caa6cd8aaa67d1b120c250c4e0857c35ffad6f7b6c82b6658cb03675e06"` [INFO] [stdout] 09986caa6cd8aaa67d1b120c250c4e0857c35ffad6f7b6c82b6658cb03675e06 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 1d38981a5816967b7bc47fe5d9d29f0bbac2208b8bcdcb489c7b1097a308cb95 [INFO] running `"docker" "start" "-a" "1d38981a5816967b7bc47fe5d9d29f0bbac2208b8bcdcb489c7b1097a308cb95"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling xchain-rust-crypto v0.1.0 (/opt/rustwide/workdir) [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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: type alias is never used: `uint` [INFO] [stderr] --> src/c.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | pub(crate) type uint = u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `generate_private_key` [INFO] [stderr] --> src/ec.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `generate` [INFO] [stderr] --> src/ec/keys.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `unary_op_from_binary_op_assign` [INFO] [stderr] --> src/ec/suite_b/ops/elem.rs:113:8 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn unary_op_from_binary_op_assign( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PUBLIC_KEY_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:157:1 [INFO] [stderr] | [INFO] [stderr] 157 | / pub static PUBLIC_KEY_OPS: PublicKeyOps = PublicKeyOps { [INFO] [stderr] 158 | | common: &COMMON_OPS, [INFO] [stderr] 159 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:161:1 [INFO] [stderr] | [INFO] [stderr] 161 | / pub static SCALAR_OPS: ScalarOps = ScalarOps { [INFO] [stderr] 162 | | common: &COMMON_OPS, [INFO] [stderr] 163 | | scalar_inv_to_mont_impl: p384_scalar_inv_to_mont, [INFO] [stderr] 164 | | scalar_mul_mont: GFp_p384_scalar_mul_mont, [INFO] [stderr] 165 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PUBLIC_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:167:1 [INFO] [stderr] | [INFO] [stderr] 167 | / pub static PUBLIC_SCALAR_OPS: PublicScalarOps = PublicScalarOps { [INFO] [stderr] 168 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 169 | | public_key_ops: &PUBLIC_KEY_OPS, [INFO] [stderr] 170 | | private_key_ops: &PRIVATE_KEY_OPS, [INFO] [stderr] ... | [INFO] [stderr] 180 | | }, [INFO] [stderr] 181 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PRIVATE_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | / pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps { [INFO] [stderr] 184 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 185 | | [INFO] [stderr] 186 | | oneRR_mod_n: Scalar { [INFO] [stderr] ... | [INFO] [stderr] 190 | | }, [INFO] [stderr] 191 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `p384_scalar_inv_to_mont` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:193:4 [INFO] [stderr] | [INFO] [stderr] 193 | fn p384_scalar_inv_to_mont(a: &Scalar) -> Scalar { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `N_RR_LIMBS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:336:1 [INFO] [stderr] | [INFO] [stderr] 336 | / const N_RR_LIMBS: [Limb; MAX_LIMBS] = p384_limbs![ [INFO] [stderr] 337 | | 0x19b409a9, 0x2d319b24, 0xdf1aa419, 0xff3d81e5, 0xfcb82947, 0xbc3e483a, 0x4aab1cc5, 0xd40d4917, [INFO] [stderr] 338 | | 0x28266895, 0x3fb05b7a, 0x2b39bf21, 0x0c84ee01 [INFO] [stderr] 339 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: foreign function is never used: `GFp_p384_scalar_mul_mont` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:365:5 [INFO] [stderr] | [INFO] [stderr] 365 | / fn GFp_p384_scalar_mul_mont( [INFO] [stderr] 366 | | r: *mut Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 367 | | a: *const Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 368 | | b: *const Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 369 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero` [INFO] [stderr] --> src/io/writer.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn zero() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_capacity` [INFO] [stderr] --> src/io/writer.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_copy` [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 is never used: `write_positive_integer` [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 is never used: `write_all` [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 is never used: `write_tlv` [INFO] [stderr] --> src/io/der_writer.rs:42:4 [INFO] [stderr] | [INFO] [stderr] 42 | fn write_tlv(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> = 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, [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 { [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_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: 38 warnings emitted [INFO] [stderr] [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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: 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] 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: field is never read: `generate_private_key` [INFO] [stderr] --> src/ec.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `generate` [INFO] [stderr] --> src/ec/keys.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PRIVATE_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | / pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps { [INFO] [stderr] 184 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 185 | | [INFO] [stderr] 186 | | oneRR_mod_n: Scalar { [INFO] [stderr] ... | [INFO] [stderr] 190 | | }, [INFO] [stderr] 191 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero` [INFO] [stderr] --> src/io/writer.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn zero() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_capacity` [INFO] [stderr] --> src/io/writer.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_copy` [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 is never used: `write_positive_integer` [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 is never used: `write_all` [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 is never used: `write_tlv` [INFO] [stderr] --> src/io/der_writer.rs:42:4 [INFO] [stderr] | [INFO] [stderr] 42 | fn write_tlv(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> = 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, [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 { [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_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: 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: 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: 33 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 8.51s [INFO] running `"docker" "inspect" "1d38981a5816967b7bc47fe5d9d29f0bbac2208b8bcdcb489c7b1097a308cb95"` [INFO] running `"docker" "rm" "-f" "1d38981a5816967b7bc47fe5d9d29f0bbac2208b8bcdcb489c7b1097a308cb95"` [INFO] [stdout] 1d38981a5816967b7bc47fe5d9d29f0bbac2208b8bcdcb489c7b1097a308cb95 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] ed0ecea3eb572fdd0c0444f5211ef8784e6ce3afbc9fe56eb2fe537b1a4cf311 [INFO] running `"docker" "start" "-a" "ed0ecea3eb572fdd0c0444f5211ef8784e6ce3afbc9fe56eb2fe537b1a4cf311"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Blocking waiting for file lock on package cache [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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: type alias is never used: `uint` [INFO] [stderr] --> src/c.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | pub(crate) type uint = u32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `generate_private_key` [INFO] [stderr] --> src/ec.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `generate` [INFO] [stderr] --> src/ec/keys.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `unary_op_from_binary_op_assign` [INFO] [stderr] --> src/ec/suite_b/ops/elem.rs:113:8 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn unary_op_from_binary_op_assign( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PUBLIC_KEY_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:157:1 [INFO] [stderr] | [INFO] [stderr] 157 | / pub static PUBLIC_KEY_OPS: PublicKeyOps = PublicKeyOps { [INFO] [stderr] 158 | | common: &COMMON_OPS, [INFO] [stderr] 159 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:161:1 [INFO] [stderr] | [INFO] [stderr] 161 | / pub static SCALAR_OPS: ScalarOps = ScalarOps { [INFO] [stderr] 162 | | common: &COMMON_OPS, [INFO] [stderr] 163 | | scalar_inv_to_mont_impl: p384_scalar_inv_to_mont, [INFO] [stderr] 164 | | scalar_mul_mont: GFp_p384_scalar_mul_mont, [INFO] [stderr] 165 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PUBLIC_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:167:1 [INFO] [stderr] | [INFO] [stderr] 167 | / pub static PUBLIC_SCALAR_OPS: PublicScalarOps = PublicScalarOps { [INFO] [stderr] 168 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 169 | | public_key_ops: &PUBLIC_KEY_OPS, [INFO] [stderr] 170 | | private_key_ops: &PRIVATE_KEY_OPS, [INFO] [stderr] ... | [INFO] [stderr] 180 | | }, [INFO] [stderr] 181 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PRIVATE_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | / pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps { [INFO] [stderr] 184 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 185 | | [INFO] [stderr] 186 | | oneRR_mod_n: Scalar { [INFO] [stderr] ... | [INFO] [stderr] 190 | | }, [INFO] [stderr] 191 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `p384_scalar_inv_to_mont` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:193:4 [INFO] [stderr] | [INFO] [stderr] 193 | fn p384_scalar_inv_to_mont(a: &Scalar) -> Scalar { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `N_RR_LIMBS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:336:1 [INFO] [stderr] | [INFO] [stderr] 336 | / const N_RR_LIMBS: [Limb; MAX_LIMBS] = p384_limbs![ [INFO] [stderr] 337 | | 0x19b409a9, 0x2d319b24, 0xdf1aa419, 0xff3d81e5, 0xfcb82947, 0xbc3e483a, 0x4aab1cc5, 0xd40d4917, [INFO] [stderr] 338 | | 0x28266895, 0x3fb05b7a, 0x2b39bf21, 0x0c84ee01 [INFO] [stderr] 339 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: foreign function is never used: `GFp_p384_scalar_mul_mont` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:365:5 [INFO] [stderr] | [INFO] [stderr] 365 | / fn GFp_p384_scalar_mul_mont( [INFO] [stderr] 366 | | r: *mut Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 367 | | a: *const Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 368 | | b: *const Limb, // [COMMON_OPS.num_limbs] [INFO] [stderr] 369 | | ); [INFO] [stderr] | |______^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero` [INFO] [stderr] --> src/io/writer.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn zero() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_capacity` [INFO] [stderr] --> src/io/writer.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_copy` [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 is never used: `write_positive_integer` [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 is never used: `write_all` [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 is never used: `write_tlv` [INFO] [stderr] --> src/io/der_writer.rs:42:4 [INFO] [stderr] | [INFO] [stderr] 42 | fn write_tlv(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> = 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, [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 { [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_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: 38 warnings emitted [INFO] [stderr] [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [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: 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] 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: field is never read: `generate_private_key` [INFO] [stderr] --> src/ec.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | generate_private_key: fn(rng: &[u8], &mut [u8]) -> Result<()>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method is never used: `generate` [INFO] [stderr] --> src/ec/keys.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub(crate) fn generate(curve: &'static Curve, rng: &[u8]) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static item is never used: `PRIVATE_SCALAR_OPS` [INFO] [stderr] --> src/ec/suite_b/ops/p384.rs:183:1 [INFO] [stderr] | [INFO] [stderr] 183 | / pub static PRIVATE_SCALAR_OPS: PrivateScalarOps = PrivateScalarOps { [INFO] [stderr] 184 | | scalar_ops: &SCALAR_OPS, [INFO] [stderr] 185 | | [INFO] [stderr] 186 | | oneRR_mod_n: Scalar { [INFO] [stderr] ... | [INFO] [stderr] 190 | | }, [INFO] [stderr] 191 | | }; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `zero` [INFO] [stderr] --> src/io/writer.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn zero() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `with_capacity` [INFO] [stderr] --> src/io/writer.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | pub(super) fn with_capacity(capacity: LengthMeasurement) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `write_copy` [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 is never used: `write_positive_integer` [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 is never used: `write_all` [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 is never used: `write_tlv` [INFO] [stderr] --> src/io/der_writer.rs:42:4 [INFO] [stderr] | [INFO] [stderr] 42 | fn write_tlv(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> = 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, [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 { [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_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: 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: 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: 33 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.15s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/xchain_rust_crypto-6e2536c520835f6f [INFO] [stdout] [INFO] [stdout] running 67 tests [INFO] [stdout] test account::json_key::test_json_private ... ok [INFO] [stdout] test arithmetic::bigint::tests::test_elem_reduced_once ... ok [INFO] [stdout] test arithmetic::bigint::tests::test_elem_exp_consttime ... ok [INFO] [stdout] test account::json_key::test_json_public ... ok [INFO] [stdout] test arithmetic::bigint::tests::test_public_exponent_debug ... ok [INFO] [stdout] test arithmetic::bigint::tests::test_modulus_debug ... ok [INFO] [stdout] test bssl::tests::result::size_and_alignment ... ok [INFO] [stdout] test bssl::tests::result::semantics ... ok [INFO] [stdout] test ec::suite_b::ecdsa::digest_scalar::tests::test ... ok [INFO] [stdout] test arithmetic::bigint::tests::test_elem_squared ... ok [INFO] [stdout] test arithmetic::bigint::tests::test_elem_reduced ... ok [INFO] [stdout] test c::tests::test_libc_compatible ... 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_point_double_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_point_mul_serialized_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_q_minus_n_plus_n_equals_0_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::p256_scalar_square_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p256_scalar_mul_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_neg_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_point_double_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_mul_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p256_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::p256_elem_mul_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p256_elem_add_test ... ok [INFO] [stdout] test ec::suite_b::public_key::tests::parse_uncompressed_point_test ... ok [INFO] [stdout] test ec::suite_b::ecies::tests::test_aes ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_point_sum_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_scalar_mul_test ... 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_minimal_bits ... ok [INFO] [stdout] test limb::tests::test_big_endian_from_limbs_same_length ... 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 limb::tests::test_parse_big_endian_and_pad_consttime ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_sub_test ... ok [INFO] [stdout] test account::json_key::test_del_quote ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p256_point_mul_base_test ... ok [INFO] [stdout] test limb::tests::test_limbs_less_than_limb_constant_time ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_elem_add_test ... ok [INFO] [stdout] test account::account::tests::test_open_and_save_account ... ok [INFO] [stdout] test test::tests::one_ok ... ok [INFO] [stdout] test account::account::tests::test_check_account ... ok [INFO] [stdout] test account::account::tests::test_create_account ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p384_scalar_inv_to_mont_zero_panic_test ... ok [INFO] [stdout] test ec::suite_b::ops::tests::p256_scalar_inv_to_mont_zero_panic_test ... ok [INFO] [stdout] test limb::tests::test_big_endian_from_limbs_fewer_limbs ... ok [INFO] [stdout] test test::tests::first_panic ... ok [INFO] [stdout] test test::tests::first_err ... ok [INFO] [stdout] test test::tests::last_err ... ok [INFO] [stdout] test test::tests::middle_err ... ok [INFO] [stdout] test test::tests::last_panic ... ok [INFO] [stdout] test test::tests::one_err ... ok [INFO] [stdout] test test::tests::middle_panic ... ok [INFO] [stdout] test test::tests::syntax_error ... ok [INFO] [stdout] test test::tests::one_panics ... 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] [stderr] Doc-tests xchain-rust-crypto [INFO] [stdout] [INFO] [stdout] test result: ok. 67 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/test.rs - test (line 53) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "ed0ecea3eb572fdd0c0444f5211ef8784e6ce3afbc9fe56eb2fe537b1a4cf311"` [INFO] running `"docker" "rm" "-f" "ed0ecea3eb572fdd0c0444f5211ef8784e6ce3afbc9fe56eb2fe537b1a4cf311"` [INFO] [stdout] ed0ecea3eb572fdd0c0444f5211ef8784e6ce3afbc9fe56eb2fe537b1a4cf311