[INFO] fetching crate purplecoincli 0.1.6...
[INFO] testing purplecoincli-0.1.6 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate purplecoincli 0.1.6 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate purplecoincli 0.1.6
[INFO] finished tweaking crates.io crate purplecoincli 0.1.6
[INFO] tweaked toml for crates.io crate purplecoincli 0.1.6 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate purplecoincli 0.1.6 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate purplecoincli 0.1.6 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zeroize_derive v1.3.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.46
[INFO] [stderr]   Downloaded blake2-rfc v0.2.18
[INFO] [stderr]   Downloaded bincode_derive v2.0.0-rc.2
[INFO] [stderr]   Downloaded clap_lex v0.3.0
[INFO] [stderr]   Downloaded bech32 v0.9.1
[INFO] [stderr]   Downloaded keccak v0.1.2
[INFO] [stderr]   Downloaded rpassword v6.0.1
[INFO] [stderr]   Downloaded scoped_threadpool v0.1.9
[INFO] [stderr]   Downloaded arrayref v0.3.6
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.16
[INFO] [stderr]   Downloaded os_str_bytes v6.3.0
[INFO] [stderr]   Downloaded virtue v0.0.8
[INFO] [stderr]   Downloaded arrayvec v0.4.12
[INFO] [stderr]   Downloaded schnorrkel-purplecoin v0.10.2
[INFO] [stderr]   Downloaded getrandom v0.2.7
[INFO] [stderr]   Downloaded once_cell v1.15.0
[INFO] [stderr]   Downloaded clap_derive v4.0.13
[INFO] [stderr]   Downloaded serde_derive v1.0.145
[INFO] [stderr]   Downloaded bincode v2.0.0-rc.2
[INFO] [stderr]   Downloaded serde v1.0.145
[INFO] [stderr]   Downloaded serde_json v1.0.86
[INFO] [stderr]   Downloaded blake3 v1.3.1
[INFO] [stderr]   Downloaded syn v1.0.102
[INFO] [stderr]   Downloaded clap v4.0.15
[INFO] [stderr]   Downloaded argon2rs v0.2.5
[INFO] [stderr]   Downloaded libc v0.2.135
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272
[INFO] running `Command { std: "docker" "start" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.46
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling unicode-ident v1.0.5
[INFO] [stderr]    Compiling syn v1.0.102
[INFO] [stderr]    Compiling typenum v1.15.0
[INFO] [stderr]    Compiling libc v0.2.135
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling serde_derive v1.0.145
[INFO] [stderr]    Compiling serde v1.0.145
[INFO] [stderr]    Compiling cpufeatures v0.2.5
[INFO] [stderr]    Compiling subtle v2.4.1
[INFO] [stderr]    Compiling opaque-debug v0.3.0
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]    Compiling generic-array v0.14.6
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling serde_json v1.0.86
[INFO] [stderr]    Compiling constant_time_eq v0.1.5
[INFO] [stderr]    Compiling nodrop v0.1.14
[INFO] [stderr]    Compiling ryu v1.0.11
[INFO] [stderr]    Compiling os_str_bytes v6.3.0
[INFO] [stderr]    Compiling itoa v1.0.4
[INFO] [stderr]    Compiling subtle-ng v2.5.0
[INFO] [stderr]    Compiling heck v0.4.0
[INFO] [stderr]    Compiling virtue v0.0.8
[INFO] [stderr]    Compiling ppv-lite86 v0.2.16
[INFO] [stderr]    Compiling keccak v0.1.2
[INFO] [stderr]    Compiling getrandom v0.2.7
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling arrayvec v0.7.2
[INFO] [stderr]    Compiling arrayref v0.3.6
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling clap_lex v0.3.0
[INFO] [stderr]    Compiling blake2-rfc v0.2.18
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling bincode_derive v2.0.0-rc.2
[INFO] [stderr]    Compiling termcolor v1.1.3
[INFO] [stderr]    Compiling scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling blake3 v1.3.1
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling once_cell v1.15.0
[INFO] [stderr]    Compiling argon2rs v0.2.5
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling bincode v2.0.0-rc.2
[INFO] [stderr]    Compiling bech32 v0.9.1
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling universal-hash v0.4.1
[INFO] [stderr]    Compiling block-buffer v0.10.3
[INFO] [stderr]    Compiling cipher v0.3.0
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling sha2 v0.9.9
[INFO] [stderr]    Compiling poly1305 v0.7.2
[INFO] [stderr]    Compiling aead v0.4.3
[INFO] [stderr]    Compiling digest v0.10.5
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling clap_derive v4.0.13
[INFO] [stderr]    Compiling zeroize_derive v1.3.2
[INFO] [stderr]    Compiling zeroize v1.5.7
[INFO] [stderr]    Compiling merlin v3.0.0
[INFO] [stderr]    Compiling curve25519-dalek-ng v4.1.1
[INFO] [stderr]    Compiling chacha20 v0.8.2
[INFO] [stderr]    Compiling clap v4.0.15
[INFO] [stderr]    Compiling chacha20poly1305 v0.9.1
[INFO] [stderr]    Compiling serde_bytes v0.11.7
[INFO] [stderr]    Compiling schnorrkel-purplecoin v0.10.2
[INFO] [stderr]    Compiling rpassword v6.0.1
[INFO] [stderr]    Compiling purplecoincli v0.1.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/wallet.rs:299:22
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/wallet.rs:299:34
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/wallet.rs:304:27
[INFO] [stdout]     |
[INFO] [stdout] 304 |     pub fn decrypt(&self, key: &[u8]) -> Result<T, &'static str> {
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/wallet.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |         let config = bincode::config::standard()
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[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/primitives.rs:225:59
[INFO] [stdout]     |
[INFO] [stdout] 225 | #[derive(PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize)]
[INFO] [stdout]     |                                                           ^------
[INFO] [stdout]     |                                                           |
[INFO] [stdout]     |                                                           `Zeroize` is not local
[INFO] [stdout]     |                                                           move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash160`
[INFO] [stdout] 226 | pub struct Hash160(pub [u8; 20]);
[INFO] [stdout]     |            ------- `Hash160` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/primitives.rs:282:54
[INFO] [stdout]     |
[INFO] [stdout] 282 |     PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize, PartialOrd, Ord, Default, Copy,
[INFO] [stdout]     |                                                      ^------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Zeroize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash256`
[INFO] [stdout] 283 | )]
[INFO] [stdout] 284 | pub struct Hash256(pub [u8; 32]);
[INFO] [stdout]     |            ------- `Hash256` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 | #[derive(Encode, Decode, Zeroize, Clone, PartialEq)]
[INFO] [stdout]    |                          ^------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Zeroize` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPub`
[INFO] [stdout] 81 | pub struct XPub {
[INFO] [stdout]    |            ---- `XPub` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Zeroize` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPriv`
[INFO] [stdout] 167 | #[zeroize(drop)]
[INFO] [stdout] 168 | pub struct XPriv {
[INFO] [stdout]     |            ----- `XPriv` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Drop` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_XPriv`
[INFO] [stdout] 167 | #[zeroize(drop)]
[INFO] [stdout] 168 | pub struct XPriv {
[INFO] [stdout]     |            ----- `XPriv` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:177:26
[INFO] [stdout]     |
[INFO] [stdout] 177 | #[derive(Encode, Decode, Zeroize, Debug, Clone)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Zeroize` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XKeypair`
[INFO] [stdout] 178 | pub struct XKeypair {
[INFO] [stdout]     |            -------- `XKeypair` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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 43.45s
[INFO] running `Command { std: "docker" "inspect" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/wallet.rs:299:22
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/wallet.rs:299:34
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/wallet.rs:304:27
[INFO] [stdout]     |
[INFO] [stdout] 304 |     pub fn decrypt(&self, key: &[u8]) -> Result<T, &'static str> {
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/wallet.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |         let config = bincode::config::standard()
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[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/primitives.rs:225:59
[INFO] [stdout]     |
[INFO] [stdout] 225 | #[derive(PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize)]
[INFO] [stdout]     |                                                           ^------
[INFO] [stdout]     |                                                           |
[INFO] [stdout]     |                                                           `Zeroize` is not local
[INFO] [stdout]     |                                                           move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash160`
[INFO] [stdout] 226 | pub struct Hash160(pub [u8; 20]);
[INFO] [stdout]     |            ------- `Hash160` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/primitives.rs:282:54
[INFO] [stdout]     |
[INFO] [stdout] 282 |     PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize, PartialOrd, Ord, Default, Copy,
[INFO] [stdout]     |                                                      ^------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Zeroize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash256`
[INFO] [stdout] 283 | )]
[INFO] [stdout] 284 | pub struct Hash256(pub [u8; 32]);
[INFO] [stdout]     |            ------- `Hash256` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 | #[derive(Encode, Decode, Zeroize, Clone, PartialEq)]
[INFO] [stdout]    |                          ^------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Zeroize` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPub`
[INFO] [stdout] 81 | pub struct XPub {
[INFO] [stdout]    |            ---- `XPub` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Zeroize` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPriv`
[INFO] [stdout] 167 | #[zeroize(drop)]
[INFO] [stdout] 168 | pub struct XPriv {
[INFO] [stdout]     |            ----- `XPriv` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Drop` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_XPriv`
[INFO] [stdout] 167 | #[zeroize(drop)]
[INFO] [stdout] 168 | pub struct XPriv {
[INFO] [stdout]     |            ----- `XPriv` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:177:26
[INFO] [stdout]     |
[INFO] [stdout] 177 | #[derive(Encode, Decode, Zeroize, Debug, Clone)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Zeroize` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XKeypair`
[INFO] [stdout] 178 | pub struct XKeypair {
[INFO] [stdout]     |            -------- `XKeypair` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling purplecoincli v0.1.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/wallet.rs:299:22
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stdout]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> src/wallet.rs:299:34
[INFO] [stdout]     |
[INFO] [stdout] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/wallet.rs:304:27
[INFO] [stdout]     |
[INFO] [stdout] 304 |     pub fn decrypt(&self, key: &[u8]) -> Result<T, &'static str> {
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `config`
[INFO] [stdout]    --> src/wallet.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |         let config = bincode::config::standard()
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[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/primitives.rs:225:59
[INFO] [stdout]     |
[INFO] [stdout] 225 | #[derive(PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize)]
[INFO] [stdout]     |                                                           ^------
[INFO] [stdout]     |                                                           |
[INFO] [stdout]     |                                                           `Zeroize` is not local
[INFO] [stdout]     |                                                           move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash160`
[INFO] [stdout] 226 | pub struct Hash160(pub [u8; 20]);
[INFO] [stdout]     |            ------- `Hash160` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/primitives.rs:282:54
[INFO] [stdout]     |
[INFO] [stdout] 282 |     PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize, PartialOrd, Ord, Default, Copy,
[INFO] [stdout]     |                                                      ^------
[INFO] [stdout]     |                                                      |
[INFO] [stdout]     |                                                      `Zeroize` is not local
[INFO] [stdout]     |                                                      move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash256`
[INFO] [stdout] 283 | )]
[INFO] [stdout] 284 | pub struct Hash256(pub [u8; 32]);
[INFO] [stdout]     |            ------- `Hash256` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 | #[derive(Encode, Decode, Zeroize, Clone, PartialEq)]
[INFO] [stdout]    |                          ^------
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          `Zeroize` is not local
[INFO] [stdout]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPub`
[INFO] [stdout] 81 | pub struct XPub {
[INFO] [stdout]    |            ---- `XPub` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Zeroize` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPriv`
[INFO] [stdout] 167 | #[zeroize(drop)]
[INFO] [stdout] 168 | pub struct XPriv {
[INFO] [stdout]     |            ----- `XPriv` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stdout]     |
[INFO] [stdout] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Drop` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_XPriv`
[INFO] [stdout] 167 | #[zeroize(drop)]
[INFO] [stdout] 168 | pub struct XPriv {
[INFO] [stdout]     |            ----- `XPriv` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:177:26
[INFO] [stdout]     |
[INFO] [stdout] 177 | #[derive(Encode, Decode, Zeroize, Debug, Clone)]
[INFO] [stdout]     |                          ^------
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          `Zeroize` is not local
[INFO] [stdout]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XKeypair`
[INFO] [stdout] 178 | pub struct XKeypair {
[INFO] [stdout]     |            -------- `XKeypair` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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.70s
[INFO] running `Command { std: "docker" "inspect" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/wallet.rs:299:22
[INFO] [stderr]     |
[INFO] [stderr] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stderr]     |                      ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `data`
[INFO] [stderr]    --> src/wallet.rs:299:34
[INFO] [stderr]     |
[INFO] [stderr] 299 |     pub fn aes256gcm(key: &[u8], data: T) -> Result<Self, &'static str> {
[INFO] [stderr]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/wallet.rs:304:27
[INFO] [stderr]     |
[INFO] [stderr] 304 |     pub fn decrypt(&self, key: &[u8]) -> Result<T, &'static str> {
[INFO] [stderr]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `config`
[INFO] [stderr]    --> src/wallet.rs:305:13
[INFO] [stderr]     |
[INFO] [stderr] 305 |         let config = bincode::config::standard()
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_config`
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> src/primitives.rs:225:59
[INFO] [stderr]     |
[INFO] [stderr] 225 | #[derive(PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize)]
[INFO] [stderr]     |                                                           ^------
[INFO] [stderr]     |                                                           |
[INFO] [stderr]     |                                                           `Zeroize` is not local
[INFO] [stderr]     |                                                           move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash160`
[INFO] [stderr] 226 | pub struct Hash160(pub [u8; 20]);
[INFO] [stderr]     |            ------- `Hash160` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/primitives.rs:282:54
[INFO] [stderr]     |
[INFO] [stderr] 282 |     PartialEq, Eq, Encode, Decode, Clone, HashTrait, Zeroize, PartialOrd, Ord, Default, Copy,
[INFO] [stderr]     |                                                      ^------
[INFO] [stderr]     |                                                      |
[INFO] [stderr]     |                                                      `Zeroize` is not local
[INFO] [stderr]     |                                                      move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_Hash256`
[INFO] [stderr] 283 | )]
[INFO] [stderr] 284 | pub struct Hash256(pub [u8; 32]);
[INFO] [stderr]     |            ------- `Hash256` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:80:26
[INFO] [stderr]    |
[INFO] [stderr] 80 | #[derive(Encode, Decode, Zeroize, Clone, PartialEq)]
[INFO] [stderr]    |                          ^------
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          `Zeroize` is not local
[INFO] [stderr]    |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPub`
[INFO] [stderr] 81 | pub struct XPub {
[INFO] [stderr]    |            ---- `XPub` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stderr]     |
[INFO] [stderr] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stderr]     |                          ^------
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          `Zeroize` is not local
[INFO] [stderr]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XPriv`
[INFO] [stderr] 167 | #[zeroize(drop)]
[INFO] [stderr] 168 | pub struct XPriv {
[INFO] [stderr]     |            ----- `XPriv` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:166:26
[INFO] [stderr]     |
[INFO] [stderr] 166 | #[derive(Encode, Decode, Zeroize, Clone, Debug, PartialEq)]
[INFO] [stderr]     |                          ^------
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          `Drop` is not local
[INFO] [stderr]     |                          move the `impl` block outside of this constant `_DERIVE_Drop_FOR_XPriv`
[INFO] [stderr] 167 | #[zeroize(drop)]
[INFO] [stderr] 168 | pub struct XPriv {
[INFO] [stderr]     |            ----- `XPriv` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (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/wallet.rs:177:26
[INFO] [stderr]     |
[INFO] [stderr] 177 | #[derive(Encode, Decode, Zeroize, Debug, Clone)]
[INFO] [stderr]     |                          ^------
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          `Zeroize` is not local
[INFO] [stderr]     |                          move the `impl` block outside of this constant `_DERIVE_zeroize_Zeroize_FOR_XKeypair`
[INFO] [stderr] 178 | pub struct XKeypair {
[INFO] [stderr]     |            -------- `XKeypair` is not local
[INFO] [stderr]     |
[INFO] [stderr]     = note: the derive macro `Zeroize` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the derive macro `Zeroize` may come from an old version of the `zeroize_derive` crate, try updating your dependency with `cargo update -p zeroize_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 `Zeroize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `purplecoincli` (lib) generated 10 warnings (run `cargo fix --lib -p purplecoincli` to apply 4 suggestions)
[INFO] [stderr] warning: `purplecoincli` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/purplecoincli-4479966c73139bc8)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/purplecoincli-ed7d9cd780287f91)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests purplecoincli
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272", kill_on_drop: false }`
[INFO] [stdout] b42ee55f8a2e3639c73c480969e817b74b669bde8c07c667d889eb99c4dff272
