[INFO] fetching crate emerald-vault 0.29.2... [INFO] testing emerald-vault-0.29.2 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate emerald-vault 0.29.2 into /workspace/builds/worker-10/source [INFO] validating manifest of crates.io crate emerald-vault 0.29.2 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate emerald-vault 0.29.2 [INFO] finished tweaking crates.io crate emerald-vault 0.29.2 [INFO] tweaked toml for crates.io crate emerald-vault 0.29.2 written to /workspace/builds/worker-10/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 595e72d64cddfebfec24350e770dc8011d6c0d8bf9708c3181d2957aece39f95 [INFO] running `Command { std: "docker" "start" "-a" "595e72d64cddfebfec24350e770dc8011d6c0d8bf9708c3181d2957aece39f95", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "595e72d64cddfebfec24350e770dc8011d6c0d8bf9708c3181d2957aece39f95", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "595e72d64cddfebfec24350e770dc8011d6c0d8bf9708c3181d2957aece39f95", kill_on_drop: false }` [INFO] [stdout] 595e72d64cddfebfec24350e770dc8011d6c0d8bf9708c3181d2957aece39f95 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 7528b0144fc01614455fd0f6197b06789bc658cbb20c61bfeb59b453c7445413 [INFO] running `Command { std: "docker" "start" "-a" "7528b0144fc01614455fd0f6197b06789bc658cbb20c61bfeb59b453c7445413", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling bitcoin_hashes v0.10.0 [INFO] [stderr] Compiling bech32 v0.8.1 [INFO] [stderr] Compiling base64ct v1.0.1 [INFO] [stderr] Compiling rand_core v0.6.3 [INFO] [stderr] Compiling protobuf v2.25.2 [INFO] [stderr] Compiling emerald-hwkey v0.1.2 [INFO] [stderr] Compiling base64 v0.12.3 [INFO] [stderr] Compiling emerald-vault v0.29.2 (/opt/rustwide/workdir) [INFO] [stderr] Compiling rustc-hex v2.1.0 [INFO] [stderr] Compiling bitcoin_hashes v0.9.7 [INFO] [stderr] Compiling num-bigint v0.3.3 [INFO] [stderr] Compiling num-rational v0.3.2 [INFO] [stderr] Compiling secp256k1-sys v0.4.2 [INFO] [stderr] Compiling hidapi v1.4.1 [INFO] [stderr] Compiling getrandom v0.2.6 [INFO] [stderr] Compiling time v0.3.9 [INFO] [stderr] Compiling num-complex v0.3.1 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling crypto-mac v0.9.1 [INFO] [stderr] Compiling cipher v0.2.5 [INFO] [stderr] Compiling uuid v0.8.2 [INFO] [stderr] Compiling rlp v0.5.1 [INFO] [stderr] Compiling password-hash v0.3.2 [INFO] [stderr] Compiling byte-array-struct v0.2.0 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling digest v0.10.3 [INFO] [stderr] Compiling sha2 v0.9.9 [INFO] [stderr] Compiling ripemd160 v0.9.1 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling enum-display-derive v0.1.1 [INFO] [stderr] Compiling pbkdf2 v0.5.0 [INFO] [stderr] Compiling hmac v0.9.0 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling ctr v0.6.0 [INFO] [stderr] Compiling aes-soft v0.6.4 [INFO] [stderr] Compiling ethabi v2.0.1 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha2 v0.10.2 [INFO] [stderr] Compiling blake2 v0.10.4 [INFO] [stderr] Compiling sha3 v0.10.1 [INFO] [stderr] Compiling aes-ctr v0.6.0 [INFO] [stderr] Compiling scrypt v0.4.1 [INFO] [stderr] Compiling pbkdf2 v0.10.1 [INFO] [stderr] Compiling argon2 v0.3.4 [INFO] [stderr] Compiling secp256k1 v0.20.3 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling num v0.3.1 [INFO] [stderr] Compiling bitcoin v0.27.1 [INFO] [stderr] Compiling futures-executor v0.3.21 [INFO] [stderr] Compiling futures v0.3.21 [INFO] [stderr] Compiling hdpath v0.6.0 [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> src/convert/json/keyfile.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::Deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` 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] [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: `futures::stream::iter` [INFO] [stdout] --> src/sign/ethereum.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use futures::stream::iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `book::AddressRef` [INFO] [stdout] --> src/storage/vault.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | 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: `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: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | error::Error, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/storage.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | 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 enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:40:34 [INFO] [stdout] | [INFO] [stdout] 40 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:46:33 [INFO] [stdout] | [INFO] [stdout] 46 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:52:23 [INFO] [stdout] | [INFO] [stdout] 52 | impl fmt::Display for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:65:23 [INFO] [stdout] | [INFO] [stdout] 65 | impl error::Error for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | Error::UnexpectedHexEncoding(err) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:48:16 [INFO] [stdout] | [INFO] [stdout] 48 | Error::EcdsaCrypto(err) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stdout] --> src/blockchain/error.rs:55:20 [INFO] [stdout] | [INFO] [stdout] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/blockchain/error.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:57:20 [INFO] [stdout] | [INFO] [stdout] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:60:20 [INFO] [stdout] | [INFO] [stdout] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:72:20 [INFO] [stdout] | [INFO] [stdout] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:73:20 [INFO] [stdout] | [INFO] [stdout] 73 | Error::EcdsaCrypto(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/convert/error.rs:46:18 [INFO] [stdout] | [INFO] [stdout] 46 | impl From for ConversionError { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/convert/error.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 47 | fn from(_: error::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/mnemonic/error.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/mnemonic/error.rs:33:30 [INFO] [stdout] | [INFO] [stdout] 33 | fn from(err: blockchain::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stdout] --> src/sign/bitcoin.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | util::{bip143::SighashComponents, bip32::ChildNumber, psbt::serialize::Serialize}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stdout] --> src/sign/bitcoin.rs:174:20 [INFO] [stdout] | [INFO] [stdout] 174 | let hash = SighashComponents::new(tx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/storage/error.rs:58:44 [INFO] [stdout] | [INFO] [stdout] 58 | impl std::convert::From for VaultError { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/storage/error.rs:59:37 [INFO] [stdout] | [INFO] [stdout] 59 | fn from(err: blockchain::error::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/storage/error.rs:61:39 [INFO] [stdout] | [INFO] [stdout] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 19 | use super::super::Error; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:49:50 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn try_from(data: &[u8]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:51:31 [INFO] [stdout] | [INFO] [stdout] 51 | return Err(Error::InvalidLength(data.len())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:79:16 [INFO] [stdout] | [INFO] [stdout] 79 | type Err = Error; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:83:31 [INFO] [stdout] | [INFO] [stdout] 83 | return Err(Error::InvalidHexLength(s.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:19:20 [INFO] [stdout] | [INFO] [stdout] 19 | use super::{super::Error, EthereumAddress}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:109:72 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn sign_message(&self, msg: &str) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:114:72 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn sign_bytes(&self, data: &[u8]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:119:87 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn sign_hash(&self, hash: [u8; KECCAK256_BYTES]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/transaction.rs:19:27 [INFO] [stdout] | [INFO] [stdout] 19 | use super::{super::error::Error, EthereumAddress, EthereumPrivateKey, EthereumSignature}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/transaction.rs:54:26 [INFO] [stdout] | [INFO] [stdout] 54 | ) -> Result, Error> { [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] [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:111:17 [INFO] [stdout] | [INFO] [stdout] 111 | 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:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::InvalidLength::0` [INFO] [stdout] --> src/blockchain/error.rs:55:34 [INFO] [stdout] | [INFO] [stdout] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stdout] --> src/blockchain/error.rs:56:37 [INFO] [stdout] | [INFO] [stdout] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stdout] --> src/blockchain/error.rs:57:42 [INFO] [stdout] | [INFO] [stdout] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stdout] --> src/blockchain/error.rs:60:32 [INFO] [stdout] | [INFO] [stdout] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stdout] --> src/blockchain/error.rs:72:42 [INFO] [stdout] | [INFO] [stdout] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stdout] --> src/blockchain/error.rs:73:32 [INFO] [stdout] | [INFO] [stdout] 73 | Error::EcdsaCrypto(ref err) => Some(err), [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 field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stdout] --> src/storage/error.rs:61:56 [INFO] [stdout] | [INFO] [stdout] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bitcoin_hashes::HashEngine` [INFO] [stdout] --> src/sign/bitcoin.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use bitcoin_hashes::HashEngine; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `archive` [INFO] [stdout] --> src/storage/addressbook.rs:260:55 [INFO] [stdout] | [INFO] [stdout] 260 | 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: 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/storage/global_key.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut g = self.get()?; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `language` [INFO] [stdout] --> src/mnemonic.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | language: Language, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/mnemonic.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `base_dir` [INFO] [stdout] --> src/storage.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | 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] --> src/storage.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `keys` [INFO] [stdout] --> src/storage/vault.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | keys: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `global` [INFO] [stdout] --> src/storage/vault.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 388 | global: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `create` [INFO] [stdout] --> src/structs/crypto.rs:142:19 [INFO] [stdout] | [INFO] [stdout] 142 | pub(crate) fn create(nonce: Vec) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 73 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 07s [INFO] running `Command { std: "docker" "inspect" "7528b0144fc01614455fd0f6197b06789bc658cbb20c61bfeb59b453c7445413", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7528b0144fc01614455fd0f6197b06789bc658cbb20c61bfeb59b453c7445413", kill_on_drop: false }` [INFO] [stdout] 7528b0144fc01614455fd0f6197b06789bc658cbb20c61bfeb59b453c7445413 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 7ef1ac51393be0d7ec341f5d190ecb850f0a38c4afecdcc4151f73ca583dcd2f [INFO] running `Command { std: "docker" "start" "-a" "7ef1ac51393be0d7ec341f5d190ecb850f0a38c4afecdcc4151f73ca583dcd2f", kill_on_drop: false }` [INFO] [stderr] Compiling colored v1.9.3 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Compiling env_logger v0.7.1 [INFO] [stderr] Compiling zip v0.5.13 [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> src/convert/json/keyfile.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::Deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` 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] [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: `futures::stream::iter` [INFO] [stdout] --> src/sign/ethereum.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use futures::stream::iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `book::AddressRef` [INFO] [stdout] --> src/storage/vault.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | 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: `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: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | error::Error, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/storage.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | 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 enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:40:34 [INFO] [stdout] | [INFO] [stdout] 40 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:46:33 [INFO] [stdout] | [INFO] [stdout] 46 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:52:23 [INFO] [stdout] | [INFO] [stdout] 52 | impl fmt::Display for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:65:23 [INFO] [stdout] | [INFO] [stdout] 65 | impl error::Error for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | Error::UnexpectedHexEncoding(err) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:48:16 [INFO] [stdout] | [INFO] [stdout] 48 | Error::EcdsaCrypto(err) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stdout] --> src/blockchain/error.rs:55:20 [INFO] [stdout] | [INFO] [stdout] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/blockchain/error.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:57:20 [INFO] [stdout] | [INFO] [stdout] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:60:20 [INFO] [stdout] | [INFO] [stdout] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:72:20 [INFO] [stdout] | [INFO] [stdout] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:73:20 [INFO] [stdout] | [INFO] [stdout] 73 | Error::EcdsaCrypto(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/convert/error.rs:46:18 [INFO] [stdout] | [INFO] [stdout] 46 | impl From for ConversionError { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/convert/error.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 47 | fn from(_: error::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/mnemonic/error.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/mnemonic/error.rs:33:30 [INFO] [stdout] | [INFO] [stdout] 33 | fn from(err: blockchain::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stdout] --> src/sign/bitcoin.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | util::{bip143::SighashComponents, bip32::ChildNumber, psbt::serialize::Serialize}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stdout] --> src/sign/bitcoin.rs:174:20 [INFO] [stdout] | [INFO] [stdout] 174 | let hash = SighashComponents::new(tx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/storage/error.rs:58:44 [INFO] [stdout] | [INFO] [stdout] 58 | impl std::convert::From for VaultError { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/storage/error.rs:59:37 [INFO] [stdout] | [INFO] [stdout] 59 | fn from(err: blockchain::error::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/storage/error.rs:61:39 [INFO] [stdout] | [INFO] [stdout] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 19 | use super::super::Error; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:49:50 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn try_from(data: &[u8]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:51:31 [INFO] [stdout] | [INFO] [stdout] 51 | return Err(Error::InvalidLength(data.len())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:79:16 [INFO] [stdout] | [INFO] [stdout] 79 | type Err = Error; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:83:31 [INFO] [stdout] | [INFO] [stdout] 83 | return Err(Error::InvalidHexLength(s.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:19:20 [INFO] [stdout] | [INFO] [stdout] 19 | use super::{super::Error, EthereumAddress}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:109:72 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn sign_message(&self, msg: &str) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:114:72 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn sign_bytes(&self, data: &[u8]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:119:87 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn sign_hash(&self, hash: [u8; KECCAK256_BYTES]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/transaction.rs:19:27 [INFO] [stdout] | [INFO] [stdout] 19 | use super::{super::error::Error, EthereumAddress, EthereumPrivateKey, EthereumSignature}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/transaction.rs:54:26 [INFO] [stdout] | [INFO] [stdout] 54 | ) -> Result, Error> { [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] [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:111:17 [INFO] [stdout] | [INFO] [stdout] 111 | 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:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | let m = parse_from_bytes::(value)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::InvalidLength::0` [INFO] [stdout] --> src/blockchain/error.rs:55:34 [INFO] [stdout] | [INFO] [stdout] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stdout] --> src/blockchain/error.rs:56:37 [INFO] [stdout] | [INFO] [stdout] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stdout] --> src/blockchain/error.rs:57:42 [INFO] [stdout] | [INFO] [stdout] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stdout] --> src/blockchain/error.rs:60:32 [INFO] [stdout] | [INFO] [stdout] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stdout] --> src/blockchain/error.rs:72:42 [INFO] [stdout] | [INFO] [stdout] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stdout] --> src/blockchain/error.rs:73:32 [INFO] [stdout] | [INFO] [stdout] 73 | Error::EcdsaCrypto(ref err) => Some(err), [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 field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stdout] --> src/storage/error.rs:61:56 [INFO] [stdout] | [INFO] [stdout] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bitcoin_hashes::HashEngine` [INFO] [stdout] --> src/sign/bitcoin.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use bitcoin_hashes::HashEngine; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `archive` [INFO] [stdout] --> src/storage/addressbook.rs:260:55 [INFO] [stdout] | [INFO] [stdout] 260 | 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: 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/storage/global_key.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut g = self.get()?; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `language` [INFO] [stdout] --> src/mnemonic.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | language: Language, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/mnemonic.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `base_dir` [INFO] [stdout] --> src/storage.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | 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] --> src/storage.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `keys` [INFO] [stdout] --> src/storage/vault.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | keys: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `global` [INFO] [stdout] --> src/storage/vault.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 388 | global: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `create` [INFO] [stdout] --> src/structs/crypto.rs:142:19 [INFO] [stdout] | [INFO] [stdout] 142 | pub(crate) fn create(nonce: Vec) -> Result { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 73 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling simple_logger v1.16.0 [INFO] [stderr] Compiling quickcheck v0.9.2 [INFO] [stderr] Compiling emerald-vault v0.29.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `serde::Deserialize` [INFO] [stdout] --> src/convert/json/keyfile.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use serde::Deserialize; [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:180:45 [INFO] [stdout] | [INFO] [stdout] 180 | use crate::structs::crypto::{GlobalKey, GlobalKeyRef}; [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: `AccountHDPath` [INFO] [stdout] --> src/sign/bitcoin.rs:334:34 [INFO] [stdout] | [INFO] [stdout] 334 | use hdpath::{StandardHDPath, AccountHDPath}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tempdir::TempDir` [INFO] [stdout] --> src/sign/bitcoin.rs:338:9 [INFO] [stdout] | [INFO] [stdout] 338 | use tempdir::TempDir; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::storage::vault::VaultStorage` [INFO] [stdout] --> src/sign/bitcoin.rs:339:9 [INFO] [stdout] | [INFO] [stdout] 339 | use crate::storage::vault::VaultStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::structs::seed::LedgerSource` [INFO] [stdout] --> src/sign/bitcoin.rs:340:9 [INFO] [stdout] | [INFO] [stdout] 340 | use crate::structs::seed::LedgerSource; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::structs::wallet::Wallet` [INFO] [stdout] --> src/sign/bitcoin.rs:341:9 [INFO] [stdout] | [INFO] [stdout] 341 | use crate::structs::wallet::Wallet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::stream::iter` [INFO] [stdout] --> src/sign/ethereum.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use futures::stream::iter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tests::*` [INFO] [stdout] --> src/storage/vault_ethereum.rs:189:9 [INFO] [stdout] | [INFO] [stdout] 189 | tests::*, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `book::AddressRef` [INFO] [stdout] --> src/storage/vault.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | 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: `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: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | error::Error, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/storage.rs:74:31 [INFO] [stdout] | [INFO] [stdout] 74 | 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 enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:40:34 [INFO] [stdout] | [INFO] [stdout] 40 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:46:33 [INFO] [stdout] | [INFO] [stdout] 46 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:52:23 [INFO] [stdout] | [INFO] [stdout] 52 | impl fmt::Display for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/error.rs:65:23 [INFO] [stdout] | [INFO] [stdout] 65 | impl error::Error for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:42:16 [INFO] [stdout] | [INFO] [stdout] 42 | Error::UnexpectedHexEncoding(err) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:48:16 [INFO] [stdout] | [INFO] [stdout] 48 | Error::EcdsaCrypto(err) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stdout] --> src/blockchain/error.rs:55:20 [INFO] [stdout] | [INFO] [stdout] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/blockchain/error.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:57:20 [INFO] [stdout] | [INFO] [stdout] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:60:20 [INFO] [stdout] | [INFO] [stdout] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stdout] --> src/blockchain/error.rs:72:20 [INFO] [stdout] | [INFO] [stdout] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stdout] --> src/blockchain/error.rs:73:20 [INFO] [stdout] | [INFO] [stdout] 73 | Error::EcdsaCrypto(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/convert/error.rs:46:18 [INFO] [stdout] | [INFO] [stdout] 46 | impl From for ConversionError { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/convert/error.rs:47:23 [INFO] [stdout] | [INFO] [stdout] 47 | fn from(_: error::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/mnemonic/error.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | impl From for Error { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/mnemonic/error.rs:33:30 [INFO] [stdout] | [INFO] [stdout] 33 | fn from(err: blockchain::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stdout] --> src/sign/bitcoin.rs:16:20 [INFO] [stdout] | [INFO] [stdout] 16 | util::{bip143::SighashComponents, bip32::ChildNumber, psbt::serialize::Serialize}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stdout] --> src/sign/bitcoin.rs:174:20 [INFO] [stdout] | [INFO] [stdout] 174 | let hash = SighashComponents::new(tx) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/storage/error.rs:58:44 [INFO] [stdout] | [INFO] [stdout] 58 | impl std::convert::From for VaultError { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/storage/error.rs:59:37 [INFO] [stdout] | [INFO] [stdout] 59 | fn from(err: blockchain::error::Error) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/storage/error.rs:61:39 [INFO] [stdout] | [INFO] [stdout] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 19 | use super::super::Error; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:49:50 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn try_from(data: &[u8]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:51:31 [INFO] [stdout] | [INFO] [stdout] 51 | return Err(Error::InvalidLength(data.len())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:79:16 [INFO] [stdout] | [INFO] [stdout] 79 | type Err = Error; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stdout] --> src/blockchain/ethereum/address.rs:83:31 [INFO] [stdout] | [INFO] [stdout] 83 | return Err(Error::InvalidHexLength(s.to_string())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:19:20 [INFO] [stdout] | [INFO] [stdout] 19 | use super::{super::Error, EthereumAddress}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:109:72 [INFO] [stdout] | [INFO] [stdout] 109 | pub fn sign_message(&self, msg: &str) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:114:72 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn sign_bytes(&self, data: &[u8]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/signature.rs:119:87 [INFO] [stdout] | [INFO] [stdout] 119 | pub fn sign_hash(&self, hash: [u8; KECCAK256_BYTES]) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/transaction.rs:19:27 [INFO] [stdout] | [INFO] [stdout] 19 | use super::{super::error::Error, EthereumAddress, EthereumPrivateKey, EthereumSignature}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stdout] --> src/blockchain/ethereum/transaction.rs:54:26 [INFO] [stdout] | [INFO] [stdout] 54 | ) -> Result, Error> { [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] [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:111:17 [INFO] [stdout] | [INFO] [stdout] 111 | 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:128:17 [INFO] [stdout] | [INFO] [stdout] 128 | 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: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:172:20 [INFO] [stdout] | [INFO] [stdout] 172 | 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:193:19 [INFO] [stdout] | [INFO] [stdout] 193 | 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:232:20 [INFO] [stdout] | [INFO] [stdout] 232 | 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:269:19 [INFO] [stdout] | [INFO] [stdout] 269 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::InvalidLength::0` [INFO] [stdout] --> src/blockchain/error.rs:55:34 [INFO] [stdout] | [INFO] [stdout] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stdout] --> src/blockchain/error.rs:56:37 [INFO] [stdout] | [INFO] [stdout] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stdout] --> src/blockchain/error.rs:57:42 [INFO] [stdout] | [INFO] [stdout] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stdout] --> src/blockchain/error.rs:60:32 [INFO] [stdout] | [INFO] [stdout] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stdout] --> src/blockchain/error.rs:72:42 [INFO] [stdout] | [INFO] [stdout] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stdout] --> src/blockchain/error.rs:73:32 [INFO] [stdout] | [INFO] [stdout] 73 | Error::EcdsaCrypto(ref err) => Some(err), [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 field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stdout] --> src/storage/error.rs:61:56 [INFO] [stdout] | [INFO] [stdout] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bitcoin_hashes::HashEngine` [INFO] [stdout] --> src/sign/bitcoin.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use bitcoin_hashes::HashEngine; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `archive` [INFO] [stdout] --> src/storage/addressbook.rs:260:55 [INFO] [stdout] | [INFO] [stdout] 260 | 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:465:13 [INFO] [stdout] | [INFO] [stdout] 465 | 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: unused variable: `seed_id` [INFO] [stdout] --> src/convert/proto/seed.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let seed_id = seed.id.clone(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seed_id` [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/storage/global_key.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut g = self.get()?; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `language` [INFO] [stdout] --> src/mnemonic.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | language: Language, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] --> src/mnemonic.rs:42:10 [INFO] [stdout] | [INFO] [stdout] 42 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `base_dir` [INFO] [stdout] --> src/storage.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | 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] --> src/storage.rs:60:10 [INFO] [stdout] | [INFO] [stdout] 60 | #[derive(Debug, Clone)] [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `read_test_addresses` [INFO] [stdout] --> src/lib.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn read_test_addresses() -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `keys` [INFO] [stdout] --> src/storage/vault.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | keys: Arc>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `global` [INFO] [stdout] --> src/storage/vault.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 388 | global: Option, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 89 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 32.91s [INFO] [stderr] Executable unittests src/lib.rs (/opt/rustwide/target/debug/deps/emerald_vault-b70f2698ea690c95) [INFO] running `Command { std: "docker" "inspect" "7ef1ac51393be0d7ec341f5d190ecb850f0a38c4afecdcc4151f73ca583dcd2f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7ef1ac51393be0d7ec341f5d190ecb850f0a38c4afecdcc4151f73ca583dcd2f", kill_on_drop: false }` [INFO] [stdout] 7ef1ac51393be0d7ec341f5d190ecb850f0a38c4afecdcc4151f73ca583dcd2f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 92c47e933aeb63ca3aae2e26f5df262474d09a339431cc5bdd1ddf9438e7b3b6 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "92c47e933aeb63ca3aae2e26f5df262474d09a339431cc5bdd1ddf9438e7b3b6", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused import: `serde::Deserialize` [INFO] [stderr] --> src/convert/json/keyfile.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use serde::Deserialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` 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] warning: unused imports: `SeedSource`, `crypto::Encrypted`, `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: unused import: `futures::stream::iter` [INFO] [stderr] --> src/sign/ethereum.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use futures::stream::iter; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `book::AddressRef` [INFO] [stderr] --> src/storage/vault.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | 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: `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: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 26 | error::Error, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated function `std::env::home_dir`: This function's behavior is unexpected and probably not what you want. Consider using a crate from crates.io instead. [INFO] [stderr] --> src/storage.rs:74:31 [INFO] [stderr] | [INFO] [stderr] 74 | let mut config_dir = env::home_dir().expect("Expect path to home dir"); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/error.rs:40:34 [INFO] [stderr] | [INFO] [stderr] 40 | impl From for Error { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/error.rs:46:33 [INFO] [stderr] | [INFO] [stderr] 46 | impl From for Error { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/error.rs:52:23 [INFO] [stderr] | [INFO] [stderr] 52 | impl fmt::Display for Error { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/error.rs:65:23 [INFO] [stderr] | [INFO] [stderr] 65 | impl error::Error for Error { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stderr] --> src/blockchain/error.rs:42:16 [INFO] [stderr] | [INFO] [stderr] 42 | Error::UnexpectedHexEncoding(err) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stderr] --> src/blockchain/error.rs:48:16 [INFO] [stderr] | [INFO] [stderr] 48 | Error::EcdsaCrypto(err) [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stderr] --> src/blockchain/error.rs:55:20 [INFO] [stderr] | [INFO] [stderr] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stderr] --> src/blockchain/error.rs:56:20 [INFO] [stderr] | [INFO] [stderr] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stderr] --> src/blockchain/error.rs:57:20 [INFO] [stderr] | [INFO] [stderr] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stderr] --> src/blockchain/error.rs:60:20 [INFO] [stderr] | [INFO] [stderr] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::UnexpectedHexEncoding` [INFO] [stderr] --> src/blockchain/error.rs:72:20 [INFO] [stderr] | [INFO] [stderr] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::EcdsaCrypto` [INFO] [stderr] --> src/blockchain/error.rs:73:20 [INFO] [stderr] | [INFO] [stderr] 73 | Error::EcdsaCrypto(ref err) => Some(err), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/convert/error.rs:46:18 [INFO] [stderr] | [INFO] [stderr] 46 | impl From for ConversionError { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/convert/error.rs:47:23 [INFO] [stderr] | [INFO] [stderr] 47 | fn from(_: error::Error) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/mnemonic/error.rs:32:23 [INFO] [stderr] | [INFO] [stderr] 32 | impl From for Error { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/mnemonic/error.rs:33:30 [INFO] [stderr] | [INFO] [stderr] 33 | fn from(err: blockchain::Error) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stderr] --> src/sign/bitcoin.rs:16:20 [INFO] [stderr] | [INFO] [stderr] 16 | util::{bip143::SighashComponents, bip32::ChildNumber, psbt::serialize::Serialize}, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `bitcoin::util::bip143::SighashComponents`: please use `SigHashCache` instead [INFO] [stderr] --> src/sign/bitcoin.rs:174:20 [INFO] [stderr] | [INFO] [stderr] 174 | let hash = SighashComponents::new(tx) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/storage/error.rs:58:44 [INFO] [stderr] | [INFO] [stderr] 58 | impl std::convert::From for VaultError { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/storage/error.rs:59:37 [INFO] [stderr] | [INFO] [stderr] 59 | fn from(err: blockchain::error::Error) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stderr] --> src/storage/error.rs:61:39 [INFO] [stderr] | [INFO] [stderr] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/address.rs:19:19 [INFO] [stderr] | [INFO] [stderr] 19 | use super::super::Error; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/address.rs:49:50 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn try_from(data: &[u8]) -> Result { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidLength` [INFO] [stderr] --> src/blockchain/ethereum/address.rs:51:31 [INFO] [stderr] | [INFO] [stderr] 51 | return Err(Error::InvalidLength(data.len())); [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/address.rs:79:16 [INFO] [stderr] | [INFO] [stderr] 79 | type Err = Error; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated tuple variant `blockchain::error::Error::InvalidHexLength` [INFO] [stderr] --> src/blockchain/ethereum/address.rs:83:31 [INFO] [stderr] | [INFO] [stderr] 83 | return Err(Error::InvalidHexLength(s.to_string())); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/signature.rs:19:20 [INFO] [stderr] | [INFO] [stderr] 19 | use super::{super::Error, EthereumAddress}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/signature.rs:109:72 [INFO] [stderr] | [INFO] [stderr] 109 | pub fn sign_message(&self, msg: &str) -> Result { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/signature.rs:114:72 [INFO] [stderr] | [INFO] [stderr] 114 | pub fn sign_bytes(&self, data: &[u8]) -> Result { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/signature.rs:119:87 [INFO] [stderr] | [INFO] [stderr] 119 | pub fn sign_hash(&self, hash: [u8; KECCAK256_BYTES]) -> Result { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/transaction.rs:19:27 [INFO] [stderr] | [INFO] [stderr] 19 | use super::{super::error::Error, EthereumAddress, EthereumPrivateKey, EthereumSignature}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated enum `blockchain::error::Error` [INFO] [stderr] --> src/blockchain/ethereum/transaction.rs:54:26 [INFO] [stderr] | [INFO] [stderr] 54 | ) -> Result, Error> { [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] 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:111:17 [INFO] [stderr] | [INFO] [stderr] 111 | 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:128:17 [INFO] [stderr] | [INFO] [stderr] 128 | let m = parse_from_bytes::(value)?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `blockchain::error::Error::InvalidLength::0` [INFO] [stderr] --> src/blockchain/error.rs:55:34 [INFO] [stderr] | [INFO] [stderr] 55 | Error::InvalidLength(len) => write!(f, "Invalid length: {}", len), [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stderr] --> src/blockchain/error.rs:56:37 [INFO] [stderr] | [INFO] [stderr] 56 | Error::InvalidHexLength(ref str) => write!(f, "Invalid hex data length: {}", str), [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stderr] --> src/blockchain/error.rs:57:42 [INFO] [stderr] | [INFO] [stderr] 57 | Error::UnexpectedHexEncoding(ref err) => { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stderr] --> src/blockchain/error.rs:60:32 [INFO] [stderr] | [INFO] [stderr] 60 | Error::EcdsaCrypto(ref err) => write!(f, "ECDSA crypto error: {}", err), [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `blockchain::error::Error::UnexpectedHexEncoding::0` [INFO] [stderr] --> src/blockchain/error.rs:72:42 [INFO] [stderr] | [INFO] [stderr] 72 | Error::UnexpectedHexEncoding(ref err) => Some(err), [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `blockchain::error::Error::EcdsaCrypto::0` [INFO] [stderr] --> src/blockchain/error.rs:73:32 [INFO] [stderr] | [INFO] [stderr] 73 | Error::EcdsaCrypto(ref err) => Some(err), [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 field `blockchain::error::Error::InvalidHexLength::0` [INFO] [stderr] --> src/storage/error.rs:61:56 [INFO] [stderr] | [INFO] [stderr] 61 | blockchain::error::Error::InvalidHexLength(_) => { [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `bitcoin_hashes::HashEngine` [INFO] [stderr] --> src/sign/bitcoin.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use bitcoin_hashes::HashEngine; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `archive` [INFO] [stderr] --> src/storage/addressbook.rs:260:55 [INFO] [stderr] | [INFO] [stderr] 260 | 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: 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/storage/global_key.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | let mut g = self.get()?; [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `language` [INFO] [stderr] --> src/mnemonic.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | language: Language, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] note: `Mnemonic` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] --> src/mnemonic.rs:42:10 [INFO] [stderr] | [INFO] [stderr] 42 | #[derive(Debug, Clone)] [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `base_dir` [INFO] [stderr] --> src/storage.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | 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] --> src/storage.rs:60:10 [INFO] [stderr] | [INFO] [stderr] 60 | #[derive(Debug, Clone)] [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: field is never read: `keys` [INFO] [stderr] --> src/storage/vault.rs:384:5 [INFO] [stderr] | [INFO] [stderr] 384 | keys: Arc>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `global` [INFO] [stderr] --> src/storage/vault.rs:388:5 [INFO] [stderr] | [INFO] [stderr] 388 | global: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `create` [INFO] [stderr] --> src/structs/crypto.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 142 | pub(crate) fn create(nonce: Vec) -> Result { [INFO] [stderr] | ^^^^^^ [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:180:45 [INFO] [stderr] | [INFO] [stderr] 180 | 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: unused import: `AccountHDPath` [INFO] [stderr] --> src/sign/bitcoin.rs:334:34 [INFO] [stderr] | [INFO] [stderr] 334 | use hdpath::{StandardHDPath, AccountHDPath}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tempdir::TempDir` [INFO] [stderr] --> src/sign/bitcoin.rs:338:9 [INFO] [stderr] | [INFO] [stderr] 338 | use tempdir::TempDir; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::storage::vault::VaultStorage` [INFO] [stderr] --> src/sign/bitcoin.rs:339:9 [INFO] [stderr] | [INFO] [stderr] 339 | use crate::storage::vault::VaultStorage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::structs::seed::LedgerSource` [INFO] [stderr] --> src/sign/bitcoin.rs:340:9 [INFO] [stderr] | [INFO] [stderr] 340 | use crate::structs::seed::LedgerSource; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::structs::wallet::Wallet` [INFO] [stderr] --> src/sign/bitcoin.rs:341:9 [INFO] [stderr] | [INFO] [stderr] 341 | use crate::structs::wallet::Wallet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tests::*` [INFO] [stderr] --> src/storage/vault_ethereum.rs:189:9 [INFO] [stderr] | [INFO] [stderr] 189 | tests::*, [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:172:20 [INFO] [stderr] | [INFO] [stderr] 172 | 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:193:19 [INFO] [stderr] | [INFO] [stderr] 193 | 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:232:20 [INFO] [stderr] | [INFO] [stderr] 232 | 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:269:19 [INFO] [stderr] | [INFO] [stderr] 269 | let act = parse_from_bytes::(b.as_slice()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `global` [INFO] [stderr] --> src/storage/global_key.rs:465:13 [INFO] [stderr] | [INFO] [stderr] 465 | 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: unused variable: `seed_id` [INFO] [stderr] --> src/convert/proto/seed.rs:239:13 [INFO] [stderr] | [INFO] [stderr] 239 | let seed_id = seed.id.clone(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_seed_id` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `read_test_addresses` [INFO] [stderr] --> src/lib.rs:131:12 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn read_test_addresses() -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `emerald-vault` (lib) generated 73 warnings [INFO] [stderr] warning: `emerald-vault` (lib test) generated 89 warnings (68 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.33s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/emerald_vault-b70f2698ea690c95) [INFO] [stdout] running 277 tests [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_empty_address_string ... ok [INFO] [stdout] test blockchain::bitcoin::tests::correct_address_type ... ok [INFO] [stdout] test blockchain::bitcoin::tests::parse_xpub_p2wpkh_p2sh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::to_string_xpub_p2pkh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::encode_xpub_p2wpkh_p2sh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::parse_xpub_p2pkh ... ok [INFO] [stdout] test blockchain::bitcoin::tests::merge_two_keymappings ... ok [INFO] [stdout] test blockchain::bitcoin::tests::to_string_xpub_p2wpkh ... 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::ethereum::address::tests::should_catch_missing_address_prefix ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_parse_real_address_without_prefix ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_parse_real_address ... 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_prefix ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::should_calculate_message_hash ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_display_real_address ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_wrong_address_insufficient_length ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::encode_tx_with_small_gassprice ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::encode_tx ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_catch_wrong_address_encoding ... ok [INFO] [stdout] test convert::json::address::tests::should_decode_zero_address ... ok [INFO] [stdout] test convert::json::address::tests::should_decode_real_address ... ok [INFO] [stdout] test blockchain::ethereum::address::tests::should_display_zero_address ... ok [INFO] [stdout] test convert::json::address::tests::should_encode_real_address ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_empty_address ... ok [INFO] [stdout] test convert::json::address::tests::should_encode_default_address ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_absent_address ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_not_string_address ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::rs_should_be_quantity_1 ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::rs_should_be_quantity_2 ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::should_sign_hash ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::should_sign_transaction_for_mainnet ... ok [INFO] [stdout] test convert::json::address::tests::should_not_decode_wrong_address ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::should_sign_transaction_for_testnet ... ok [INFO] [stdout] test blockchain::ethereum::signature::tests::should_convert_into_address ... ok [INFO] [stdout] test blockchain::ethereum::transaction::tests::should_sign_transaction_eip155 ... ok [INFO] [stdout] test convert::json::keyfile::tests::extracts_encrypted_from_json_pbkdf ... 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::should_not_decode_not_wrong_crypto ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_deserialize_scrypt_crypto ... 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::should_not_decode_unknown_cipher ... ok [INFO] [stdout] test convert::proto::address::tests::encode_decode_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_testnet_xpub ... ok [INFO] [stdout] test convert::proto::book::tests::write_as_protobuf ... ok [INFO] [stdout] test convert::json::keyfile::tests::should_deserialize_kdf_params ... ok [INFO] [stdout] test convert::json::keyfile::tests::import_pbkdf_default ... ok [INFO] [stdout] test convert::proto::book::tests::write_and_read_xpub ... ok [INFO] [stdout] test convert::json::keyfile::tests::import_scrypt_default ... ok [INFO] [stdout] test convert::proto::book::tests::write_and_read ... ok [INFO] [stdout] test convert::proto::book::tests::ignore_big_created_at ... ok [INFO] [stdout] test convert::proto::address::tests::encode_decode_plain_ethereum ... ok [INFO] [stdout] test convert::proto::seed::tests::empty_label_is_none ... 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::ignore_big_created_at ... ok [INFO] [stdout] test convert::proto::seed::tests::write_and_read_timestamp ... ok [INFO] [stdout] test convert::proto::wallet::tests::ignore_big_created_at ... ok [INFO] [stdout] test convert::proto::wallet::tests::reserve_current_seed ... 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_created_at ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_empty ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_label ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_reserved_hd ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_send_only_entry ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet_bitcoin ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet_w_seedref ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_and_read_wallet_wo_label ... ok [INFO] [stdout] test convert::proto::wallet::tests::write_as_protobuf ... ok [INFO] [stdout] test blockchain::addresses::tests::gets_bitcoin_address ... ok [INFO] [stdout] test blockchain::bitcoin::tests::find_path_testnet ... ok [INFO] [stdout] test blockchain::addresses::tests::gets_ethereum_address ... ok [INFO] [stdout] test crypto::encrypted::tests::deny_invalid_mac ... ok [INFO] [stdout] test crypto::encrypted::tests::doesnt_allow_empty_passwrod ... ok [INFO] [stdout] test crypto::encrypted::tests::decrypt_std_1 ... ok [INFO] [stdout] test crypto::encrypted::tests::encrypt_descrypt_aes128 ... ok [INFO] [stdout] test crypto::encrypted::tests::fail_to_decrypt_with_wrong_key ... ok [INFO] [stdout] test crypto::encrypted::tests::generates_diff_nonce ... ok [INFO] [stderr] error: test failed, to rerun pass '--lib' [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `/opt/rustwide/target/debug/deps/emerald_vault-b70f2698ea690c95` (signal: 9, SIGKILL: kill) [INFO] running `Command { std: "docker" "inspect" "92c47e933aeb63ca3aae2e26f5df262474d09a339431cc5bdd1ddf9438e7b3b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "92c47e933aeb63ca3aae2e26f5df262474d09a339431cc5bdd1ddf9438e7b3b6", kill_on_drop: false }` [INFO] [stdout] 92c47e933aeb63ca3aae2e26f5df262474d09a339431cc5bdd1ddf9438e7b3b6