[INFO] fetching crate emerald-vault 0.33.0...
[INFO] checking emerald-vault-0.33.0 against nightly-2024-02-05 for check-cfg
[INFO] extracting crate emerald-vault 0.33.0 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate emerald-vault 0.33.0 on toolchain nightly-2024-02-05
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-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-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-02-05" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded open-fastrlp-derive v0.1.1
[INFO] [stderr]   Downloaded block-modes v0.9.1
[INFO] [stderr]   Downloaded ethers-derive-eip712 v1.0.2
[INFO] [stderr]   Downloaded rlp-derive v0.1.0
[INFO] [stderr]   Downloaded bencher v0.1.5
[INFO] [stderr]   Downloaded enum-display-derive v0.1.1
[INFO] [stderr]   Downloaded scrypt v0.10.0
[INFO] [stderr]   Downloaded ethabi v18.0.0
[INFO] [stderr]   Downloaded argon2 v0.4.1
[INFO] [stderr]   Downloaded open-fastrlp v0.1.4
[INFO] [stderr]   Downloaded hdpath v0.6.3
[INFO] [stderr]   Downloaded auto_impl v1.1.2
[INFO] [stderr]   Downloaded protobuf v2.25.2
[INFO] [stderr]   Downloaded bitcoin v0.29.2
[INFO] [stderr]   Downloaded emerald-hwkey v0.5.0
[INFO] [stderr]   Downloaded hidapi v2.5.1
[INFO] [stderr]   Downloaded ethers-core v1.0.2
[INFO] [stderr]   Downloaded byte-array-struct v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ce35d0c8ec0608cbc7ee3ccbcf7f15b8960b359dc33969c6f6da970fb3a91e96
[INFO] running `Command { std: "docker" "start" "-a" "ce35d0c8ec0608cbc7ee3ccbcf7f15b8960b359dc33969c6f6da970fb3a91e96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ce35d0c8ec0608cbc7ee3ccbcf7f15b8960b359dc33969c6f6da970fb3a91e96", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce35d0c8ec0608cbc7ee3ccbcf7f15b8960b359dc33969c6f6da970fb3a91e96", kill_on_drop: false }`
[INFO] [stdout] ce35d0c8ec0608cbc7ee3ccbcf7f15b8960b359dc33969c6f6da970fb3a91e96
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-02-05" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fe198964b3532da2ce8649717a6f40c3424695bcc4e7d04f6d347de8347f3313
[INFO] running `Command { std: "docker" "start" "-a" "fe198964b3532da2ce8649717a6f40c3424695bcc4e7d04f6d347de8347f3313", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling toml_datetime v0.6.3
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling getrandom v0.2.12
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling toml_edit v0.20.2
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling zeroize v1.7.0
[INFO] [stderr]    Compiling serde_json v1.0.113
[INFO] [stderr]     Checking base64ct v1.6.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling rustc-hex v2.1.0
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling byte-slice-cast v1.2.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling const-oid v0.9.6
[INFO] [stderr]    Compiling proc-macro-crate v2.0.2
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling der v0.6.1
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling camino v1.1.6
[INFO] [stderr]    Compiling fixed-hash v0.8.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling spki v0.6.0
[INFO] [stderr]    Compiling uint v0.9.5
[INFO] [stderr]    Compiling pkcs8 v0.9.0
[INFO] [stderr]    Compiling crypto-bigint v0.4.9
[INFO] [stderr]    Compiling ff v0.12.1
[INFO] [stderr]    Compiling secp256k1-sys v0.6.1
[INFO] [stderr]     Checking aho-corasick v1.1.2
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling base16ct v0.1.1
[INFO] [stderr]    Compiling group v0.12.1
[INFO] [stderr]    Compiling sec1 v0.3.0
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking regex-automata v0.4.5
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling keccak v0.1.5
[INFO] [stderr]    Compiling hidapi v2.5.1
[INFO] [stderr]    Compiling serde_derive v1.0.196
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling auto_impl v1.1.2
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling thiserror v1.0.56
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling rfc6979 v0.3.1
[INFO] [stderr]    Compiling elliptic-curve v0.12.3
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]    Compiling signature v1.6.4
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]    Compiling impl-trait-for-tuples v0.2.2
[INFO] [stderr]    Compiling parity-scale-codec-derive v3.6.9
[INFO] [stderr]    Compiling scale-info-derive v2.10.0
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling strum_macros v0.24.3
[INFO] [stderr]     Checking bitcoin_hashes v0.11.0
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]    Compiling cpufeatures v0.2.12
[INFO] [stderr]     Checking serde v1.0.196
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]     Checking secp256k1 v0.24.3
[INFO] [stderr]    Compiling rlp-derive v0.1.0
[INFO] [stderr]    Compiling ecdsa v0.14.8
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]     Checking password-hash v0.4.2
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling unicode-segmentation v1.10.1
[INFO] [stderr]    Compiling time-core v0.1.2
[INFO] [stderr]     Checking bech32 v0.9.1
[INFO] [stderr]    Compiling num-conv v0.1.0
[INFO] [stderr]     Checking bitcoin v0.29.2
[INFO] [stderr]    Compiling time-macros v0.2.17
[INFO] [stderr]    Compiling convert_case v0.6.0
[INFO] [stderr]    Compiling bytes v1.5.0
[INFO] [stderr]    Compiling impl-serde v0.4.0
[INFO] [stderr]    Compiling rlp v0.5.2
[INFO] [stderr]    Compiling open-fastrlp-derive v0.1.1
[INFO] [stderr]    Compiling impl-rlp v0.3.0
[INFO] [stderr]    Compiling cargo-platform v0.1.6
[INFO] [stderr]    Compiling cargo_metadata v0.15.4
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling parity-scale-codec v3.6.9
[INFO] [stderr]     Checking deranged v0.3.11
[INFO] [stderr]    Compiling chrono v0.4.33
[INFO] [stderr]    Compiling scale-info v2.10.0
[INFO] [stderr]    Compiling impl-codec v0.6.0
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking ethbloom v0.13.0
[INFO] [stderr]    Compiling primitive-types v0.12.2
[INFO] [stderr]    Compiling k256 v0.11.6
[INFO] [stderr]    Compiling strum v0.24.1
[INFO] [stderr]     Checking quote v1.0.35
[INFO] [stderr]     Checking fdeflate v0.3.4
[INFO] [stderr]    Compiling protobuf v2.25.2
[INFO] [stderr]    Compiling emerald-hwkey v0.5.0
[INFO] [stderr]     Checking num_threads v0.1.6
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]     Checking time v0.3.34
[INFO] [stderr]     Checking png v0.17.11
[INFO] [stderr]    Compiling ethereum-types v0.14.1
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking hdpath v0.6.3
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking pbkdf2 v0.11.0
[INFO] [stderr]    Compiling open-fastrlp v0.1.4
[INFO] [stderr]    Compiling ethabi v18.0.0
[INFO] [stderr]     Checking salsa20 v0.10.2
[INFO] [stderr]     Checking num-complex v0.4.4
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]     Checking ripemd v0.1.3
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]    Compiling emerald-vault v0.33.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking jpeg-decoder v0.3.1
[INFO] [stderr]     Checking bytemuck v1.14.1
[INFO] [stderr]     Checking argon2 v0.4.1
[INFO] [stderr]     Checking ethers-core v1.0.2
[INFO] [stderr]     Checking num v0.4.1
[INFO] [stderr]     Checking csv v1.3.0
[INFO] [stderr]     Checking scrypt v0.10.0
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking image v0.24.8
[INFO] [stderr]     Checking byte-array-struct v0.2.0
[INFO] [stderr]     Checking uuid v1.7.0
[INFO] [stderr]     Checking colored v2.1.0
[INFO] [stderr]     Checking zip v0.6.6
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]    Compiling enum-display-derive v0.1.1
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.3
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking glob v0.3.1
[INFO] [stderr]     Checking remove_dir_all v0.5.3
[INFO] [stderr]     Checking fs_extra v1.3.0
[INFO] [stderr]     Checking block-modes v0.9.1
[INFO] [stderr]     Checking quickcheck v0.9.2
[INFO] [stderr]     Checking simple_logger v4.3.3
[INFO] [stderr]     Checking bencher v0.1.5
[INFO] [stderr]     Checking tempdir v0.3.7
[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`, `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: 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: 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: 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: 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: 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`, `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`, `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: 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: `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`, `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::<proto_BookItem>(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::<proto_PrivateKey>(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::<proto_Seed>(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::<proto_Wallet>(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 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::<proto_BookItem>(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::<proto_BootItem>(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::<proto_PrivateKey>(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::<proto_PrivateKey>(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::<proto_PrivateKey>(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::<proto_Seed>(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::<proto_Seed>(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::<proto_Wallet>(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::<proto_Wallet>(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 `crypto::encrypted::<impl structs::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 `crypto::encrypted::<impl structs::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/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: use of deprecated associated function `chrono::DateTime::<Tz>::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 `from_timestamp_opt()` 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> = 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 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: 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/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: 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::<Tz>::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 `from_timestamp_opt()` 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> = 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: 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<bool, VaultError> {
[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<VaultStorage>,
[INFO] [stdout] 386 |     keys: Arc<dyn VaultAccessByFile<PrivateKeyHolder>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 390 |     global: Option<GlobalKey>,
[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<u8>) -> Result<GlobalKeyRef, VaultError> {
[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: 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: 44 warnings emitted
[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 import: `Kdf`
[INFO] [stdout]   --> benches/bench_crypto.rs:25:51
[INFO] [stdout]    |
[INFO] [stdout] 25 | use emerald::structs::crypto::{Argon2, GlobalKey, Kdf};
[INFO] [stdout]    |                                                   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[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<bool, VaultError> {
[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<P>(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<VaultStorage>,
[INFO] [stdout] 386 |     keys: Arc<dyn VaultAccessByFile<PrivateKeyHolder>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 390 |     global: Option<GlobalKey>,
[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<TestAddress> {
[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<TestTx> {
[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]    |                                                   ^^^^^^^^ help: remove this redundant call
[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] 
[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: 122 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 33.60s
[INFO] running `Command { std: "docker" "inspect" "fe198964b3532da2ce8649717a6f40c3424695bcc4e7d04f6d347de8347f3313", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe198964b3532da2ce8649717a6f40c3424695bcc4e7d04f6d347de8347f3313", kill_on_drop: false }`
[INFO] [stdout] fe198964b3532da2ce8649717a6f40c3424695bcc4e7d04f6d347de8347f3313
