[INFO] fetching crate textwallet 0.1.0-alpha.0... [INFO] testing textwallet-0.1.0-alpha.0 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate textwallet 0.1.0-alpha.0 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate textwallet 0.1.0-alpha.0 [INFO] finished tweaking crates.io crate textwallet 0.1.0-alpha.0 [INFO] tweaked toml for crates.io crate textwallet 0.1.0-alpha.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate textwallet 0.1.0-alpha.0 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 91 packages to latest compatible versions [INFO] [stderr] Adding base58 v0.1.0 (available: v0.2.0) [INFO] [stderr] Adding cc v1.0.26 (available: v1.2.35) [INFO] [stderr] Adding clap v2.34.0 (available: v4.5.46) [INFO] [stderr] Adding hdwallet v0.2.2 (available: v0.2.5) [INFO] [stderr] Adding hdwallet-bitcoin v0.2.1 (available: v0.2.5) [INFO] [stderr] Adding hex v0.3.2 (available: v0.4.3) [INFO] [stderr] Adding home v0.3.4 (available: v0.5.11) [INFO] [stderr] Adding rand v0.6.5 (available: v0.9.2) [INFO] [stderr] Adding ring v0.14.6 (available: v0.17.14) [INFO] [stderr] Adding ripemd160 v0.8.0 (available: v0.10.0) [INFO] [stderr] Adding termion v1.5.6 (available: v4.0.5) [INFO] [stderr] Adding tui v0.5.1 (available: v0.19.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded hdwallet-bitcoin v0.2.1 [INFO] [stderr] Downloaded cc v1.0.26 [INFO] [stderr] Downloaded hdwallet v0.2.2 [INFO] [stderr] Downloaded home v0.3.4 [INFO] [stderr] Downloaded secp256k1 v0.12.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 30d45f0ee85f04676a573a93a5cfc6032a115c43ccc30731d5c3fe5147a23d79 [INFO] running `Command { std: "docker" "start" "-a" "30d45f0ee85f04676a573a93a5cfc6032a115c43ccc30731d5c3fe5147a23d79", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "30d45f0ee85f04676a573a93a5cfc6032a115c43ccc30731d5c3fe5147a23d79", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "30d45f0ee85f04676a573a93a5cfc6032a115c43ccc30731d5c3fe5147a23d79", kill_on_drop: false }` [INFO] [stdout] 30d45f0ee85f04676a573a93a5cfc6032a115c43ccc30731d5c3fe5147a23d79 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] aa67dcdf69048348a3834b47213ef044496b8fe1ef6cbadd2fb998661ee68dee [INFO] running `Command { std: "docker" "start" "-a" "aa67dcdf69048348a3834b47213ef044496b8fe1ef6cbadd2fb998661ee68dee", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.8 [INFO] [stderr] Compiling rand_core v0.4.2 [INFO] [stderr] Compiling cc v1.0.26 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling byte-tools v0.3.1 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling gimli v0.31.1 [INFO] [stderr] Compiling untrusted v0.6.2 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling generic-array v0.12.4 [INFO] [stderr] Compiling rustc-demangle v0.1.26 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling opaque-debug v0.2.3 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling block-padding v0.1.5 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling numtoa v0.1.0 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling digest v0.8.1 [INFO] [stderr] Compiling block-buffer v0.7.3 [INFO] [stderr] Compiling termion v1.5.6 [INFO] [stderr] Compiling ripemd160 v0.8.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling hex v0.3.2 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling secp256k1 v0.12.2 [INFO] [stderr] Compiling ring v0.14.6 [INFO] [stderr] Compiling base58 v0.1.0 [INFO] [stderr] Compiling home v0.3.4 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling itertools v0.8.2 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling tui v0.5.1 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling addr2line v0.24.2 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling hdwallet v0.2.2 [INFO] [stderr] Compiling hdwallet-bitcoin v0.2.1 [INFO] [stderr] Compiling backtrace v0.3.75 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling serde_json v1.0.143 [INFO] [stderr] Compiling textwallet v0.1.0-alpha.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::util::hex::ToHex` [INFO] [stdout] --> src/cli.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::util::hex::ToHex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `App`, `Arg`, and `SubCommand` [INFO] [stdout] --> src/cli.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | use clap::{App, Arg, ArgMatches, SubCommand}; [INFO] [stdout] | ^^^ ^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::error` [INFO] [stdout] --> src/cli.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use log::error; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/cli.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File` and `self` [INFO] [stdout] --> src/cli.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Read` and `Write` [INFO] [stdout] --> src/cli.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use std::io::{Read, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Derivation` and `KeySeed` [INFO] [stdout] --> src/key_manage.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | Derivation, ExtendedPrivKey, KeySeed, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Network` and `PrivKey as BitcoinPrivKey` [INFO] [stdout] --> src/key_manage.rs:11:24 [INFO] [stdout] | [INFO] [stdout] 11 | use hdwallet_bitcoin::{Network, PrivKey as BitcoinPrivKey}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `KeySeed` [INFO] [stdout] --> src/ui/state.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TxsState` [INFO] [stdout] --> src/ui.rs:3:38 [INFO] [stdout] | [INFO] [stdout] 3 | use state::{AccountState, TabsState, TxsState}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `KeySeed` [INFO] [stdout] --> src/ui.rs:5:33 [INFO] [stdout] | [INFO] [stdout] 5 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tabs` [INFO] [stdout] --> src/ui.rs:15:63 [INFO] [stdout] | [INFO] [stdout] 15 | use tui::widgets::{Block, Borders, Paragraph, SelectableList, Tabs, Text, Widget}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `error` [INFO] [stdout] --> src/ui.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | use log::{debug, error}; [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::key::KeyFile` [INFO] [stdout] --> src/main.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::key::KeyFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::key_manage::KeyManage` [INFO] [stdout] --> src/main.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::key_manage::KeyManage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::key_store::KeyStore` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::key_store::KeyStore; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::util::hex::ToHex` [INFO] [stdout] --> src/main.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::util::hex::ToHex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ExtendedPrivKey` and `KeySeed` [INFO] [stdout] --> src/main.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hdwallet_bitcoin::Network as BitcoinNetwork` [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use hdwallet_bitcoin::Network as BitcoinNetwork; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/main.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File` and `self` [INFO] [stdout] --> src/main.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Read` and `Write` [INFO] [stdout] --> src/main.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | use std::io::{Read, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/main.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sub_matches` [INFO] [stdout] --> src/cli.rs:64:23 [INFO] [stdout] | [INFO] [stdout] 64 | ("list", Some(sub_matches)) => match key_store.read_key_names() { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sub_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/util/serde.rs:4:32 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn ser_hex(data: &[u8], mut serializer: S) -> Result [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `input_handle` and `tick_handle` are never read [INFO] [stdout] --> src/ui/event.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct EventWatcher { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 17 | rx: mpsc::Receiver>, [INFO] [stdout] 18 | input_handle: thread::JoinHandle<()>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 19 | tick_handle: thread::JoinHandle<()>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DiscoveryKey` is never constructed [INFO] [stdout] --> src/ui/state.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct DiscoveryKey { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `master_key` is never read [INFO] [stdout] --> src/ui/state.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct AccountState<'a> { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 32 | name: String, [INFO] [stdout] 33 | master_key: &'a ExtendedPrivKey, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `master_key` and `address` are never used [INFO] [stdout] --> src/ui/state.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl<'a> AccountState<'a> { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn master_key(&self) -> &ExtendedPrivKey { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn address(&self) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TxsState` is never constructed [INFO] [stdout] --> src/ui/state.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | pub struct TxsState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cli.rs:92:17 [INFO] [stdout] | [INFO] [stdout] 92 | key_store.write_key(key, key_file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = key_store.write_key(key, key_file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_WalletError` [INFO] [stdout] 5 | pub enum WalletError { [INFO] [stdout] | ----------- `WalletError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_WalletError` [INFO] [stdout] 5 | pub enum WalletError { [INFO] [stdout] | ----------- `WalletError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 23.11s [INFO] running `Command { std: "docker" "inspect" "aa67dcdf69048348a3834b47213ef044496b8fe1ef6cbadd2fb998661ee68dee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aa67dcdf69048348a3834b47213ef044496b8fe1ef6cbadd2fb998661ee68dee", kill_on_drop: false }` [INFO] [stdout] aa67dcdf69048348a3834b47213ef044496b8fe1ef6cbadd2fb998661ee68dee [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fb2d648d6c6be65e2411c5dda2b4f620eb6f2a20fbe994f978f01a37e2c20ed7 [INFO] running `Command { std: "docker" "start" "-a" "fb2d648d6c6be65e2411c5dda2b4f620eb6f2a20fbe994f978f01a37e2c20ed7", kill_on_drop: false }` [INFO] [stderr] Compiling textwallet v0.1.0-alpha.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::util::hex::ToHex` [INFO] [stdout] --> src/cli.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::util::hex::ToHex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `App`, `Arg`, and `SubCommand` [INFO] [stdout] --> src/cli.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | use clap::{App, Arg, ArgMatches, SubCommand}; [INFO] [stdout] | ^^^ ^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::error` [INFO] [stdout] --> src/cli.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use log::error; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/cli.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File` and `self` [INFO] [stdout] --> src/cli.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Read` and `Write` [INFO] [stdout] --> src/cli.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | use std::io::{Read, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Derivation` and `KeySeed` [INFO] [stdout] --> src/key_manage.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | Derivation, ExtendedPrivKey, KeySeed, [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Network` and `PrivKey as BitcoinPrivKey` [INFO] [stdout] --> src/key_manage.rs:11:24 [INFO] [stdout] | [INFO] [stdout] 11 | use hdwallet_bitcoin::{Network, PrivKey as BitcoinPrivKey}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `KeySeed` [INFO] [stdout] --> src/ui/state.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TxsState` [INFO] [stdout] --> src/ui.rs:3:38 [INFO] [stdout] | [INFO] [stdout] 3 | use state::{AccountState, TabsState, TxsState}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `KeySeed` [INFO] [stdout] --> src/ui.rs:5:33 [INFO] [stdout] | [INFO] [stdout] 5 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tabs` [INFO] [stdout] --> src/ui.rs:15:63 [INFO] [stdout] | [INFO] [stdout] 15 | use tui::widgets::{Block, Borders, Paragraph, SelectableList, Tabs, Text, Widget}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `debug` and `error` [INFO] [stdout] --> src/ui.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | use log::{debug, error}; [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::key::KeyFile` [INFO] [stdout] --> src/main.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::key::KeyFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::key_manage::KeyManage` [INFO] [stdout] --> src/main.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::key_manage::KeyManage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::key_store::KeyStore` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::key_store::KeyStore; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::util::hex::ToHex` [INFO] [stdout] --> src/main.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::util::hex::ToHex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ExtendedPrivKey` and `KeySeed` [INFO] [stdout] --> src/main.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hdwallet_bitcoin::Network as BitcoinNetwork` [INFO] [stdout] --> src/main.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use hdwallet_bitcoin::Network as BitcoinNetwork; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::Serialize` [INFO] [stdout] --> src/main.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use serde::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File` and `self` [INFO] [stdout] --> src/main.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | use std::fs::{self, File}; [INFO] [stdout] | ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Read` and `Write` [INFO] [stdout] --> src/main.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | use std::io::{Read, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/main.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sub_matches` [INFO] [stdout] --> src/cli.rs:64:23 [INFO] [stdout] | [INFO] [stdout] 64 | ("list", Some(sub_matches)) => match key_store.read_key_names() { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sub_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/util/serde.rs:4:32 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn ser_hex(data: &[u8], mut serializer: S) -> Result [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `input_handle` and `tick_handle` are never read [INFO] [stdout] --> src/ui/event.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct EventWatcher { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 17 | rx: mpsc::Receiver>, [INFO] [stdout] 18 | input_handle: thread::JoinHandle<()>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 19 | tick_handle: thread::JoinHandle<()>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DiscoveryKey` is never constructed [INFO] [stdout] --> src/ui/state.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | pub struct DiscoveryKey { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `master_key` is never read [INFO] [stdout] --> src/ui/state.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub struct AccountState<'a> { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 32 | name: String, [INFO] [stdout] 33 | master_key: &'a ExtendedPrivKey, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `master_key` and `address` are never used [INFO] [stdout] --> src/ui/state.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl<'a> AccountState<'a> { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn master_key(&self) -> &ExtendedPrivKey { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn address(&self) -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TxsState` is never constructed [INFO] [stdout] --> src/ui/state.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 74 | pub struct TxsState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cli.rs:92:17 [INFO] [stdout] | [INFO] [stdout] 92 | key_store.write_key(key, key_file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = key_store.write_key(key, key_file); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_WalletError` [INFO] [stdout] 5 | pub enum WalletError { [INFO] [stdout] | ----------- `WalletError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_WalletError` [INFO] [stdout] 5 | pub enum WalletError { [INFO] [stdout] | ----------- `WalletError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.51s [INFO] running `Command { std: "docker" "inspect" "fb2d648d6c6be65e2411c5dda2b4f620eb6f2a20fbe994f978f01a37e2c20ed7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fb2d648d6c6be65e2411c5dda2b4f620eb6f2a20fbe994f978f01a37e2c20ed7", kill_on_drop: false }` [INFO] [stdout] fb2d648d6c6be65e2411c5dda2b4f620eb6f2a20fbe994f978f01a37e2c20ed7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 1437f3e032ad35164efb63bd3fb4d2d338efb61faba5332bba9f6b186e4b2ed1 [INFO] running `Command { std: "docker" "start" "-a" "1437f3e032ad35164efb63bd3fb4d2d338efb61faba5332bba9f6b186e4b2ed1", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `crate::util::hex::ToHex` [INFO] [stderr] --> src/cli.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::util::hex::ToHex; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `App`, `Arg`, and `SubCommand` [INFO] [stderr] --> src/cli.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 7 | use clap::{App, Arg, ArgMatches, SubCommand}; [INFO] [stderr] | ^^^ ^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `log::error` [INFO] [stderr] --> src/cli.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use log::error; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Serialize` [INFO] [stderr] --> src/cli.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use serde::Serialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File` and `self` [INFO] [stderr] --> src/cli.rs:12:15 [INFO] [stderr] | [INFO] [stderr] 12 | use std::fs::{self, File}; [INFO] [stderr] | ^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Read` and `Write` [INFO] [stderr] --> src/cli.rs:13:15 [INFO] [stderr] | [INFO] [stderr] 13 | use std::io::{Read, Write}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Derivation` and `KeySeed` [INFO] [stderr] --> src/key_manage.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | Derivation, ExtendedPrivKey, KeySeed, [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Network` and `PrivKey as BitcoinPrivKey` [INFO] [stderr] --> src/key_manage.rs:11:24 [INFO] [stderr] | [INFO] [stderr] 11 | use hdwallet_bitcoin::{Network, PrivKey as BitcoinPrivKey}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `KeySeed` [INFO] [stderr] --> src/ui/state.rs:1:33 [INFO] [stderr] | [INFO] [stderr] 1 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `TxsState` [INFO] [stderr] --> src/ui.rs:3:38 [INFO] [stderr] | [INFO] [stderr] 3 | use state::{AccountState, TabsState, TxsState}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `KeySeed` [INFO] [stderr] --> src/ui.rs:5:33 [INFO] [stderr] | [INFO] [stderr] 5 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Tabs` [INFO] [stderr] --> src/ui.rs:15:63 [INFO] [stderr] | [INFO] [stderr] 15 | use tui::widgets::{Block, Borders, Paragraph, SelectableList, Tabs, Text, Widget}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `debug` and `error` [INFO] [stderr] --> src/ui.rs:19:11 [INFO] [stderr] | [INFO] [stderr] 19 | use log::{debug, error}; [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::key::KeyFile` [INFO] [stderr] --> src/main.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use crate::key::KeyFile; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::key_manage::KeyManage` [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use crate::key_manage::KeyManage; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::key_store::KeyStore` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::key_store::KeyStore; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::util::hex::ToHex` [INFO] [stderr] --> src/main.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | use crate::util::hex::ToHex; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ExtendedPrivKey` and `KeySeed` [INFO] [stderr] --> src/main.rs:18:16 [INFO] [stderr] | [INFO] [stderr] 18 | use hdwallet::{ExtendedPrivKey, KeySeed}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `hdwallet_bitcoin::Network as BitcoinNetwork` [INFO] [stderr] --> src/main.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | use hdwallet_bitcoin::Network as BitcoinNetwork; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::Serialize` [INFO] [stderr] --> src/main.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | use serde::Serialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File` and `self` [INFO] [stderr] --> src/main.rs:21:15 [INFO] [stderr] | [INFO] [stderr] 21 | use std::fs::{self, File}; [INFO] [stderr] | ^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Read` and `Write` [INFO] [stderr] --> src/main.rs:22:15 [INFO] [stderr] | [INFO] [stderr] 22 | use std::io::{Read, Write}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::path::Path` [INFO] [stderr] --> src/main.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | use std::path::Path; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sub_matches` [INFO] [stderr] --> src/cli.rs:64:23 [INFO] [stderr] | [INFO] [stderr] 64 | ("list", Some(sub_matches)) => match key_store.read_key_names() { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sub_matches` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/util/serde.rs:4:32 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn ser_hex(data: &[u8], mut serializer: S) -> Result [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: fields `input_handle` and `tick_handle` are never read [INFO] [stderr] --> src/ui/event.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct EventWatcher { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 17 | rx: mpsc::Receiver>, [INFO] [stderr] 18 | input_handle: thread::JoinHandle<()>, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 19 | tick_handle: thread::JoinHandle<()>, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: struct `DiscoveryKey` is never constructed [INFO] [stderr] --> src/ui/state.rs:27:12 [INFO] [stderr] | [INFO] [stderr] 27 | pub struct DiscoveryKey { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `master_key` is never read [INFO] [stderr] --> src/ui/state.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 31 | pub struct AccountState<'a> { [INFO] [stderr] | ------------ field in this struct [INFO] [stderr] 32 | name: String, [INFO] [stderr] 33 | master_key: &'a ExtendedPrivKey, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `master_key` and `address` are never used [INFO] [stderr] --> src/ui/state.rs:65:12 [INFO] [stderr] | [INFO] [stderr] 38 | impl<'a> AccountState<'a> { [INFO] [stderr] | ------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 65 | pub fn master_key(&self) -> &ExtendedPrivKey { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 69 | pub fn address(&self) -> String { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TxsState` is never constructed [INFO] [stderr] --> src/ui/state.rs:74:12 [INFO] [stderr] | [INFO] [stderr] 74 | pub struct TxsState { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/cli.rs:92:17 [INFO] [stderr] | [INFO] [stderr] 92 | key_store.write_key(key, key_file); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 92 | let _ = key_store.write_key(key, key_file); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/error.rs:4:24 [INFO] [stderr] | [INFO] [stderr] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_WalletError` [INFO] [stderr] 5 | pub enum WalletError { [INFO] [stderr] | ----------- `WalletError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/error.rs:4:24 [INFO] [stderr] | [INFO] [stderr] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_WalletError` [INFO] [stderr] 5 | pub enum WalletError { [INFO] [stderr] | ----------- `WalletError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `textwallet` (bin "textwallet" test) generated 33 warnings (run `cargo fix --bin "textwallet" --tests` to apply 24 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/textwallet-8e8ac6e936665d79) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test util::hex::tests::hex_and_dehex ... ok [INFO] [stdout] test key_manage::tests::test_enc_dec ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "1437f3e032ad35164efb63bd3fb4d2d338efb61faba5332bba9f6b186e4b2ed1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1437f3e032ad35164efb63bd3fb4d2d338efb61faba5332bba9f6b186e4b2ed1", kill_on_drop: false }` [INFO] [stdout] 1437f3e032ad35164efb63bd3fb4d2d338efb61faba5332bba9f6b186e4b2ed1