[INFO] fetching crate emerald-vault 0.33.0... [INFO] testing emerald-vault-0.33.0 against beta-2024-09-05 for beta-1.82-1 [INFO] extracting crate emerald-vault 0.33.0 into /workspace/builds/worker-7-tc2/source [INFO] validating manifest of crates.io crate emerald-vault 0.33.0 on toolchain beta-2024-09-05 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-09-05" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate emerald-vault 0.33.0 [INFO] finished tweaking crates.io crate emerald-vault 0.33.0 [INFO] tweaked toml for crates.io crate emerald-vault 0.33.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-09-05" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 318 packages to latest compatible versions [INFO] [stderr] Adding argon2 v0.4.1 (latest: v0.5.3) [INFO] [stderr] Adding arrayvec v0.5.2 (latest: v0.7.6) [INFO] [stderr] Adding base16ct v0.1.1 (latest: v0.2.0) [INFO] [stderr] Adding base64 v0.13.1 (latest: v0.22.1) [INFO] [stderr] Adding bech32 v0.9.1 (latest: v0.11.0) [INFO] [stderr] Adding bitcoin v0.29.2 (latest: v0.32.2) [INFO] [stderr] Adding bitcoin_hashes v0.11.0 (latest: v0.14.0) [INFO] [stderr] Adding bitflags v1.3.2 (latest: v2.6.0) [INFO] [stderr] Adding blake2b_simd v0.5.11 (latest: v1.0.2) [INFO] [stderr] Adding bytes v0.4.12 (latest: v1.7.1) [INFO] [stderr] Adding cargo_metadata v0.15.4 (latest: v0.18.1) [INFO] [stderr] Adding cfg-if v0.1.10 (latest: v1.0.0) [INFO] [stderr] Adding cloudabi v0.0.3 (latest: v0.1.0) [INFO] [stderr] Adding constant_time_eq v0.1.5 (latest: v0.3.1) [INFO] [stderr] Adding crossbeam-deque v0.7.4 (latest: v0.8.5) [INFO] [stderr] Adding crossbeam-epoch v0.8.2 (latest: v0.9.18) [INFO] [stderr] Adding crossbeam-queue v0.2.3 (latest: v0.3.11) [INFO] [stderr] Adding crossbeam-utils v0.7.2 (latest: v0.8.20) [INFO] [stderr] Adding crypto-bigint v0.4.9 (latest: v0.5.5) [INFO] [stderr] Adding der v0.6.1 (latest: v0.7.9) [INFO] [stderr] Adding derive_more v0.99.18 (latest: v1.0.0) [INFO] [stderr] Adding dirs v1.0.5 (latest: v5.0.1) [INFO] [stderr] Adding ecdsa v0.14.8 (latest: v0.16.9) [INFO] [stderr] Adding elliptic-curve v0.12.3 (latest: v0.13.8) [INFO] [stderr] Adding env_logger v0.7.1 (latest: v0.11.5) [INFO] [stderr] Adding ethers-core v1.0.2 (latest: v2.0.14) [INFO] [stderr] Adding ethers-derive-eip712 v1.0.2 (latest: v2.0.2) [INFO] [stderr] Adding ff v0.12.1 (latest: v0.13.0) [INFO] [stderr] Adding futures v0.1.31 (latest: v0.3.30) [INFO] [stderr] Adding generic-array v0.14.7 (latest: v1.1.0) [INFO] [stderr] Adding getrandom v0.1.16 (latest: v0.2.15) [INFO] [stderr] Adding group v0.12.1 (latest: v0.13.0) [INFO] [stderr] Adding h2 v0.1.26 (latest: v0.4.6) [INFO] [stderr] Adding hashbrown v0.12.3 (latest: v0.14.5) [INFO] [stderr] Adding heck v0.4.1 (latest: v0.5.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (latest: v0.4.0) [INFO] [stderr] Adding http v0.1.21 (latest: v1.1.0) [INFO] [stderr] Adding http-body v0.1.0 (latest: v1.0.1) [INFO] [stderr] Adding hyper v0.12.36 (latest: v1.4.1) [INFO] [stderr] Adding idna v0.5.0 (latest: v1.0.2) [INFO] [stderr] Adding image v0.24.9 (latest: v0.25.2) [INFO] [stderr] Adding indexmap v1.9.3 (latest: v2.5.0) [INFO] [stderr] Adding itertools v0.10.5 (latest: v0.13.0) [INFO] [stderr] Adding itoa v0.4.8 (latest: v1.0.11) [INFO] [stderr] Adding k256 v0.11.6 (latest: v0.13.3) [INFO] [stderr] Adding lock_api v0.3.4 (latest: v0.4.12) [INFO] [stderr] Adding memoffset v0.5.6 (latest: v0.9.1) [INFO] [stderr] Adding miniz_oxide v0.7.4 (latest: v0.8.0) [INFO] [stderr] Adding mio v0.6.23 (latest: v1.0.2) [INFO] [stderr] Adding miow v0.2.2 (latest: v0.6.0) [INFO] [stderr] Adding parking_lot v0.9.0 (latest: v0.12.3) [INFO] [stderr] Adding parking_lot_core v0.6.3 (latest: v0.9.10) [INFO] [stderr] Adding password-hash v0.4.2 (latest: v0.5.0) [INFO] [stderr] Adding pbkdf2 v0.11.0 (latest: v0.12.2) [INFO] [stderr] Adding pkcs8 v0.9.0 (latest: v0.10.2) [INFO] [stderr] Adding protobuf v2.25.2 (latest: v3.5.1) [INFO] [stderr] Adding quickcheck v0.9.2 (latest: v1.0.3) [INFO] [stderr] Adding radium v0.7.0 (latest: v1.1.0) [INFO] [stderr] Adding rand v0.4.6 (latest: v0.8.5) [INFO] [stderr] Adding rand v0.7.3 (latest: v0.8.5) [INFO] [stderr] Adding rand_chacha v0.2.2 (latest: v0.3.1) [INFO] [stderr] Adding rand_core v0.3.1 (latest: v0.6.4) [INFO] [stderr] Adding rand_core v0.4.2 (latest: v0.6.4) [INFO] [stderr] Adding rand_core v0.5.1 (latest: v0.6.4) [INFO] [stderr] Adding rand_hc v0.2.0 (latest: v0.3.2) [INFO] [stderr] Adding rdrand v0.4.0 (latest: v0.8.3) [INFO] [stderr] Adding redox_syscall v0.1.57 (latest: v0.5.3) [INFO] [stderr] Adding redox_users v0.3.5 (latest: v0.4.6) [INFO] [stderr] Adding remove_dir_all v0.5.3 (latest: v0.8.3) [INFO] [stderr] Adding rfc6979 v0.3.1 (latest: v0.4.0) [INFO] [stderr] Adding rust-argon2 v0.8.3 (latest: v2.1.0) [INFO] [stderr] Adding rustc_version v0.2.3 (latest: v0.4.1) [INFO] [stderr] Adding scrypt v0.10.0 (latest: v0.11.0) [INFO] [stderr] Adding sec1 v0.3.0 (latest: v0.7.3) [INFO] [stderr] Adding secp256k1 v0.24.3 (latest: v0.29.1) [INFO] [stderr] Adding secp256k1-sys v0.6.1 (latest: v0.10.0) [INFO] [stderr] Adding semver v0.9.0 (latest: v1.0.23) [INFO] [stderr] Adding semver-parser v0.7.0 (latest: v0.10.2) [INFO] [stderr] Adding signature v1.6.4 (latest: v2.2.0) [INFO] [stderr] Adding simple_logger v4.3.3 (latest: v5.0.0) [INFO] [stderr] Adding smallvec v0.6.14 (latest: v1.13.2) [INFO] [stderr] Adding spki v0.6.0 (latest: v0.7.3) [INFO] [stderr] Adding string v0.2.1 (latest: v0.3.0) [INFO] [stderr] Adding strum v0.24.1 (latest: v0.26.3) [INFO] [stderr] Adding strum_macros v0.24.3 (latest: v0.26.4) [INFO] [stderr] Adding syn v1.0.109 (latest: v2.0.77) [INFO] [stderr] Adding term v0.5.2 (latest: v1.0.0) [INFO] [stderr] Adding time v0.1.45 (latest: v0.3.36) [INFO] [stderr] Adding tokio v0.1.22 (latest: v1.40.0) [INFO] [stderr] Adding want v0.2.0 (latest: v0.3.1) [INFO] [stderr] Adding wasi v0.9.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding wasi v0.10.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding winapi v0.2.8 (latest: v0.3.9) [INFO] [stderr] Adding windows-core v0.52.0 (latest: v0.58.0) [INFO] [stderr] Adding windows-sys v0.48.0 (latest: v0.59.0) [INFO] [stderr] Adding windows-targets v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_aarch64_gnullvm v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_aarch64_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_i686_gnu v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_i686_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnu v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnullvm v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding wyz v0.5.1 (latest: v0.6.1) [INFO] [stderr] Adding zip v0.6.6 (latest: v2.2.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-09-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c3d0cda26221998d2a868b04670df4a7780da71194f0e62c1c620735eefc9ede [INFO] running `Command { std: "docker" "start" "-a" "c3d0cda26221998d2a868b04670df4a7780da71194f0e62c1c620735eefc9ede", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c3d0cda26221998d2a868b04670df4a7780da71194f0e62c1c620735eefc9ede", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3d0cda26221998d2a868b04670df4a7780da71194f0e62c1c620735eefc9ede", kill_on_drop: false }` [INFO] [stdout] c3d0cda26221998d2a868b04670df4a7780da71194f0e62c1c620735eefc9ede [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f205794c6b420c018fa83879ceed2dc48931e36ae42159cf4340a8fceadbedfb [INFO] running `Command { std: "docker" "start" "-a" "f205794c6b420c018fa83879ceed2dc48931e36ae42159cf4340a8fceadbedfb", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Compiling subtle v2.6.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling zeroize v1.8.1 [INFO] [stderr] Compiling toml_datetime v0.6.8 [INFO] [stderr] Compiling winnow v0.6.18 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling libc v0.2.158 [INFO] [stderr] Compiling rustc-hex v2.1.0 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling byte-slice-cast v1.2.2 [INFO] [stderr] Compiling const-oid v0.9.6 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling der v0.6.1 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling base64ct v1.6.0 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Compiling cc v1.1.18 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling serde_json v1.0.128 [INFO] [stderr] Compiling cpufeatures v0.2.14 [INFO] [stderr] Compiling itoa v1.0.11 [INFO] [stderr] Compiling indexmap v2.5.0 [INFO] [stderr] Compiling base16ct v0.1.1 [INFO] [stderr] Compiling keccak v0.1.5 [INFO] [stderr] Compiling thiserror v1.0.63 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling camino v1.1.9 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling ff v0.12.1 [INFO] [stderr] Compiling uint v0.9.5 [INFO] [stderr] Compiling spki v0.6.0 [INFO] [stderr] Compiling group v0.12.1 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling adler2 v2.0.0 [INFO] [stderr] Compiling pkcs8 v0.9.0 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling once_cell v1.19.0 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Compiling miniz_oxide v0.8.0 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling futures-sink v0.3.30 [INFO] [stderr] Compiling simd-adler32 v0.3.7 [INFO] [stderr] Compiling unicode-segmentation v1.11.0 [INFO] [stderr] Compiling futures-core v0.3.30 [INFO] [stderr] Compiling bitcoin_hashes v0.11.0 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling secp256k1-sys v0.6.1 [INFO] [stderr] Compiling crypto-bigint v0.4.9 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling toml_edit v0.22.20 [INFO] [stderr] Compiling sec1 v0.3.0 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling hidapi v2.6.3 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling signature v1.6.4 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling regex-automata v0.4.7 [INFO] [stderr] Compiling convert_case v0.6.0 [INFO] [stderr] Compiling rfc6979 v0.3.1 [INFO] [stderr] Compiling elliptic-curve v0.12.3 [INFO] [stderr] Compiling flate2 v1.0.33 [INFO] [stderr] Compiling password-hash v0.4.2 [INFO] [stderr] Compiling unicode-xid v0.2.5 [INFO] [stderr] Compiling bech32 v0.9.1 [INFO] [stderr] Compiling futures-task v0.3.30 [INFO] [stderr] Compiling ecdsa v0.14.8 [INFO] [stderr] Compiling pin-project-lite v0.2.14 [INFO] [stderr] Compiling adler v1.0.2 [INFO] [stderr] Compiling futures-io v0.3.30 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling miniz_oxide v0.7.4 [INFO] [stderr] Compiling chrono v0.4.38 [INFO] [stderr] Compiling k256 v0.11.6 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling fdeflate v0.3.4 [INFO] [stderr] Compiling emerald-hwkey v0.5.0 [INFO] [stderr] Compiling iana-time-zone v0.1.60 [INFO] [stderr] Compiling proc-macro-crate v3.2.0 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling protobuf v2.25.2 [INFO] [stderr] Compiling png v0.17.13 [INFO] [stderr] Compiling deranged v0.3.11 [INFO] [stderr] Compiling pbkdf2 v0.11.0 [INFO] [stderr] Compiling salsa20 v0.10.2 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling blake2 v0.10.6 [INFO] [stderr] Compiling ripemd v0.1.3 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling regex v1.10.6 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling csv-core v0.1.11 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Compiling color_quant v1.1.0 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling bytemuck v1.18.0 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling jpeg-decoder v0.3.1 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling emerald-vault v0.33.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling num v0.4.3 [INFO] [stderr] Compiling time v0.3.36 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling argon2 v0.4.1 [INFO] [stderr] Compiling scrypt v0.10.0 [INFO] [stderr] Compiling zip v0.6.6 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling block-modes v0.9.1 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Compiling image v0.24.9 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling impl-trait-for-tuples v0.2.2 [INFO] [stderr] Compiling parity-scale-codec-derive v3.6.12 [INFO] [stderr] Compiling scale-info-derive v2.11.3 [INFO] [stderr] Compiling derive_more v0.99.18 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Compiling auto_impl v1.2.0 [INFO] [stderr] Compiling strum_macros v0.24.3 [INFO] [stderr] Compiling rlp-derive v0.1.0 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling enum-display-derive v0.1.1 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling strum v0.24.1 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling fixed-hash v0.8.0 [INFO] [stderr] Compiling secp256k1 v0.24.3 [INFO] [stderr] Compiling bitcoin v0.29.2 [INFO] [stderr] Compiling futures-executor v0.3.30 [INFO] [stderr] Compiling futures v0.3.30 [INFO] [stderr] Compiling bytes v1.7.1 [INFO] [stderr] Compiling parity-scale-codec v3.6.12 [INFO] [stderr] Compiling impl-serde v0.4.0 [INFO] [stderr] Compiling cargo-platform v0.1.8 [INFO] [stderr] Compiling uuid v1.10.0 [INFO] [stderr] Compiling csv v1.3.0 [INFO] [stderr] Compiling rlp v0.5.2 [INFO] [stderr] Compiling open-fastrlp-derive v0.1.1 [INFO] [stderr] Compiling scale-info v2.11.3 [INFO] [stderr] Compiling impl-codec v0.6.0 [INFO] [stderr] Compiling hdpath v0.6.3 [INFO] [stderr] Compiling impl-rlp v0.3.0 [INFO] [stderr] Compiling cargo_metadata v0.15.4 [INFO] [stderr] Compiling byte-array-struct v0.2.0 [INFO] [stderr] Compiling primitive-types v0.12.2 [INFO] [stderr] Compiling ethbloom v0.13.0 [INFO] [stderr] Compiling ethereum-types v0.14.1 [INFO] [stderr] Compiling ethabi v18.0.0 [INFO] [stderr] Compiling open-fastrlp v0.1.4 [INFO] [stderr] Compiling ethers-core v1.0.2 [INFO] [stderr] Compiling ethers-derive-eip712 v1.0.2 [INFO] [stdout] warning: private item shadows public glob re-export [INFO] [stdout] --> src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | extern crate bitcoin; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the name `bitcoin` in the type namespace is supposed to be publicly re-exported here [INFO] [stdout] --> src/lib.rs:74:16 [INFO] [stdout] | [INFO] [stdout] 74 | pub use self::{blockchain::*, util::*}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] note: but the private item here shadows it [INFO] [stdout] --> src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | extern crate bitcoin; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(hidden_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalKeyRef` [INFO] [stdout] --> src/crypto/pk.rs:12:41 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::structs::crypto::{GlobalKey, GlobalKeyRef}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SeedSource`, `crypto::Encrypted`, and `mnemonic::Mnemonic` [INFO] [stdout] --> src/crypto/seed.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | mnemonic::Mnemonic, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 3 | structs::{ [INFO] [stdout] 4 | crypto::Encrypted, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | seed::{Seed, SeedSource}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Utc` [INFO] [stdout] --> src/crypto/seed.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use chrono::Utc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/crypto/seed.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::structs::crypto::GlobalKey` [INFO] [stdout] --> src/crypto/seed.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::structs::crypto::GlobalKey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/crypto.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/pk.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/address.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/wallet.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/book.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/seed.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/common.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OpenOptions` [INFO] [stdout] --> src/storage/addressbook.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 30 | fs::{File, OpenOptions}, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `book::AddressRef` [INFO] [stdout] --> src/storage/vault.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | book::AddressRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/storage/global_key.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalKeyRef` [INFO] [stdout] --> src/storage/global_key.rs:8:52 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::structs::crypto::{Encrypted, GlobalKey, GlobalKeyRef}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::structs::pk::PrivateKeyHolder` [INFO] [stdout] --> src/storage/admin.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::structs::pk::PrivateKeyHolder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TimeZone` [INFO] [stdout] --> src/storage/watch.rs:10:49 [INFO] [stdout] | [INFO] [stdout] 10 | use chrono::{DateTime, Duration, NaiveDateTime, TimeZone, Utc}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngCore` [INFO] [stdout] --> src/structs/crypto.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::RngCore; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::rngs::OsRng` [INFO] [stdout] --> src/structs/crypto.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::rngs::OsRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::error::CryptoError` [INFO] [stdout] --> src/structs/crypto.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::error::CryptoError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> src/structs/seed.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:19:16 [INFO] [stdout] | [INFO] [stdout] 19 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:27:17 [INFO] [stdout] | [INFO] [stdout] 27 | let m = parse_from_bytes::(data)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:22:16 [INFO] [stdout] | [INFO] [stdout] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | let m = parse_from_bytes::(data)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:22:16 [INFO] [stdout] | [INFO] [stdout] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:129:17 [INFO] [stdout] | [INFO] [stdout] 129 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/storage.rs:77:31 [INFO] [stdout] | [INFO] [stdout] 77 | let mut config_dir = env::home_dir().expect("Expect path to home dir"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `crypto::encrypted::::encrypt_ethereum` [INFO] [stdout] --> src/convert/json/keyfile.rs:362:36 [INFO] [stdout] | [INFO] [stdout] 362 | let encrypted = Encrypted::encrypt_ethereum(pk.to_vec(), password.as_bytes())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/book.rs:38:36 [INFO] [stdout] | [INFO] [stdout] 38 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/pk.rs:45:44 [INFO] [stdout] | [INFO] [stdout] 45 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/seed.rs:120:36 [INFO] [stdout] | [INFO] [stdout] 120 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:63:30 [INFO] [stdout] | [INFO] [stdout] 63 | let created_at = Utc.timestamp_millis(value.get_created_at() as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:149:36 [INFO] [stdout] | [INFO] [stdout] 149 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead [INFO] [stdout] --> src/storage/watch.rs:116:37 [INFO] [stdout] | [INFO] [stdout] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp`: use `DateTime::from_timestamp` instead [INFO] [stdout] --> src/storage/watch.rs:116:61 [INFO] [stdout] | [INFO] [stdout] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:4:49 [INFO] [stdout] | [INFO] [stdout] 4 | pub static ref ZERO_TS: DateTime = Utc.timestamp_millis(100); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sha2::Digest` [INFO] [stdout] --> src/structs/seed.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use sha2::Digest; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hmac::digest::Digest` [INFO] [stdout] --> src/crypto/fingerprint.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use hmac::digest::Digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/convert/proto/crypto.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut proto_key: proto_Encrypted = proto_Encrypted::try_from(&value.key)?; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mnemonic.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 289 | let mut rng = OsRng::default(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `archive` [INFO] [stdout] --> src/storage/addressbook.rs:229:55 [INFO] [stdout] | [INFO] [stdout] 229 | fn update_multiple(&self, entry: AddressBookmark, archive: &Archive) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archive` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `language` is never read [INFO] [stdout] --> src/mnemonic.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct Mnemonic { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 44 | language: Language, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `base_dir` is never read [INFO] [stdout] --> src/storage.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct Storages { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 65 | /// base dir [INFO] [stdout] 66 | base_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Storages` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `keys` and `global` are never read [INFO] [stdout] --> src/storage/vault.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 384 | pub struct CreateWallet { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 385 | storage: Arc, [INFO] [stdout] 386 | keys: Arc>, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | global: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `create` is never used [INFO] [stdout] --> src/structs/crypto.rs:142:19 [INFO] [stdout] | [INFO] [stdout] 139 | impl GlobalKeyRef { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub(crate) fn create(nonce: Vec) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Uuid` instead of cloning the inner type [INFO] [stdout] --> src/storage/vault.rs:257:28 [INFO] [stdout] | [INFO] [stdout] 257 | .filter(|id| id.clone().ne(&wallet_id)) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 26.67s [INFO] running `Command { std: "docker" "inspect" "f205794c6b420c018fa83879ceed2dc48931e36ae42159cf4340a8fceadbedfb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f205794c6b420c018fa83879ceed2dc48931e36ae42159cf4340a8fceadbedfb", kill_on_drop: false }` [INFO] [stdout] f205794c6b420c018fa83879ceed2dc48931e36ae42159cf4340a8fceadbedfb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5b59980611c601ef5a481a977d04adfbf3efc941d55b271f9be372937ee7666e [INFO] running `Command { std: "docker" "start" "-a" "5b59980611c601ef5a481a977d04adfbf3efc941d55b271f9be372937ee7666e", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling time-macros v0.2.18 [INFO] [stderr] Compiling num_threads v0.1.7 [INFO] [stderr] Compiling colored v2.1.0 [INFO] [stderr] Compiling remove_dir_all v0.5.3 [INFO] [stderr] Compiling bencher v0.1.5 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Compiling emerald-hwkey v0.5.0 [INFO] [stderr] Compiling env_logger v0.7.1 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling time v0.3.36 [INFO] [stderr] Compiling quickcheck v0.9.2 [INFO] [stderr] Compiling simple_logger v4.3.3 [INFO] [stderr] Compiling emerald-vault v0.33.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: private item shadows public glob re-export [INFO] [stdout] --> src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | extern crate bitcoin; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the name `bitcoin` in the type namespace is supposed to be publicly re-exported here [INFO] [stdout] --> src/lib.rs:74:16 [INFO] [stdout] | [INFO] [stdout] 74 | pub use self::{blockchain::*, util::*}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] note: but the private item here shadows it [INFO] [stdout] --> src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | extern crate bitcoin; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(hidden_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalKeyRef` [INFO] [stdout] --> src/crypto/pk.rs:12:41 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::structs::crypto::{GlobalKey, GlobalKeyRef}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SeedSource`, `crypto::Encrypted`, and `mnemonic::Mnemonic` [INFO] [stdout] --> src/crypto/seed.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | mnemonic::Mnemonic, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 3 | structs::{ [INFO] [stdout] 4 | crypto::Encrypted, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | seed::{Seed, SeedSource}, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Utc` [INFO] [stdout] --> src/crypto/seed.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use chrono::Utc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `uuid::Uuid` [INFO] [stdout] --> src/crypto/seed.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use uuid::Uuid; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::structs::crypto::GlobalKey` [INFO] [stdout] --> src/crypto/seed.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::structs::crypto::GlobalKey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/crypto.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/pk.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/address.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/wallet.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/book.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/seed.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/common.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OpenOptions` [INFO] [stdout] --> src/storage/addressbook.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 30 | fs::{File, OpenOptions}, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `book::AddressRef` [INFO] [stdout] --> src/storage/vault.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | book::AddressRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/storage/global_key.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalKeyRef` [INFO] [stdout] --> src/storage/global_key.rs:8:52 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::structs::crypto::{Encrypted, GlobalKey, GlobalKeyRef}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::structs::pk::PrivateKeyHolder` [INFO] [stdout] --> src/storage/admin.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::structs::pk::PrivateKeyHolder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TimeZone` [INFO] [stdout] --> src/storage/watch.rs:10:49 [INFO] [stdout] | [INFO] [stdout] 10 | use chrono::{DateTime, Duration, NaiveDateTime, TimeZone, Utc}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngCore` [INFO] [stdout] --> src/structs/crypto.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::RngCore; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::rngs::OsRng` [INFO] [stdout] --> src/structs/crypto.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::rngs::OsRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::error::CryptoError` [INFO] [stdout] --> src/structs/crypto.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::error::CryptoError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> src/structs/seed.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:19:16 [INFO] [stdout] | [INFO] [stdout] 19 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:27:17 [INFO] [stdout] | [INFO] [stdout] 27 | let m = parse_from_bytes::(data)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:22:16 [INFO] [stdout] | [INFO] [stdout] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | let m = parse_from_bytes::(data)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:22:16 [INFO] [stdout] | [INFO] [stdout] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:129:17 [INFO] [stdout] | [INFO] [stdout] 129 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/storage.rs:77:31 [INFO] [stdout] | [INFO] [stdout] 77 | let mut config_dir = env::home_dir().expect("Expect path to home dir"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `crypto::encrypted::::encrypt_ethereum` [INFO] [stdout] --> src/convert/json/keyfile.rs:362:36 [INFO] [stdout] | [INFO] [stdout] 362 | let encrypted = Encrypted::encrypt_ethereum(pk.to_vec(), password.as_bytes())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/book.rs:38:36 [INFO] [stdout] | [INFO] [stdout] 38 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/pk.rs:45:44 [INFO] [stdout] | [INFO] [stdout] 45 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/seed.rs:120:36 [INFO] [stdout] | [INFO] [stdout] 120 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:63:30 [INFO] [stdout] | [INFO] [stdout] 63 | let created_at = Utc.timestamp_millis(value.get_created_at() as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:149:36 [INFO] [stdout] | [INFO] [stdout] 149 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private item shadows public glob re-export [INFO] [stdout] --> src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | extern crate bitcoin; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the name `bitcoin` in the type namespace is supposed to be publicly re-exported here [INFO] [stdout] --> src/lib.rs:74:16 [INFO] [stdout] | [INFO] [stdout] 74 | pub use self::{blockchain::*, util::*}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] note: but the private item here shadows it [INFO] [stdout] --> src/lib.rs:35:1 [INFO] [stdout] | [INFO] [stdout] 35 | extern crate bitcoin; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(hidden_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::tests::*` [INFO] [stdout] --> src/util.rs:190:9 [INFO] [stdout] | [INFO] [stdout] 190 | pub use self::tests::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TryInto` [INFO] [stdout] --> src/convert/proto/crypto.rs:273:33 [INFO] [stdout] | [INFO] [stdout] 273 | use std::convert::{TryFrom, TryInto}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalKeyRef` [INFO] [stdout] --> src/convert/proto/seed.rs:168:33 [INFO] [stdout] | [INFO] [stdout] 168 | crypto::{GlobalKey, GlobalKeyRef, Encrypted}, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalKeyRef` [INFO] [stdout] --> src/crypto/pk.rs:12:41 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::structs::crypto::{GlobalKey, GlobalKeyRef}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/crypto.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/pk.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/address.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/wallet.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/book.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/seed.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/proto/common.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PRIVATE_KEY_BYTES` [INFO] [stdout] --> src/sign/bip32.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | PRIVATE_KEY_BYTES, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stdout] --> src/sign/bitcoin.rs:683:11 [INFO] [stdout] | [INFO] [stdout] 683 | #[cfg(test_ledger_bitcoin)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows` [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stdout] --> src/sign/ethereum.rs:408:15 [INFO] [stdout] | [INFO] [stdout] 408 | #[cfg(all(integration_test, ledger))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `ledger` [INFO] [stdout] --> src/sign/ethereum.rs:408:33 [INFO] [stdout] | [INFO] [stdout] 408 | #[cfg(all(integration_test, ledger))] [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(ledger)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(ledger)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LedgerSource` [INFO] [stdout] --> src/sign/ethereum.rs:168:20 [INFO] [stdout] | [INFO] [stdout] 168 | seed::{LedgerSource, Seed, SeedRef, SeedSource}, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `read_test_txes` [INFO] [stdout] --> src/sign/ethereum.rs:185:24 [INFO] [stdout] | [INFO] [stdout] 185 | use crate::tests::{read_test_txes}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stdout] --> src/sign/key_source.rs:369:15 [INFO] [stdout] | [INFO] [stdout] 369 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `speculos` [INFO] [stdout] --> src/sign/key_source.rs:369:33 [INFO] [stdout] | [INFO] [stdout] 369 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(speculos)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(speculos)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stdout] --> src/sign/key_source.rs:417:15 [INFO] [stdout] | [INFO] [stdout] 417 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `speculos` [INFO] [stdout] --> src/sign/key_source.rs:417:33 [INFO] [stdout] | [INFO] [stdout] 417 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(speculos)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(speculos)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `LedgerSource` [INFO] [stdout] --> src/sign/key_source.rs:245:32 [INFO] [stdout] | [INFO] [stdout] 245 | use crate::structs::seed::{LedgerSource, SeedSource}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arc` and `Mutex` [INFO] [stdout] --> src/sign/key_source.rs:248:21 [INFO] [stdout] | [INFO] [stdout] 248 | use std::sync::{Arc, Mutex}; [INFO] [stdout] | ^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/sign/key_source.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/sign/key_source.rs:250:9 [INFO] [stdout] | [INFO] [stdout] 250 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `OpenOptions` [INFO] [stdout] --> src/storage/addressbook.rs:30:16 [INFO] [stdout] | [INFO] [stdout] 30 | fs::{File, OpenOptions}, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AddressBookmark` and `EthereumAddress` [INFO] [stdout] --> src/storage/addressbook.rs:239:27 [INFO] [stdout] | [INFO] [stdout] 239 | addressbook::{AddressBookmark, AddressbookStorage}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | EthereumAddress, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `chrono::Utc` [INFO] [stdout] --> src/storage/addressbook.rs:245:9 [INFO] [stdout] | [INFO] [stdout] 245 | use chrono::Utc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tempdir::TempDir` [INFO] [stdout] --> src/storage/addressbook.rs:247:9 [INFO] [stdout] | [INFO] [stdout] 247 | use tempdir::TempDir; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stdout] --> src/storage/vault_bitcoin.rs:270:11 [INFO] [stdout] | [INFO] [stdout] 270 | #[cfg(test_ledger_bitcoin)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stdout] --> src/storage/vault_bitcoin.rs:314:15 [INFO] [stdout] | [INFO] [stdout] 314 | #[cfg(not(test_ledger_bitcoin))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stdout] --> src/storage/vault_bitcoin.rs:396:11 [INFO] [stdout] | [INFO] [stdout] 396 | #[cfg(test_ledger_bitcoin)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `book::AddressRef` [INFO] [stdout] --> src/storage/vault.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | book::AddressRef, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/storage/global_key.rs:3:17 [INFO] [stdout] | [INFO] [stdout] 3 | use std::path::{Path, PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GlobalKeyRef` [INFO] [stdout] --> src/storage/global_key.rs:8:52 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::structs::crypto::{Encrypted, GlobalKey, GlobalKeyRef}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::structs::pk::PrivateKeyHolder` [INFO] [stdout] --> src/storage/admin.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::structs::pk::PrivateKeyHolder; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TimeZone` [INFO] [stdout] --> src/storage/watch.rs:10:49 [INFO] [stdout] | [INFO] [stdout] 10 | use chrono::{DateTime, Duration, NaiveDateTime, TimeZone, Utc}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stdout] --> src/storage/watch.rs:316:11 [INFO] [stdout] | [INFO] [stdout] 316 | #[cfg(integration_test)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::stdin` [INFO] [stdout] --> src/storage/watch.rs:308:9 [INFO] [stdout] | [INFO] [stdout] 308 | use std::io::stdin; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tempdir::TempDir` [INFO] [stdout] --> src/storage/watch.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 309 | use tempdir::TempDir; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::chains::Blockchain` [INFO] [stdout] --> src/storage/watch.rs:310:9 [INFO] [stdout] | [INFO] [stdout] 310 | use crate::chains::Blockchain; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::storage::vault::VaultStorage` [INFO] [stdout] --> src/storage/watch.rs:311:9 [INFO] [stdout] | [INFO] [stdout] 311 | use crate::storage::vault::VaultStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::storage::watch::Request` [INFO] [stdout] --> src/storage/watch.rs:312:9 [INFO] [stdout] | [INFO] [stdout] 312 | use crate::storage::watch::Request; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::tests::init_tests` [INFO] [stdout] --> src/storage/watch.rs:313:9 [INFO] [stdout] | [INFO] [stdout] 313 | use crate::tests::init_tests; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::RngCore` [INFO] [stdout] --> src/structs/crypto.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rand::RngCore; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::rngs::OsRng` [INFO] [stdout] --> src/structs/crypto.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use rand::rngs::OsRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::crypto::error::CryptoError` [INFO] [stdout] --> src/structs/crypto.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::crypto::error::CryptoError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::TryFrom` [INFO] [stdout] --> src/structs/seed.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::convert::TryFrom; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `FromHex` and `ToHex` [INFO] [stdout] --> src/lib.rs:87:19 [INFO] [stdout] | [INFO] [stdout] 87 | pub use hex::{FromHex, ToHex}; [INFO] [stdout] | ^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:12:16 [INFO] [stdout] | [INFO] [stdout] 12 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:21:17 [INFO] [stdout] | [INFO] [stdout] 21 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:89:20 [INFO] [stdout] | [INFO] [stdout] 89 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/book.rs:110:19 [INFO] [stdout] | [INFO] [stdout] 110 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:19:16 [INFO] [stdout] | [INFO] [stdout] 19 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:27:17 [INFO] [stdout] | [INFO] [stdout] 27 | let m = parse_from_bytes::(data)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:103:20 [INFO] [stdout] | [INFO] [stdout] 103 | use protobuf::{parse_from_bytes, Message, ProtobufEnum}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:118:19 [INFO] [stdout] | [INFO] [stdout] 118 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/pk.rs:146:21 [INFO] [stdout] | [INFO] [stdout] 146 | let mut m = parse_from_bytes::(tmp.as_slice()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:22:16 [INFO] [stdout] | [INFO] [stdout] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | let m = parse_from_bytes::(data)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:173:20 [INFO] [stdout] | [INFO] [stdout] 173 | use protobuf::{parse_from_bytes, Message, ProtobufEnum}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/seed.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:22:16 [INFO] [stdout] | [INFO] [stdout] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:129:17 [INFO] [stdout] | [INFO] [stdout] 129 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:244:20 [INFO] [stdout] | [INFO] [stdout] 244 | use protobuf::{parse_from_bytes, Message, ProtobufEnum}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stdout] --> src/convert/proto/wallet.rs:281:19 [INFO] [stdout] | [INFO] [stdout] 281 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/storage.rs:77:31 [INFO] [stdout] | [INFO] [stdout] 77 | let mut config_dir = env::home_dir().expect("Expect path to home dir"); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:49:27 [INFO] [stdout] | [INFO] [stdout] 49 | chrono::TimeZone::timestamp_millis(&Utc, 0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead [INFO] [stdout] --> src/storage/watch.rs:116:37 [INFO] [stdout] | [INFO] [stdout] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp`: use `DateTime::from_timestamp` instead [INFO] [stdout] --> src/storage/watch.rs:116:61 [INFO] [stdout] | [INFO] [stdout] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:4:49 [INFO] [stdout] | [INFO] [stdout] 4 | pub static ref ZERO_TS: DateTime = Utc.timestamp_millis(100); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sha2::Digest` [INFO] [stdout] --> src/structs/seed.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use sha2::Digest; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hmac::digest::Digest` [INFO] [stdout] --> src/crypto/fingerprint.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use hmac::digest::Digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/convert/proto/crypto.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut proto_key: proto_Encrypted = proto_Encrypted::try_from(&value.key)?; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `crypto::encrypted::::encrypt_ethereum` [INFO] [stdout] --> src/convert/json/keyfile.rs:362:36 [INFO] [stdout] | [INFO] [stdout] 362 | let encrypted = Encrypted::encrypt_ethereum(pk.to_vec(), password.as_bytes())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mnemonic.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 289 | let mut rng = OsRng::default(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/book.rs:38:36 [INFO] [stdout] | [INFO] [stdout] 38 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/book.rs:105:29 [INFO] [stdout] | [INFO] [stdout] 105 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/book.rs:129:29 [INFO] [stdout] | [INFO] [stdout] 129 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/book.rs:147:29 [INFO] [stdout] | [INFO] [stdout] 147 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/pk.rs:45:44 [INFO] [stdout] | [INFO] [stdout] 45 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/pk.rs:114:29 [INFO] [stdout] | [INFO] [stdout] 114 | pk.created_at = Utc.timestamp_millis(1592624592679); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/pk.rs:132:29 [INFO] [stdout] | [INFO] [stdout] 132 | pk.created_at = Utc.timestamp_millis(1592624592679); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/pk.rs:139:40 [INFO] [stdout] | [INFO] [stdout] 139 | assert_eq!(act.created_at, Utc.timestamp_millis(1592624592679)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/seed.rs:120:36 [INFO] [stdout] | [INFO] [stdout] 120 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/seed.rs:187:29 [INFO] [stdout] | [INFO] [stdout] 187 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/seed.rs:352:29 [INFO] [stdout] | [INFO] [stdout] 352 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/seed.rs:357:45 [INFO] [stdout] | [INFO] [stdout] 357 | assert_eq!(seed_act.created_at, Utc.timestamp_millis(1592624592679)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:63:30 [INFO] [stdout] | [INFO] [stdout] 63 | let created_at = Utc.timestamp_millis(value.get_created_at() as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:149:36 [INFO] [stdout] | [INFO] [stdout] 149 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:257:29 [INFO] [stdout] | [INFO] [stdout] 257 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:275:29 [INFO] [stdout] | [INFO] [stdout] 275 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:307:33 [INFO] [stdout] | [INFO] [stdout] 307 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:311:29 [INFO] [stdout] | [INFO] [stdout] 311 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:336:33 [INFO] [stdout] | [INFO] [stdout] 336 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:340:29 [INFO] [stdout] | [INFO] [stdout] 340 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:370:33 [INFO] [stdout] | [INFO] [stdout] 370 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:374:29 [INFO] [stdout] | [INFO] [stdout] 374 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:400:33 [INFO] [stdout] | [INFO] [stdout] 400 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:408:29 [INFO] [stdout] | [INFO] [stdout] 408 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:435:33 [INFO] [stdout] | [INFO] [stdout] 435 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:443:29 [INFO] [stdout] | [INFO] [stdout] 443 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:462:29 [INFO] [stdout] | [INFO] [stdout] 462 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:493:37 [INFO] [stdout] | [INFO] [stdout] 493 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:503:37 [INFO] [stdout] | [INFO] [stdout] 503 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:507:29 [INFO] [stdout] | [INFO] [stdout] 507 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:568:29 [INFO] [stdout] | [INFO] [stdout] 568 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/convert/proto/wallet.rs:588:29 [INFO] [stdout] | [INFO] [stdout] 588 | created_at: Utc.timestamp_millis(1592624407736), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `archive` [INFO] [stdout] --> src/storage/addressbook.rs:229:55 [INFO] [stdout] | [INFO] [stdout] 229 | fn update_multiple(&self, entry: AddressBookmark, archive: &Archive) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archive` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/sign/bitcoin.rs:392:33 [INFO] [stdout] | [INFO] [stdout] 392 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/sign/bitcoin.rs:447:33 [INFO] [stdout] | [INFO] [stdout] 447 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/sign/bitcoin.rs:534:33 [INFO] [stdout] | [INFO] [stdout] 534 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:679:31 [INFO] [stdout] | [INFO] [stdout] 679 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:696:31 [INFO] [stdout] | [INFO] [stdout] 696 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:721:31 [INFO] [stdout] | [INFO] [stdout] 721 | seed.created_at = Utc.timestamp_millis(1577962800000); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:726:31 [INFO] [stdout] | [INFO] [stdout] 726 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:732:31 [INFO] [stdout] | [INFO] [stdout] 732 | seed.created_at = Utc.timestamp_millis(1577876400000); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:737:31 [INFO] [stdout] | [INFO] [stdout] 737 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:774:33 [INFO] [stdout] | [INFO] [stdout] 774 | created_at: Utc.timestamp_millis(1577962800000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:782:33 [INFO] [stdout] | [INFO] [stdout] 782 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:791:33 [INFO] [stdout] | [INFO] [stdout] 791 | created_at: Utc.timestamp_millis(1577876400000), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/vault.rs:799:33 [INFO] [stdout] | [INFO] [stdout] 799 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `language` is never read [INFO] [stdout] --> src/mnemonic.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct Mnemonic { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 44 | language: Language, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `base_dir` is never read [INFO] [stdout] --> src/storage.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct Storages { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 65 | /// base dir [INFO] [stdout] 66 | base_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Storages` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `keys` and `global` are never read [INFO] [stdout] --> src/storage/vault.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 384 | pub struct CreateWallet { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 385 | storage: Arc, [INFO] [stdout] 386 | keys: Arc>, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | global: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `create` is never used [INFO] [stdout] --> src/structs/crypto.rs:142:19 [INFO] [stdout] | [INFO] [stdout] 139 | impl GlobalKeyRef { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 142 | pub(crate) fn create(nonce: Vec) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/icons.rs:215:31 [INFO] [stdout] | [INFO] [stdout] 215 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Uuid` instead of cloning the inner type [INFO] [stdout] --> src/storage/vault.rs:257:28 [INFO] [stdout] | [INFO] [stdout] 257 | .filter(|id| id.clone().ne(&wallet_id)) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/storage/icons.rs:352:31 [INFO] [stdout] | [INFO] [stdout] 352 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `chrono::DateTime::::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead [INFO] [stdout] --> src/storage/watch.rs:116:37 [INFO] [stdout] | [INFO] [stdout] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp`: use `DateTime::from_timestamp` instead [INFO] [stdout] --> src/storage/watch.rs:116:61 [INFO] [stdout] | [INFO] [stdout] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:4:49 [INFO] [stdout] | [INFO] [stdout] 4 | pub static ref ZERO_TS: DateTime = Utc.timestamp_millis(100); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:52:29 [INFO] [stdout] | [INFO] [stdout] 52 | created_at: Utc.timestamp_millis(100), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:56:29 [INFO] [stdout] | [INFO] [stdout] 56 | created_at: Utc.timestamp_millis(200), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:67:29 [INFO] [stdout] | [INFO] [stdout] 67 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:71:29 [INFO] [stdout] | [INFO] [stdout] 71 | created_at: Utc.timestamp_millis(200), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:82:29 [INFO] [stdout] | [INFO] [stdout] 82 | created_at: Utc.timestamp_millis(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stdout] --> src/structs/utils.rs:86:29 [INFO] [stdout] | [INFO] [stdout] 86 | created_at: Utc.timestamp_millis(200), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sha2::Digest` [INFO] [stdout] --> src/structs/seed.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use sha2::Digest; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hmac::digest::Digest` [INFO] [stdout] --> src/crypto/fingerprint.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use hmac::digest::Digest; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/convert/proto/crypto.rs:243:13 [INFO] [stdout] | [INFO] [stdout] 243 | let mut proto_key: proto_Encrypted = proto_Encrypted::try_from(&value.key)?; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/mnemonic.rs:289:9 [INFO] [stdout] | [INFO] [stdout] 289 | let mut rng = OsRng::default(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `archive` [INFO] [stdout] --> src/storage/addressbook.rs:229:55 [INFO] [stdout] | [INFO] [stdout] 229 | fn update_multiple(&self, entry: AddressBookmark, archive: &Archive) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archive` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `global` [INFO] [stdout] --> src/storage/global_key.rs:466:13 [INFO] [stdout] | [INFO] [stdout] 466 | let global = Some(global_store.get().unwrap()); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_global` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `language` is never read [INFO] [stdout] --> src/mnemonic.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub struct Mnemonic { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 44 | language: Language, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `base_dir` is never read [INFO] [stdout] --> src/storage.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct Storages { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 65 | /// base dir [INFO] [stdout] 66 | base_dir: PathBuf, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Storages` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dump_file` is never used [INFO] [stdout] --> src/storage/addressbook.rs:257:8 [INFO] [stdout] | [INFO] [stdout] 257 | fn dump_file

(path: P) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `keys` and `global` are never read [INFO] [stdout] --> src/storage/vault.rs:386:5 [INFO] [stdout] | [INFO] [stdout] 384 | pub struct CreateWallet { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 385 | storage: Arc, [INFO] [stdout] 386 | keys: Arc>, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | global: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `hdpath` and `address` are never read [INFO] [stdout] --> src/lib.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 93 | pub struct TestAddress { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 94 | pub hdpath: String, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 95 | pub address: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `description`, `from`, and `raw` are never read [INFO] [stdout] --> src/lib.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 99 | pub struct TestTx { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 100 | pub id: String, [INFO] [stdout] | ^^ [INFO] [stdout] 101 | pub description: Option, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 102 | pub from: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 103 | pub raw: String, [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_test_addresses` is never used [INFO] [stdout] --> src/lib.rs:125:12 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn read_test_addresses() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_test_txes` is never used [INFO] [stdout] --> src/lib.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | pub fn read_test_txes() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/migration.rs:70:51 [INFO] [stdout] | [INFO] [stdout] 70 | for entry in fs::read_dir(dir.as_ref().clone()).unwrap() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the type `std::path::Path` does not implement `Clone`, so calling `clone` on `&std::path::Path` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] 70 - for entry in fs::read_dir(dir.as_ref().clone()).unwrap() { [INFO] [stdout] 70 + for entry in fs::read_dir(dir.as_ref()).unwrap() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&uuid::Uuid` instead of cloning the inner type [INFO] [stdout] --> src/storage/vault.rs:257:28 [INFO] [stdout] | [INFO] [stdout] 257 | .filter(|id| id.clone().ne(&wallet_id)) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 51 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 142 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 11.96s [INFO] running `Command { std: "docker" "inspect" "5b59980611c601ef5a481a977d04adfbf3efc941d55b271f9be372937ee7666e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b59980611c601ef5a481a977d04adfbf3efc941d55b271f9be372937ee7666e", kill_on_drop: false }` [INFO] [stdout] 5b59980611c601ef5a481a977d04adfbf3efc941d55b271f9be372937ee7666e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:96c0aa5895ecf336b730ef27bcdde6e21027415df19888aad3cf1448e5d65d90" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-09-05" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] d363f8ceb2500d35407023f0f8f30908ab1a185850148fe86385a4f6648862c7 [INFO] running `Command { std: "docker" "start" "-a" "d363f8ceb2500d35407023f0f8f30908ab1a185850148fe86385a4f6648862c7", kill_on_drop: false }` [INFO] [stderr] warning: private item shadows public glob re-export [INFO] [stderr] --> src/lib.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | extern crate bitcoin; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: the name `bitcoin` in the type namespace is supposed to be publicly re-exported here [INFO] [stderr] --> src/lib.rs:74:16 [INFO] [stderr] | [INFO] [stderr] 74 | pub use self::{blockchain::*, util::*}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] note: but the private item here shadows it [INFO] [stderr] --> src/lib.rs:35:1 [INFO] [stderr] | [INFO] [stderr] 35 | extern crate bitcoin; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: `#[warn(hidden_glob_reexports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `GlobalKeyRef` [INFO] [stderr] --> src/crypto/pk.rs:12:41 [INFO] [stderr] | [INFO] [stderr] 12 | use crate::structs::crypto::{GlobalKey, GlobalKeyRef}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SeedSource`, `crypto::Encrypted`, and `mnemonic::Mnemonic` [INFO] [stderr] --> src/crypto/seed.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | mnemonic::Mnemonic, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 3 | structs::{ [INFO] [stderr] 4 | crypto::Encrypted, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] 5 | seed::{Seed, SeedSource}, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Utc` [INFO] [stderr] --> src/crypto/seed.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use chrono::Utc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `uuid::Uuid` [INFO] [stderr] --> src/crypto/seed.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use uuid::Uuid; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::structs::crypto::GlobalKey` [INFO] [stderr] --> src/crypto/seed.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use crate::structs::crypto::GlobalKey; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/crypto.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/pk.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/address.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/wallet.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/book.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/seed.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/common.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `OpenOptions` [INFO] [stderr] --> src/storage/addressbook.rs:30:16 [INFO] [stderr] | [INFO] [stderr] 30 | fs::{File, OpenOptions}, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `book::AddressRef` [INFO] [stderr] --> src/storage/vault.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | book::AddressRef, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Path` [INFO] [stderr] --> src/storage/global_key.rs:3:17 [INFO] [stderr] | [INFO] [stderr] 3 | use std::path::{Path, PathBuf}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GlobalKeyRef` [INFO] [stderr] --> src/storage/global_key.rs:8:52 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::structs::crypto::{Encrypted, GlobalKey, GlobalKeyRef}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::structs::pk::PrivateKeyHolder` [INFO] [stderr] --> src/storage/admin.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::structs::pk::PrivateKeyHolder; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `TimeZone` [INFO] [stderr] --> src/storage/watch.rs:10:49 [INFO] [stderr] | [INFO] [stderr] 10 | use chrono::{DateTime, Duration, NaiveDateTime, TimeZone, Utc}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::RngCore` [INFO] [stderr] --> src/structs/crypto.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use rand::RngCore; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::rngs::OsRng` [INFO] [stderr] --> src/structs/crypto.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use rand::rngs::OsRng; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::crypto::error::CryptoError` [INFO] [stderr] --> src/structs/crypto.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::crypto::error::CryptoError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::convert::TryFrom` [INFO] [stderr] --> src/structs/seed.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::convert::TryFrom; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/book.rs:12:16 [INFO] [stderr] | [INFO] [stderr] 12 | use protobuf::{parse_from_bytes, Message}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/book.rs:21:17 [INFO] [stderr] | [INFO] [stderr] 21 | let m = parse_from_bytes::(value)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/pk.rs:19:16 [INFO] [stderr] | [INFO] [stderr] 19 | use protobuf::{parse_from_bytes, Message}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/pk.rs:27:17 [INFO] [stderr] | [INFO] [stderr] 27 | let m = parse_from_bytes::(data)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/seed.rs:22:16 [INFO] [stderr] | [INFO] [stderr] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/seed.rs:107:17 [INFO] [stderr] | [INFO] [stderr] 107 | let m = parse_from_bytes::(data)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/wallet.rs:22:16 [INFO] [stderr] | [INFO] [stderr] 22 | use protobuf::{parse_from_bytes, Message}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/wallet.rs:129:17 [INFO] [stderr] | [INFO] [stderr] 129 | let m = parse_from_bytes::(value)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead. [INFO] [stderr] --> src/storage.rs:77:31 [INFO] [stderr] | [INFO] [stderr] 77 | let mut config_dir = env::home_dir().expect("Expect path to home dir"); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `crypto::encrypted::::encrypt_ethereum` [INFO] [stderr] --> src/convert/json/keyfile.rs:362:36 [INFO] [stderr] | [INFO] [stderr] 362 | let encrypted = Encrypted::encrypt_ethereum(pk.to_vec(), password.as_bytes())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/book.rs:38:36 [INFO] [stderr] | [INFO] [stderr] 38 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/pk.rs:45:44 [INFO] [stderr] | [INFO] [stderr] 45 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/seed.rs:120:36 [INFO] [stderr] | [INFO] [stderr] 120 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:63:30 [INFO] [stderr] | [INFO] [stderr] 63 | let created_at = Utc.timestamp_millis(value.get_created_at() as i64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:149:36 [INFO] [stderr] | [INFO] [stderr] 149 | .unwrap_or_else(|| Utc.timestamp_millis(0)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `chrono::DateTime::::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead [INFO] [stderr] --> src/storage/watch.rs:116:37 [INFO] [stderr] | [INFO] [stderr] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `chrono::NaiveDateTime::from_timestamp`: use `DateTime::from_timestamp` instead [INFO] [stderr] --> src/storage/watch.rs:116:61 [INFO] [stderr] | [INFO] [stderr] 116 | last_refresh: DateTime::from_utc(NaiveDateTime::from_timestamp(0, 0), Utc), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:4:49 [INFO] [stderr] | [INFO] [stderr] 4 | pub static ref ZERO_TS: DateTime = Utc.timestamp_millis(100); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sha2::Digest` [INFO] [stderr] --> src/structs/seed.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use sha2::Digest; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `hmac::digest::Digest` [INFO] [stderr] --> src/crypto/fingerprint.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use hmac::digest::Digest; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/convert/proto/crypto.rs:243:13 [INFO] [stderr] | [INFO] [stderr] 243 | let mut proto_key: proto_Encrypted = proto_Encrypted::try_from(&value.key)?; [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/mnemonic.rs:289:9 [INFO] [stderr] | [INFO] [stderr] 289 | let mut rng = OsRng::default(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `archive` [INFO] [stderr] --> src/storage/addressbook.rs:229:55 [INFO] [stderr] | [INFO] [stderr] 229 | fn update_multiple(&self, entry: AddressBookmark, archive: &Archive) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_archive` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field `language` is never read [INFO] [stderr] --> src/mnemonic.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 43 | pub struct Mnemonic { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 44 | language: Language, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field `base_dir` is never read [INFO] [stderr] --> src/storage.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 64 | pub struct Storages { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 65 | /// base dir [INFO] [stderr] 66 | base_dir: PathBuf, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Storages` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `keys` and `global` are never read [INFO] [stderr] --> src/storage/vault.rs:386:5 [INFO] [stderr] | [INFO] [stderr] 384 | pub struct CreateWallet { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 385 | storage: Arc, [INFO] [stderr] 386 | keys: Arc>, [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 390 | global: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `create` is never used [INFO] [stderr] --> src/structs/crypto.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 139 | impl GlobalKeyRef { [INFO] [stderr] | ----------------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 142 | pub(crate) fn create(nonce: Vec) -> Result { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&Uuid` instead of cloning the inner type [INFO] [stderr] --> src/storage/vault.rs:257:28 [INFO] [stderr] | [INFO] [stderr] 257 | .filter(|id| id.clone().ne(&wallet_id)) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `emerald-vault` (lib) generated 51 warnings (run `cargo fix --lib -p emerald-vault` to apply 17 suggestions) [INFO] [stderr] warning: unused import: `self::tests::*` [INFO] [stderr] --> src/util.rs:190:9 [INFO] [stderr] | [INFO] [stderr] 190 | pub use self::tests::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `TryInto` [INFO] [stderr] --> src/convert/proto/crypto.rs:273:33 [INFO] [stderr] | [INFO] [stderr] 273 | use std::convert::{TryFrom, TryInto}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GlobalKeyRef` [INFO] [stderr] --> src/convert/proto/seed.rs:168:33 [INFO] [stderr] | [INFO] [stderr] 168 | crypto::{GlobalKey, GlobalKeyRef, Encrypted}, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `GlobalKeyRef` [INFO] [stderr] --> src/crypto/pk.rs:12:41 [INFO] [stderr] | [INFO] [stderr] 12 | use crate::structs::crypto::{GlobalKey, GlobalKeyRef}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `PRIVATE_KEY_BYTES` [INFO] [stderr] --> src/sign/bip32.rs:59:9 [INFO] [stderr] | [INFO] [stderr] 59 | PRIVATE_KEY_BYTES, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stderr] --> src/sign/bitcoin.rs:683:11 [INFO] [stderr] | [INFO] [stderr] 683 | #[cfg(test_ledger_bitcoin)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `fmt_debug`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows` [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stderr] --> src/sign/ethereum.rs:408:15 [INFO] [stderr] | [INFO] [stderr] 408 | #[cfg(all(integration_test, ledger))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `ledger` [INFO] [stderr] --> src/sign/ethereum.rs:408:33 [INFO] [stderr] | [INFO] [stderr] 408 | #[cfg(all(integration_test, ledger))] [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(ledger)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(ledger)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused import: `LedgerSource` [INFO] [stderr] --> src/sign/ethereum.rs:168:20 [INFO] [stderr] | [INFO] [stderr] 168 | seed::{LedgerSource, Seed, SeedRef, SeedSource}, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `read_test_txes` [INFO] [stderr] --> src/sign/ethereum.rs:185:24 [INFO] [stderr] | [INFO] [stderr] 185 | use crate::tests::{read_test_txes}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stderr] --> src/sign/key_source.rs:369:15 [INFO] [stderr] | [INFO] [stderr] 369 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `speculos` [INFO] [stderr] --> src/sign/key_source.rs:369:33 [INFO] [stderr] | [INFO] [stderr] 369 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(speculos)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(speculos)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stderr] --> src/sign/key_source.rs:417:15 [INFO] [stderr] | [INFO] [stderr] 417 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `speculos` [INFO] [stderr] --> src/sign/key_source.rs:417:33 [INFO] [stderr] | [INFO] [stderr] 417 | #[cfg(all(integration_test, speculos, feature = "hwkey-emulate"))] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(speculos)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(speculos)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused import: `LedgerSource` [INFO] [stderr] --> src/sign/key_source.rs:245:32 [INFO] [stderr] | [INFO] [stderr] 245 | use crate::structs::seed::{LedgerSource, SeedSource}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arc` and `Mutex` [INFO] [stderr] --> src/sign/key_source.rs:248:21 [INFO] [stderr] | [INFO] [stderr] 248 | use std::sync::{Arc, Mutex}; [INFO] [stderr] | ^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/sign/key_source.rs:249:9 [INFO] [stderr] | [INFO] [stderr] 249 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Duration` [INFO] [stderr] --> src/sign/key_source.rs:250:9 [INFO] [stderr] | [INFO] [stderr] 250 | use std::time::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AddressBookmark` and `EthereumAddress` [INFO] [stderr] --> src/storage/addressbook.rs:239:27 [INFO] [stderr] | [INFO] [stderr] 239 | addressbook::{AddressBookmark, AddressbookStorage}, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 243 | EthereumAddress, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `chrono::Utc` [INFO] [stderr] --> src/storage/addressbook.rs:245:9 [INFO] [stderr] | [INFO] [stderr] 245 | use chrono::Utc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tempdir::TempDir` [INFO] [stderr] --> src/storage/addressbook.rs:247:9 [INFO] [stderr] | [INFO] [stderr] 247 | use tempdir::TempDir; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stderr] --> src/storage/vault_bitcoin.rs:270:11 [INFO] [stderr] | [INFO] [stderr] 270 | #[cfg(test_ledger_bitcoin)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stderr] --> src/storage/vault_bitcoin.rs:314:15 [INFO] [stderr] | [INFO] [stderr] 314 | #[cfg(not(test_ledger_bitcoin))] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `test_ledger_bitcoin` [INFO] [stderr] --> src/storage/vault_bitcoin.rs:396:11 [INFO] [stderr] | [INFO] [stderr] 396 | #[cfg(test_ledger_bitcoin)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(test_ledger_bitcoin)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(test_ledger_bitcoin)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `integration_test` [INFO] [stderr] --> src/storage/watch.rs:316:11 [INFO] [stderr] | [INFO] [stderr] 316 | #[cfg(integration_test)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(integration_test)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(integration_test)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::stdin` [INFO] [stderr] --> src/storage/watch.rs:308:9 [INFO] [stderr] | [INFO] [stderr] 308 | use std::io::stdin; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tempdir::TempDir` [INFO] [stderr] --> src/storage/watch.rs:309:9 [INFO] [stderr] | [INFO] [stderr] 309 | use tempdir::TempDir; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::chains::Blockchain` [INFO] [stderr] --> src/storage/watch.rs:310:9 [INFO] [stderr] | [INFO] [stderr] 310 | use crate::chains::Blockchain; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::storage::vault::VaultStorage` [INFO] [stderr] --> src/storage/watch.rs:311:9 [INFO] [stderr] | [INFO] [stderr] 311 | use crate::storage::vault::VaultStorage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::storage::watch::Request` [INFO] [stderr] --> src/storage/watch.rs:312:9 [INFO] [stderr] | [INFO] [stderr] 312 | use crate::storage::watch::Request; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::tests::init_tests` [INFO] [stderr] --> src/storage/watch.rs:313:9 [INFO] [stderr] | [INFO] [stderr] 313 | use crate::tests::init_tests; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `FromHex` and `ToHex` [INFO] [stderr] --> src/lib.rs:87:19 [INFO] [stderr] | [INFO] [stderr] 87 | pub use hex::{FromHex, ToHex}; [INFO] [stderr] | ^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/book.rs:89:20 [INFO] [stderr] | [INFO] [stderr] 89 | use protobuf::{parse_from_bytes, Message}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/book.rs:110:19 [INFO] [stderr] | [INFO] [stderr] 110 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/pk.rs:103:20 [INFO] [stderr] | [INFO] [stderr] 103 | use protobuf::{parse_from_bytes, Message, ProtobufEnum}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/pk.rs:118:19 [INFO] [stderr] | [INFO] [stderr] 118 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/pk.rs:146:21 [INFO] [stderr] | [INFO] [stderr] 146 | let mut m = parse_from_bytes::(tmp.as_slice()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/seed.rs:173:20 [INFO] [stderr] | [INFO] [stderr] 173 | use protobuf::{parse_from_bytes, Message, ProtobufEnum}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/seed.rs:192:19 [INFO] [stderr] | [INFO] [stderr] 192 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/wallet.rs:244:20 [INFO] [stderr] | [INFO] [stderr] 244 | use protobuf::{parse_from_bytes, Message, ProtobufEnum}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead [INFO] [stderr] --> src/convert/proto/wallet.rs:281:19 [INFO] [stderr] | [INFO] [stderr] 281 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:49:27 [INFO] [stderr] | [INFO] [stderr] 49 | chrono::TimeZone::timestamp_millis(&Utc, 0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/book.rs:105:29 [INFO] [stderr] | [INFO] [stderr] 105 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/book.rs:129:29 [INFO] [stderr] | [INFO] [stderr] 129 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/book.rs:147:29 [INFO] [stderr] | [INFO] [stderr] 147 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/pk.rs:114:29 [INFO] [stderr] | [INFO] [stderr] 114 | pk.created_at = Utc.timestamp_millis(1592624592679); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/pk.rs:132:29 [INFO] [stderr] | [INFO] [stderr] 132 | pk.created_at = Utc.timestamp_millis(1592624592679); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/pk.rs:139:40 [INFO] [stderr] | [INFO] [stderr] 139 | assert_eq!(act.created_at, Utc.timestamp_millis(1592624592679)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/seed.rs:187:29 [INFO] [stderr] | [INFO] [stderr] 187 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/seed.rs:352:29 [INFO] [stderr] | [INFO] [stderr] 352 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/seed.rs:357:45 [INFO] [stderr] | [INFO] [stderr] 357 | assert_eq!(seed_act.created_at, Utc.timestamp_millis(1592624592679)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:257:29 [INFO] [stderr] | [INFO] [stderr] 257 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:275:29 [INFO] [stderr] | [INFO] [stderr] 275 | created_at: Utc.timestamp_millis(1592624592679), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:307:33 [INFO] [stderr] | [INFO] [stderr] 307 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:311:29 [INFO] [stderr] | [INFO] [stderr] 311 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:336:33 [INFO] [stderr] | [INFO] [stderr] 336 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:340:29 [INFO] [stderr] | [INFO] [stderr] 340 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:370:33 [INFO] [stderr] | [INFO] [stderr] 370 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:374:29 [INFO] [stderr] | [INFO] [stderr] 374 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:400:33 [INFO] [stderr] | [INFO] [stderr] 400 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:408:29 [INFO] [stderr] | [INFO] [stderr] 408 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:435:33 [INFO] [stderr] | [INFO] [stderr] 435 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:443:29 [INFO] [stderr] | [INFO] [stderr] 443 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:462:29 [INFO] [stderr] | [INFO] [stderr] 462 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:493:37 [INFO] [stderr] | [INFO] [stderr] 493 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:503:37 [INFO] [stderr] | [INFO] [stderr] 503 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:507:29 [INFO] [stderr] | [INFO] [stderr] 507 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:568:29 [INFO] [stderr] | [INFO] [stderr] 568 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/convert/proto/wallet.rs:588:29 [INFO] [stderr] | [INFO] [stderr] 588 | created_at: Utc.timestamp_millis(1592624407736), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/sign/bitcoin.rs:392:33 [INFO] [stderr] | [INFO] [stderr] 392 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/sign/bitcoin.rs:447:33 [INFO] [stderr] | [INFO] [stderr] 447 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/sign/bitcoin.rs:534:33 [INFO] [stderr] | [INFO] [stderr] 534 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:679:31 [INFO] [stderr] | [INFO] [stderr] 679 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:696:31 [INFO] [stderr] | [INFO] [stderr] 696 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:721:31 [INFO] [stderr] | [INFO] [stderr] 721 | seed.created_at = Utc.timestamp_millis(1577962800000); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:726:31 [INFO] [stderr] | [INFO] [stderr] 726 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:732:31 [INFO] [stderr] | [INFO] [stderr] 732 | seed.created_at = Utc.timestamp_millis(1577876400000); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:737:31 [INFO] [stderr] | [INFO] [stderr] 737 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:774:33 [INFO] [stderr] | [INFO] [stderr] 774 | created_at: Utc.timestamp_millis(1577962800000), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:782:33 [INFO] [stderr] | [INFO] [stderr] 782 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:791:33 [INFO] [stderr] | [INFO] [stderr] 791 | created_at: Utc.timestamp_millis(1577876400000), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/vault.rs:799:33 [INFO] [stderr] | [INFO] [stderr] 799 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/icons.rs:215:31 [INFO] [stderr] | [INFO] [stderr] 215 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/storage/icons.rs:352:31 [INFO] [stderr] | [INFO] [stderr] 352 | seed.created_at = Utc.timestamp_millis(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:52:29 [INFO] [stderr] | [INFO] [stderr] 52 | created_at: Utc.timestamp_millis(100), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:56:29 [INFO] [stderr] | [INFO] [stderr] 56 | created_at: Utc.timestamp_millis(200), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:67:29 [INFO] [stderr] | [INFO] [stderr] 67 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:71:29 [INFO] [stderr] | [INFO] [stderr] 71 | created_at: Utc.timestamp_millis(200), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:82:29 [INFO] [stderr] | [INFO] [stderr] 82 | created_at: Utc.timestamp_millis(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `chrono::TimeZone::timestamp_millis`: use `timestamp_millis_opt()` instead [INFO] [stderr] --> src/structs/utils.rs:86:29 [INFO] [stderr] | [INFO] [stderr] 86 | created_at: Utc.timestamp_millis(200), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `global` [INFO] [stderr] --> src/storage/global_key.rs:466:13 [INFO] [stderr] | [INFO] [stderr] 466 | let global = Some(global_store.get().unwrap()); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_global` [INFO] [stderr] [INFO] [stderr] warning: function `dump_file` is never used [INFO] [stderr] --> src/storage/addressbook.rs:257:8 [INFO] [stderr] | [INFO] [stderr] 257 | fn dump_file

(path: P) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `hdpath` and `address` are never read [INFO] [stderr] --> src/lib.rs:94:13 [INFO] [stderr] | [INFO] [stderr] 93 | pub struct TestAddress { [INFO] [stderr] | ----------- fields in this struct [INFO] [stderr] 94 | pub hdpath: String, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 95 | pub address: String, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `id`, `description`, `from`, and `raw` are never read [INFO] [stderr] --> src/lib.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 99 | pub struct TestTx { [INFO] [stderr] | ------ fields in this struct [INFO] [stderr] 100 | pub id: String, [INFO] [stderr] | ^^ [INFO] [stderr] 101 | pub description: Option, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 102 | pub from: Option, [INFO] [stderr] | ^^^^ [INFO] [stderr] 103 | pub raw: String, [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function `read_test_addresses` is never used [INFO] [stderr] --> src/lib.rs:125:12 [INFO] [stderr] | [INFO] [stderr] 125 | pub fn read_test_addresses() -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `read_test_txes` is never used [INFO] [stderr] --> src/lib.rs:132:12 [INFO] [stderr] | [INFO] [stderr] 132 | pub fn read_test_txes() -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/migration.rs:70:51 [INFO] [stderr] | [INFO] [stderr] 70 | for entry in fs::read_dir(dir.as_ref().clone()).unwrap() { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the type `std::path::Path` does not implement `Clone`, so calling `clone` on `&std::path::Path` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 70 - for entry in fs::read_dir(dir.as_ref().clone()).unwrap() { [INFO] [stderr] 70 + for entry in fs::read_dir(dir.as_ref()).unwrap() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&uuid::Uuid` instead of cloning the inner type [INFO] [stderr] --> src/storage/vault.rs:257:28 [INFO] [stderr] | [INFO] [stderr] 257 | .filter(|id| id.clone().ne(&wallet_id)) [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `emerald-vault` (lib test) generated 142 warnings (44 duplicates) (run `cargo fix --lib -p emerald-vault --tests` to apply 22 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.18s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emerald_vault-dd36d141c622caae) [INFO] [stdout] [INFO] [stdout] running 335 tests [INFO] [stdout] test blockchain::bitcoin::tests::correct_address_type ... ok [INFO] [stdout] test blockchain::addresses::tests::generate_segwit_script ... ok [INFO] [stdout] test blockchain::addresses::tests::segwit_address_from_pubkey ... ok [INFO] [stdout] test blockchain::bitcoin::tests::encode_xpub_p2wpkh_p2sh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::merge_two_keymappings ... ok [INFO] [stdout] test blockchain::bitcoin::tests::parse_xpub_p2pkh_testnet ... ok [INFO] [stdout] test blockchain::bitcoin::tests::parse_xpub_p2wpkh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::parse_xpub_p2pkh ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_wrong_address_encoding ... ok [INFO] [stdout] test blockchain::bitcoin::tests::to_string_xpub_p2wpkh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::parse_xpub_p2wpkh_p2sh ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_wrong_address_excess_length ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_wrong_address_insufficient_length ... ok [INFO] [stdout] test blockchain::addresses::tests::gets_bitcoin_address_segwit ... ok [INFO] [stdout] test blockchain::addresses::tests::gets_bitcoin_address_p2wpkh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::to_string_xpub_p2pkh ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_wrong_address_prefix ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_display_real_address ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_display_zero_address ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_parse_real_address ... ok [INFO] [stdout] test blockchain::addresses::tests::gets_bitcoin_address_p2pk ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_parse_real_address_without_prefix ... ok [INFO] [stdout] test blockchain::chains::tests::convert_blockchain_into_u32_and_opposite ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_empty_address_string ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_missing_address_prefix ... ok [INFO] [stdout] test blockchain::chains::tests::convert_blockchain_into_u32 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::should_calculate_message_hash ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::sign_test_3 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::sign_test_2 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::extract_test_1 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::sign_test_4 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::verify_test_1 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::verify_test_1_wrong_addr ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::sign_test_1 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::verify_test_1_invalid_sig ... ok [INFO] [stdout] test blockchain::addresses::tests::gets_ethereum_address ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::verify_test_1_wrong_sig ... ok [INFO] [stdout] test blockchain::ethereum::hex::tests::decode_empty ... ok [INFO] [stdout] test blockchain::ethereum::hex::tests::decode_32 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::verify_test_2 ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::verify_test_3 ... ok [INFO] [stdout] test blockchain::bitcoin::tests::merge_keymapping_with_global ... ok [INFO] [stdout] test blockchain::bitcoin::tests::use_global_key ... ok [INFO] [stdout] test blockchain::ethereum::hex::tests::encode_empty ... ok [INFO] [stdout] test blockchain::ethereum::hex::tests::encode_32 ... ok [INFO] [stdout] test blockchain::ethereum::hex::tests::encode_single ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::decode_signature_from_string ... ok [INFO] [stdout] test blockchain::ethereum::eip191::tests::verify_test_4 ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::convert_to_secp256k1_format ... ok [INFO] [stdout] test blockchain::ethereum::hex::tests::decode_single ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::extract_legacy_tx_signature_existing_0a28d856 ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::should_convert_into_address ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::should_sign_hash ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::extract_legacy_tx_signature ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::sign_eip2930 ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::encode_tx ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::encode_tx_eip1559 ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::sign_eip2930_2 ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::create_tx_eip1559 ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::encode_decode_signature_to_string ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::sign_eip2930_3 ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::rs_should_be_quantity_2 ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::rs_should_be_quantity_1 ... ok [INFO] [stdout] test convert::json::address::tests::should_decode_real_address ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::encode_tx_with_small_gassprice ... ok [INFO] [stdout] test convert::json::address::tests::should_decode_zero_address ... ok [INFO] [stdout] test convert::json::address::tests::should_encode_default_address ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::should_sign_transaction_eip155 ... ok [INFO] [stdout] test convert::json::address::tests::should_encode_real_address ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::should_sign_transaction_for_testnet ... ok [INFO] [stdout] test blockchain::bitcoin::tests::find_path_testnet ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_absent_address ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::should_sign_transaction_for_mainnet ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_empty_address ... ok [INFO] [stdout] test blockchain::ethereum::eip712::tests::sign_test_1 ... ok [INFO] [stdout] test blockchain::ethereum::eip712::tests::verify_test_1 ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_not_string_address ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_wrong_address ... ok [INFO] [stdout] test convert::json::keyfile::tests::extracts_encrypted_from_json_scrypt ... ok [INFO] [stdout] test convert::json::keyfile::tests::export_json_from_encrypted_pk ... ok [INFO] [stdout] test convert::json::keyfile::tests::import_scrypt_default ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_deserialize_kdf_params ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_deserialize_pbkdf2_crypto ... ok [INFO] [stdout] test convert::json::keyfile::tests::import_with_address ... ok [INFO] [stdout] test convert::json::keyfile::tests::import_pbkdf_default ... ok [INFO] [stdout] test convert::json::keyfile::tests::extracts_encrypted_from_json_pbkdf ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_not_decode_not_wrong_crypto ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_deserialize_scrypt_crypto ... ok [INFO] [stdout] test convert::proto::address::tests::encode_decode_plain_ethereum ... ok [INFO] [stdout] test convert::proto::address::tests::encode_decode_testnet_xpub ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_not_decode_unknown_kdf_prf ... ok [INFO] [stdout] test convert::proto::address::tests::encode_decode_xpub ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_not_decode_unknown_cipher ... ok [INFO] [stdout] test convert::proto::seed::tests::empty_label_is_none ... ok [INFO] [stdout] test convert::proto::book::tests::write_and_read ... ok [INFO] [stdout] test convert::proto::book::tests::write_as_protobuf ... ok [INFO] [stdout] test convert::proto::seed::tests::ignore_big_created_at ... ok [INFO] [stdout] test convert::proto::book::tests::ignore_big_created_at ... ok [INFO] [stdout] test convert::proto::book::tests::write_and_read_xpub ... ok [INFO] [stdout] test convert::proto::seed::tests::write_and_read_ledger_fingerprint ... ok [INFO] [stdout] test convert::proto::seed::tests::write_and_read_label ... ok [INFO] [stdout] test convert::proto::seed::tests::write_and_read_ledger ... ok [INFO] [stdout] test convert::proto::seed::tests::write_and_read_timestamp ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_created_at ... ok [INFO] [stdout] test convert::proto::wallet::tests::ignore_big_created_at ... ok [INFO] [stdout] test convert::proto::wallet::tests::should_not_read_entry_with_invalid_hd ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_send_only_entry ... ok [INFO] [stdout] test convert::proto::wallet::tests::reserve_current_seed ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_reserved_hd ... ok [INFO] [stdout] test convert::proto::pk::tests::write_as_protobuf ... ok [INFO] [stdout] test convert::proto::seed::tests::write_and_read_bytes ... ok [INFO] [stdout] test convert::proto::pk::tests::ignore_big_created_at ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_label ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_empty ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet_wo_label ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet_w_seedref ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_as_protobuf ... ok [INFO] [stdout] test crypto::encrypted::tests::doesnt_allow_empty_passwrod ... ok [INFO] [stdout] test crypto::encrypted::tests::deny_invalid_mac ... ok [INFO] [stdout] test crypto::encrypted::tests::encrypt_descrypt_aes128 ... ok [INFO] [stdout] test convert::proto::seed::tests::write_as_protobuf ... ok [INFO] [stdout] test crypto::encrypted::tests::generates_diff_nonce ... ok [INFO] [stdout] test crypto::encrypted::tests::fail_to_decrypt_with_wrong_key ... ok [INFO] [stdout] test convert::proto::crypto::tests::write_read_global_key ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet_bitcoin ... ok [INFO] [stdout] test convert::proto::pk::tests::write_and_read ... ok [INFO] [stdout] test crypto::encrypted::tests::decrypt_std_1 ... ok [INFO] [stdout] test crypto::encrypted::tests::encrypt_decrypt_large ... ok [INFO] [stdout] test crypto::encrypted::tests::verify_mac_2 ... ok [INFO] [stdout] test crypto::encrypted::tests::verify_mac_1 ... ok [INFO] [stdout] test crypto::encrypted::tests::encrypt_0xfac192ce ... ok [INFO] [stdout] test crypto::encrypted::tests::encrypt_0000 ... ok [INFO] [stdout] test crypto::encrypted::tests::no_reencrypt_empty_password ... ok [INFO] [stdout] test crypto::encrypted::tests::split_web3_key ... ok [INFO] [stdout] test crypto::fingerprint::tests::create_zero ... ok [INFO] [stdout] test crypto::encrypted::tests::no_reencrypt_wrong_password ... ok [INFO] [stdout] test crypto::kdf::tests::derive_official_eth_pbkdf2 ... ok [INFO] [stdout] test crypto::kdf::tests::derive_fast_pbkdf2_32 ... ok [INFO] [stdout] test crypto::encrypted::tests::diff_password_per_nonce ... ok [INFO] [stdout] test convert::proto::seed::tests::write_and_read_with_global_key ... ok [INFO] [stdout] test crypto::kdf::tests::derive_fast_pbkdf2_64 ... ok [INFO] [stdout] test crypto::util::tests::should_calculate_big_keccak256 ... ok [INFO] [stdout] test crypto::util::tests::should_calculate_empty_keccak256 ... ok [INFO] [stdout] test crypto::util::tests::should_calculate_small_keccak256 ... ok [INFO] [stdout] test crypto::encrypted::tests::reencrypt_from_legacy ... ok [INFO] [stdout] test migration::source::json_data::tests::parse_keyfile ... ok [INFO] [stdout] test migration::source::json_data::tests::parse_addressbook_json ... ok [INFO] [stdout] test migration::source::json_data::tests::parse_keyfile_ledger ... ok [INFO] [stdout] test crypto::kdf::tests::derive_fast_pbkdf2_32_sha512 ... ok [INFO] [stdout] test crypto::kdf::tests::derive_ultrafast_scrypt_32 ... ok [INFO] [stdout] test migration::source::v3::tests::accepts_archive ... ok [INFO] [stdout] test migration::source::v3::tests::accepts_global_key ... ok [INFO] [stdout] test migration::source::v3::tests::accepts_key ... ok [INFO] [stdout] test migration::source::v3::tests::accepts_bak ... ok [INFO] [stdout] test migration::source::v3::tests::accepts_seed ... ok [INFO] [stdout] test migration::source::v3::tests::ignores_vault ... ok [INFO] [stdout] test migration::source::v3::tests::accepts_wallet ... ok [INFO] [stdout] test migration::source::v3::tests::list_actual_files ... ok [INFO] [stdout] test migration::source::v3::tests::migrate ... ok [INFO] [stdout] test migration::source::v3::tests::accepts_addressbook ... ok [INFO] [stdout] test mnemonic::tests::checksum_for_18 ... ok [INFO] [stdout] test mnemonic::tests::checksum_for_21 ... ok [INFO] [stdout] test mnemonic::tests::checksum_for_24 ... ok [INFO] [stdout] test mnemonic::tests::generates_correct_entropy_length ... ok [INFO] [stdout] test migration::source::v1::tests::migrate_basic ... ok [INFO] [stdout] test mnemonic::tests::checksum_for_15 ... ok [INFO] [stdout] test mnemonic::tests::get_index_24 ... ok [INFO] [stdout] test mnemonic::tests::keeps_zeroes_with_checksum ... ok [INFO] [stdout] test mnemonic::tests::get_index_18 ... ok [INFO] [stdout] test migration::source::v3::tests::move_files ... ok [INFO] [stdout] test mnemonic::tests::generates_correct_mnemonic_length ... ok [INFO] [stdout] test mnemonic::tests::should_calc_entropy_length ... ok [INFO] [stdout] test crypto::encrypted::tests::reencrypt_from_global ... ok [INFO] [stdout] test mnemonic::tests::should_convert_to_sentence ... ok [INFO] [stdout] test mnemonic::tests::should_calc_full_length ... ok [INFO] [stdout] test mnemonic::tests::should_be_compatible_with_bip39js ... ok [INFO] [stdout] test mnemonic::tests::should_be_compatible_with_bip39js_emptypass ... ok [INFO] [stdout] test mnemonic::tests::should_create_from_entropy_15 ... ok [INFO] [stdout] test mnemonic::tests::should_convert_to_seed ... ok [INFO] [stdout] test blockchain::bitcoin::tests::find_path ... ok [INFO] [stdout] test mnemonic::tests::should_extract_length ... ok [INFO] [stdout] test mnemonic::tests::should_fail_from_empty ... ok [INFO] [stdout] test mnemonic::tests::should_fail_from_longer ... ok [INFO] [stdout] test mnemonic::tests::should_fail_from_outrange ... ok [INFO] [stdout] test mnemonic::tests::should_fail_generate_indexes ... ok [INFO] [stdout] test mnemonic::tests::should_fail_on_invalid_length ... ok [INFO] [stdout] test crypto::kdf::tests::derive_scrypt_fast_32 ... ok [INFO] [stdout] test mnemonic::tests::should_generate_entropy ... ok [INFO] [stdout] test mnemonic::tests::should_generate_indexes_12words ... ok [INFO] [stdout] test mnemonic::tests::should_generate_indexes_15words ... ok [INFO] [stdout] test mnemonic::tests::should_generate_indexes_18words ... ok [INFO] [stdout] test mnemonic::tests::should_generate_indexes_21words ... ok [INFO] [stdout] test crypto::kdf::tests::derive_scrypt_fast_64 ... ok [INFO] [stdout] test crypto::kdf::tests::derive_scrypt_with_zero ... ok [INFO] [stdout] test sign::bip32::test::test_key_generation ... ok [INFO] [stdout] test mnemonic::tests::should_generate_indexes_24words ... ok [INFO] [stdout] test sign::bip32::test::test_key_generation_eth ... ok [INFO] [stdout] test mnemonic::tests::should_create_from_sentence_12 ... ok [INFO] [stdout] test mnemonic::tests::should_create_from_entropy_24 ... ok [INFO] [stdout] test mnemonic::tests::should_create_from_sentence_24 ... ok [INFO] [stdout] test mnemonic::tests::should_generate_english_mnemonic ... ok [INFO] [stdout] test sign::bitcoin::tests::encode_basic_unsigned_tx ... ok [INFO] [stdout] test sign::bitcoin::tests::encode_nonsegwit_out_unsigned_tx ... ok [INFO] [stdout] test sign::bitcoin::tests::invalidate_fee_wrong ... ok [INFO] [stdout] test sign::bitcoin::tests::invalidate_large_fee ... ok [INFO] [stdout] test mnemonic::tests::should_create_from_sentence_15 ... ok [INFO] [stdout] test sign::bitcoin::tests::invalidate_no_input ... ok [INFO] [stdout] test sign::bitcoin::tests::invalidate_no_output ... ok [INFO] [stdout] test sign::ethereum::tests::export_stored_pk ... ok [INFO] [stdout] test sign::ethereum::tests::export_pk_from_seed ... ok [INFO] [stdout] test sign::ethereum::tests::sign_erc20_approve ... ok [INFO] [stdout] test sign::ethereum::tests::sign_weth_deposit ... ok [INFO] [stdout] test sign::ethereum::tests::sign_with_provided_pk ... ok [INFO] [stdout] test sign::bitcoin::tests::sign_basic_tx_2 ... ok [INFO] [stdout] test sign::ethereum::tests::sign_with_stored_pk ... ok [INFO] [stdout] test sign::bitcoin::tests::sign_basic_tx ... ok [INFO] [stdout] test sign::bitcoin::tests::sign_two_input_tx ... ok [INFO] [stdout] test sign::bitcoin::tests::witness_basic_tx ... ok [INFO] [stdout] test storage::addressbook::tests::get_one_by_id ... ok [INFO] [stdout] test storage::addressbook::tests::read_empty ... ok [INFO] [stdout] test storage::addressbook::tests::read_one ... ok [INFO] [stdout] test storage::addressbook::tests::read_without_header ... ok [INFO] [stdout] test mnemonic::tests::should_create_from_entropy_18 ... ok [INFO] [stdout] test storage::archive::tests::add_existing_file ... ok [INFO] [stdout] test storage::archive::tests::formats_block ... ok [INFO] [stdout] test storage::archive::tests::formats_description ... ok [INFO] [stdout] test sign::bitcoin::tests::invalidate_not_enough_sent ... ok [INFO] [stdout] test storage::archive::tests::writes_readme ... ok [INFO] [stdout] test storage::files::tests::try_vault_file_from_invalid_name ... ok [INFO] [stdout] test storage::files::tests::try_vault_file_from_invalid_suffix ... ok [INFO] [stdout] test storage::files::tests::try_vault_file_from_standard ... ok [INFO] [stdout] test storage::global_key::tests::cannot_create_when_set ... ok [INFO] [stdout] test storage::global_key::tests::cannot_get_when_unset ... ok [INFO] [stdout] test storage::global_key::tests::create_when_unset ... ok [INFO] [stdout] test sign::ethereum::tests::sign_erc191_message ... ok [INFO] [stdout] test sign::key_source::tests::get_bitcoin_testnet_xpub ... ok [INFO] [stdout] test sign::key_source::tests::get_bitcoin_xpub ... ok [INFO] [stdout] test sign::key_source::tests::get_bitcoin_addresses ... ok [INFO] [stdout] test storage::global_key::tests::none_when_doesnt_exist ... ok [INFO] [stdout] test sign::key_source::tests::get_ethereum_addresses ... ok [INFO] [stdout] test storage::global_key::tests::returns_when_exists ... ok [INFO] [stdout] test storage::global_key::tests::verify_correct ... ok [INFO] [stdout] test storage::global_key::tests::verify_wrong ... ok [INFO] [stdout] test storage::global_key::tests::doesnt_report_ledger ... ok [INFO] [stdout] test sign::bitcoin::tests::validate_ok ... ok [INFO] [stdout] test storage::global_key::tests::can_change_password ... ok [INFO] [stdout] test storage::icons::tests::cut_to_size ... ok [INFO] [stdout] test storage::global_key::tests::ignored_for_legacy_seed ... ok [INFO] [stdout] test storage::global_key::tests::doesnt_change_wrong_password ... ok [INFO] [stdout] test storage::icons::tests::reject_broken_png ... ok [INFO] [stdout] test storage::vault::tests::archive_stale_backup ... ok [INFO] [stdout] test storage::admin::tests::try_all_upgrades ... ok [INFO] [stdout] test storage::vault::tests::delete_wallet_with_pk ... ok [INFO] [stdout] test storage::global_key::tests::is_used_in_encryption ... ok [INFO] [stdout] test storage::vault::tests::delete_wallet_with_pk_keeps_used_twice ... ok [INFO] [stdout] test storage::vault::tests::delete_wallet_with_pk_keeps_others ... ok [INFO] [stdout] test storage::vault::tests::doesnt_reuse_entry_id ... ok [INFO] [stdout] test storage::vault::tests::doesnt_set_entry_label_for_no_entry ... ok [INFO] [stdout] test storage::icons::tests::delete_icon ... ok [INFO] [stdout] test storage::icons::tests::add_icon_for_wallet ... ok [INFO] [stdout] test storage::vault::tests::order_wallets_by_date_and_id ... ok [INFO] [stdout] test storage::vault::tests::creates_seed ... ok [INFO] [stdout] test storage::vault::tests::remove_non_existing_entry ... ok [INFO] [stdout] test storage::vault::tests::remove_first_entry ... ok [INFO] [stdout] test storage::vault::tests::removes_to_archive ... ok [INFO] [stdout] test storage::vault::tests::remove_single_entry ... ok [INFO] [stdout] test storage::vault::tests::remove_second_entry ... ok [INFO] [stdout] test storage::vault::tests::removing_entry_keeps_pk_used_by_another_wallet ... ok [INFO] [stdout] test storage::vault::tests::removing_entry_removes_pk ... ok [INFO] [stdout] test storage::vault::tests::restores_backup ... ok [INFO] [stdout] test storage::global_key::tests::reports_nokey_items ... ok [INFO] [stdout] test storage::vault::tests::safe_update_when_bak_exists ... ok [INFO] [stdout] test storage::vault::tests::safe_update_ok ... ok [INFO] [stdout] test storage::vault::tests::deletes_seed ... ok [INFO] [stdout] test storage::vault::tests::safe_update_deletes_if_archive_full ... ok [INFO] [stdout] test storage::vault::tests::safe_update_copies_to_archive ... ok [INFO] [stdout] test storage::vault::tests::skip_restore_if_ok ... ok [INFO] [stdout] test storage::vault::tests::set_entry_label ... ok [INFO] [stdout] test storage::vault::tests::start_entry_id_from_seq ... ok [INFO] [stdout] test storage::vault::tests::uses_different_entry_ids ... ok [INFO] [stdout] test storage::vault::tests::set_entry_receive_flag ... ok [INFO] [stdout] test storage::vault_bitcoin::tests::add_seed_ledger_with_xpub ... ok [INFO] [stdout] test storage::icons::tests::add_icon_for_seed ... ok [INFO] [stdout] test storage::vault_bitcoin::tests::cannot_create_with_wrong_chain_xpub ... ok [INFO] [stdout] test storage::vault_ethereum::tests::add_single_pk ... ok [INFO] [stdout] test storage::snapshot::tests::backup_and_restore ... ok [INFO] [stdout] test storage::vault_ethereum::tests::remove_after_adding ... ok [INFO] [stdout] test structs::seed::tests::account_id_for_standard_hdpath ... ok [INFO] [stdout] test structs::crypto::tests::tells_that_global_key_is_used ... ok [INFO] [stdout] test structs::utils::tests::ord_by_date ... ok [INFO] [stdout] test structs::utils::tests::ord_greater_with_date ... ok [INFO] [stdout] test structs::utils::tests::ord_same_date_by_id ... ok [INFO] [stdout] test structs::wallet::tests::create_and_access_ledger_seed ... ok [INFO] [stdout] test structs::wallet::tests::fail_decode_invalid_role ... ok [INFO] [stdout] test structs::wallet::tests::get_std_addresses_ethereum ... ok [INFO] [stdout] test structs::wallet::tests::encode_decode_role ... ok [INFO] [stdout] test structs::wallet::tests::parse_valid_entry_id ... ok [INFO] [stdout] test util::tests::should_align_all_zero_bytes ... ok [INFO] [stdout] test util::tests::should_align_empty_bytes ... ok [INFO] [stdout] test util::tests::should_align_full_bytes ... ok [INFO] [stdout] test storage::vault_bitcoin::tests::adds_seed_entry_testnet ... ok [INFO] [stdout] test util::tests::should_align_some_zero_bytes ... ok [INFO] [stdout] test util::tests::should_align_some_bytes ... ok [INFO] [stdout] test util::tests::should_align_to_even_str ... ok [INFO] [stdout] test util::tests::should_convert_address_into_20bytes ... ok [INFO] [stdout] test util::tests::should_convert_key_into_32bytes ... ok [INFO] [stdout] test util::tests::should_convert_u16_to_bytes ... ok [INFO] [stdout] test util::tests::should_convert_u32_to_bytes ... ok [INFO] [stdout] test util::tests::should_convert_u64_to_bytes ... ok [INFO] [stdout] test util::tests::should_convert_u8_to_bytes ... ok [INFO] [stdout] test util::tests::should_convert_zero_string_into_16bytes ... ok [INFO] [stdout] test util::tests::should_count_bytes_for_rlp ... ok [INFO] [stdout] test util::tests::should_generate_timestamp ... ok [INFO] [stdout] test util::tests::should_skip_already_even_str ... ok [INFO] [stdout] test util::tests::should_skip_smaller_length ... ok [INFO] [stdout] test util::tests::should_trim_empty_bytes ... ok [INFO] [stdout] test util::tests::should_trim_hex_prefix ... ok [INFO] [stdout] test util::tests::should_trim_some_bytes ... ok [INFO] [stdout] test util::tests::should_trim_zero_bytes ... ok [INFO] [stdout] test util::tests::should_skip_trim_hex_prefix ... ok [INFO] [stdout] test storage::vault_bitcoin::tests::adds_seed_entry ... ok [INFO] [stdout] test storage::vault_ethereum::tests::doesnt_create_duplicate_entry ... ok [INFO] [stdout] test storage::vault_ethereum::tests::add_seed_entry ... ok [INFO] [stdout] test structs::wallet::tests::get_xpub_addresses_bitcoin ... ok [INFO] [stdout] test storage::vault::tests::order_seeds_by_date_and_id ... ok [INFO] [stdout] test convert::json::keyfile::tests::can_decrypt_web3_scrypt ... ok [INFO] [stdout] test storage::icons::tests::add_icon_as_jpeg ... ok [INFO] [stdout] test storage::vault_ethereum::tests::import_json ... ok [INFO] [stdout] test crypto::kdf::tests::derive_argon2 ... ok [INFO] [stdout] test crypto::kdf::tests::derive_scrypt_slow_64 ... ok [INFO] [stdout] test crypto::kdf::tests::derive_scrypt_slow_32 ... ok [INFO] [stdout] test convert::json::keyfile::tests::export_json_from_raw_pk ... ok [INFO] [stdout] test crypto::kdf::tests::derive_official_eth_slow_pbkdf2 ... ok [INFO] [stdout] test crypto::encrypted::tests::decrypt_known_large ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 335 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.89s [INFO] [stdout] [INFO] [stderr] Doc-tests emerald_vault [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/crypto.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/pk.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/address.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/wallet.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/book.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/seed.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stderr] --> src/proto/common.rs:11:10 [INFO] [stderr] | [INFO] [stderr] 11 | #![allow(box_pointers)] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 7 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test src/storage/snapshot.rs - storage::snapshot::SnapshotRestore (line 27) ... ignored [INFO] [stdout] test src/blockchain/ethereum/address.rs - blockchain::ethereum::address::EthereumAddress::try_from (line 45) ... ok [INFO] [stdout] test src/structs/seed.rs - structs::seed::SeedSource::create_raw (line 103) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 3.25s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "d363f8ceb2500d35407023f0f8f30908ab1a185850148fe86385a4f6648862c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d363f8ceb2500d35407023f0f8f30908ab1a185850148fe86385a4f6648862c7", kill_on_drop: false }` [INFO] [stdout] d363f8ceb2500d35407023f0f8f30908ab1a185850148fe86385a4f6648862c7