[INFO] cloning repository https://github.com/tokito06/Rudi---Wallet
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tokito06/Rudi---Wallet" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftokito06%2FRudi---Wallet", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftokito06%2FRudi---Wallet'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c363c2018febef669b10ce10c2c8e4bffa9110c0
[INFO] checking tokito06/Rudi---Wallet against 79c0559184f27f4433a6fbc260b950d06d4a4889 for pr-162233-crater-rollup
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftokito06%2FRudi---Wallet" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tokito06/Rudi---Wallet
[INFO] finished tweaking git repo https://github.com/tokito06/Rudi---Wallet
[INFO] tweaked toml for git repo https://github.com/tokito06/Rudi---Wallet written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tokito06/Rudi---Wallet on toolchain 79c0559184f27f4433a6fbc260b950d06d4a4889
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tokito06/Rudi---Wallet 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" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9
[INFO] running `Command { std: "docker" "start" "9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9", 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" "9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9" "/opt/rustwide/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9", 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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9" "/opt/rustwide/cargo-home/bin/cargo" "+79c0559184f27f4433a6fbc260b950d06d4a4889" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking typenum v1.20.0
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling ruint-macro v1.2.1
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling alloy-rlp-derive v0.3.15
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking foldhash v0.2.0
[INFO] [stderr]     Checking keccak v0.1.6
[INFO] [stderr]     Checking rustc-hash v2.1.2
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling macro-string v0.1.4
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling syn-solidity v1.5.7
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling auto_impl v1.3.0
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]    Compiling aws-lc-rs v1.16.3
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]     Checking crc-catalog v2.4.0
[INFO] [stderr]     Checking crc v3.4.0
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]    Compiling rustls v0.23.38
[INFO] [stderr]     Checking futures-utils-wasm v0.1.0
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking bimap v0.6.3
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling pin-project-internal v1.1.11
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling doctest-file v1.1.1
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking sha3 v0.10.9
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]    Compiling openssl v0.10.78
[INFO] [stderr]    Compiling strum_macros v0.27.2
[INFO] [stderr]    Compiling num_enum_derive v0.7.6
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling blst v0.3.16
[INFO] [stderr]    Compiling aws-lc-sys v0.40.0
[INFO] [stderr]    Compiling c-kzg v2.1.7
[INFO] [stderr]    Compiling openssl-sys v0.9.114
[INFO] [stderr]    Compiling secp256k1-sys v0.9.2
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking const-hex v1.18.1
[INFO] [stderr]     Checking pin-project v1.1.11
[INFO] [stderr]    Compiling ruint v1.17.2
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking serdect v0.2.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking alloy-rlp v0.3.15
[INFO] [stderr]     Checking alloy-sol-type-parser v1.5.7
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking nybbles v0.4.8
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking strum v0.27.2
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking num_enum v0.7.6
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking lru v0.16.4
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]    Compiling hex_lit v0.1.1
[INFO] [stderr]     Checking k256 v0.13.4
[INFO] [stderr]     Checking hex-conservative v0.1.2
[INFO] [stderr]    Compiling bitcoin-internals v0.2.1
[INFO] [stderr]     Checking tinyvec v1.11.0
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking hex-conservative v0.2.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking dashmap v6.1.0
[INFO] [stderr]    Compiling bitcoin v0.31.3
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]     Checking alloy-primitives v1.5.7
[INFO] [stderr]     Checking bitcoin_hashes v0.13.1
[INFO] [stderr]     Checking dirs-sys v0.5.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking bitcoin_hashes v0.14.1
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking rustls-pemfile v1.0.4
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking sync_wrapper v0.1.2
[INFO] [stderr]     Checking bech32 v0.10.0-beta
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking dirs v6.0.0
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking sdd v3.0.10
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking bs58 v0.5.1
[INFO] [stderr]     Checking scc v2.4.0
[INFO] [stderr]    Compiling serial_test_derive v3.4.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking bip39 v2.2.2
[INFO] [stderr]     Checking alloy-json-abi v1.5.7
[INFO] [stderr]     Checking alloy-eip7928 v0.3.4
[INFO] [stderr]     Checking alloy-eip7702 v0.6.3
[INFO] [stderr]     Checking alloy-eip2124 v0.2.0
[INFO] [stderr]     Checking alloy-eip2930 v0.2.3
[INFO] [stderr]     Checking alloy-serde v1.8.3
[INFO] [stderr]     Checking alloy-trie v0.9.5
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking alloy-signer v1.8.3
[INFO] [stderr]     Checking alloy-chains v0.2.34
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling serde_with_macros v3.18.0
[INFO] [stderr]    Compiling alloy-tx-macros v1.8.3
[INFO] [stderr]     Checking secp256k1 v0.28.2
[INFO] [stderr]    Compiling alloy-sol-macro-input v1.5.7
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking serde_with v3.18.0
[INFO] [stderr]    Compiling alloy-sol-macro-expander v1.5.7
[INFO] [stderr]     Checking serial_test v3.4.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking interprocess v2.4.2
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking tokio-stream v0.1.18
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking alloy-eips v1.8.3
[INFO] [stderr]     Checking alloy-rpc-types-debug v1.8.3
[INFO] [stderr]    Compiling alloy-sol-macro v1.5.7
[INFO] [stderr]     Checking alloy-sol-types v1.5.7
[INFO] [stderr]     Checking alloy-consensus v1.8.3
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking alloy-consensus-any v1.8.3
[INFO] [stderr]     Checking alloy-network-primitives v1.8.3
[INFO] [stderr]     Checking alloy-json-rpc v1.8.3
[INFO] [stderr]     Checking alloy-rpc-types-eth v1.8.3
[INFO] [stderr]     Checking alloy-dyn-abi v1.5.7
[INFO] [stderr]     Checking alloy-transport v1.8.3
[INFO] [stderr]     Checking alloy-core v1.5.7
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking alloy-pubsub v1.8.3
[INFO] [stderr]     Checking alloy-transport-ipc v1.8.3
[INFO] [stderr]     Checking alloy-rpc-types-any v1.8.3
[INFO] [stderr]     Checking alloy-rpc-types-anvil v1.8.3
[INFO] [stderr]     Checking alloy-rpc-types-trace v1.8.3
[INFO] [stderr]     Checking alloy-rpc-types-txpool v1.8.3
[INFO] [stderr]     Checking alloy-network v1.8.3
[INFO] [stderr]     Checking alloy-signer-local v1.8.3
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking alloy-rpc-types v1.8.3
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking reqwest v0.13.2
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking alloy-transport-ws v1.8.3
[INFO] [stderr]     Checking alloy-transport-http v1.8.3
[INFO] [stderr]     Checking alloy-rpc-client v1.8.3
[INFO] [stderr]     Checking alloy-provider v1.8.3
[INFO] [stderr]     Checking alloy-contract v1.8.3
[INFO] [stderr]     Checking alloy v1.8.3
[INFO] [stderr]     Checking rust-project-rudi v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/builders/password.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout]    |     ^                                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 -     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout] 19 +     (pass.len() as f64) * (pool_size.log2() as f64)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/builders/password.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout]    |     ^                                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 -     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout] 19 +     (pass.len() as f64) * (pool_size.log2() as f64)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `signers::Signer`
[INFO] [stdout]  --> src/tokens/ethereum.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     signers::Signer,
[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 import: `signers::Signer`
[INFO] [stdout]  --> src/tokens/ethereum.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     signers::Signer,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/builders/password.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout]    |     ^                                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 -     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout] 19 +     (pass.len() as f64) * (pool_size.log2() as f64)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/networks/btc/bitcoin_network.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |         assert!(utxos.len() >= 0);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/networks/ethereum_network.rs:176:17
[INFO] [stdout]     |
[INFO] [stdout] 176 |         assert!(result.len() >= 0);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/builders/password.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout]    |     ^                                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 -     ((pass.len() as f64) * (pool_size.log2() as f64))
[INFO] [stdout] 19 +     (pass.len() as f64) * (pool_size.log2() as f64)
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `signers::Signer`
[INFO] [stdout]  --> src/tokens/ethereum.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     signers::Signer,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wallet` is never constructed
[INFO] [stdout]  --> src/builders/wallet.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Wallet {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `generate`, `from_mnemonic`, and `seed_bytes` are never used
[INFO] [stdout]   --> src/builders/wallet.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Wallet {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 11 |     pub fn generate() -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn from_mnemonic(phrase: &str) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn seed_bytes(&self, passphrase: &str) -> Result<Vec<u8>> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PBKDF2_ITERATIONS` is never used
[INFO] [stdout]   --> src/builders/storage.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const PBKDF2_ITERATIONS: u32 = 600_000;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WALLET_VERSION` is never used
[INFO] [stdout]   --> src/builders/storage.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const WALLET_VERSION: u8 = 1;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WalletFile` is never constructed
[INFO] [stdout]   --> src/builders/storage.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct WalletFile {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WalletData` is never constructed
[INFO] [stdout]   --> src/builders/storage.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct WalletData {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wallet_path` is never used
[INFO] [stdout]   --> src/builders/storage.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn wallet_path() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wallet_exists` is never used
[INFO] [stdout]   --> src/builders/storage.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn wallet_exists() -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_wallet_password_strength` is never used
[INFO] [stdout]   --> src/builders/storage.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn validate_wallet_password_strength(password: &str) -> Result<()> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_wallet` is never used
[INFO] [stdout]   --> src/builders/storage.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub fn save_wallet(mnemonic: &str, password: &str) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_wallet` is never used
[INFO] [stdout]    --> src/builders/storage.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub fn load_wallet(password: &str) -> Result<WalletData> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_wallet_data` is never used
[INFO] [stdout]    --> src/builders/storage.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn decrypt_wallet_data(file: &WalletFile, password: &str) -> Result<WalletData> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change_password` is never used
[INFO] [stdout]    --> src/builders/storage.rs:147:8
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn change_password(old_pass: &str, new_pass: &str) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `password_entropy` is never used
[INFO] [stdout]  --> src/builders/password.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn password_entropy(pass: &str) -> f64 {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `password_strength` is never used
[INFO] [stdout]   --> src/builders/password.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn password_strength(pass: &str) -> &'static str {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `strong_password` is never used
[INFO] [stdout]   --> src/builders/password.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn strong_password(pass: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_repeated_chars` is never used
[INFO] [stdout]   --> src/builders/password.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn has_repeated_chars(pass: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_sequential` is never used
[INFO] [stdout]   --> src/builders/password.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn has_sequential(pass: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Network` is never used
[INFO] [stdout]  --> src/helpers/making_tx.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum Network {
[INFO] [stdout]   |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Key` is never used
[INFO] [stdout]   --> src/helpers/making_tx.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum Key {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send` is never used
[INFO] [stdout]   --> src/helpers/making_tx.rs:22:18
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Network {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 22 |     pub async fn send(
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Transaction` is never constructed
[INFO] [stdout]  --> src/helpers/types.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Transaction {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Direction` is never used
[INFO] [stdout]   --> src/helpers/types.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Direction {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Status` is never used
[INFO] [stdout]   --> src/helpers/types.rs:24:10
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub enum Status {
[INFO] [stdout]    |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BTC_API_URL` is never used
[INFO] [stdout]  --> src/networks/btc/bitcoin_network.rs:8:7
[INFO] [stdout]   |
[INFO] [stdout] 8 | const BTC_API_URL: &str = "https://blockstream.info/testnet/api";
[INFO] [stdout]   |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CLIENT` is never used
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | static CLIENT: Lazy<Client> = Lazy::new(Client::new);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Utxo` is never constructed
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Utxo {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_btc_balance` is never used
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub async fn get_btc_balance(address: &str) -> Result<f64> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_utxos` is never used
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:26:14
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub async fn get_utxos(address: &str) -> Result<Vec<Utxo>> {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `broadcast_tx` is never used
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:32:14
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub async fn broadcast_tx(tx_hex: &str) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_btc_history` is never used
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub async fn fetch_btc_history(address: &str, since_txid: Option<String>) -> Result<Vec<Transaction>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_bitcoin_tx` is never used
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn map_bitcoin_tx(result: &serde_json::Value, my_address: &str) -> Option<Transaction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DUST_LIMIT` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const DUST_LIMIT: u64 = 546;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SAT_PER_VBYTE` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const SAT_PER_VBYTE: u64 = 10;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `estimate_fee` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn estimate_fee(input_count: usize, output_count: usize) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_btc` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:27:14
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub async fn send_btc(
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SOLANA_RPC_URL` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const SOLANA_RPC_URL: &str = "https://api.devnet.solana.com";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CLIENT` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | static CLIENT: Lazy<Client> = Lazy::new(Client::new);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `REQUEST_ID` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | static REQUEST_ID: AtomicU64 = AtomicU64::new(1);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rpc_call` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:17:14
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub async fn rpc_call(method: &str, params: serde_json::Value) -> Result<serde_json::Value> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_sol_balance` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:32:14
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub async fn get_sol_balance(address: &str) -> Result<f64> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_latest_blockhash` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:43:14
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub async fn get_latest_blockhash() -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_sol` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub async fn send_sol(signing_key: &SigningKey, recipient: &str, amount_sol: f64) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_sol_history` is never used
[INFO] [stdout]    --> src/networks/solana_network.rs:115:14
[INFO] [stdout]     |
[INFO] [stdout] 115 | pub async fn fetch_sol_history(address: &str, since_txid: Option<String>) -> Result<Vec<Transaction>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_solana_tx` is never used
[INFO] [stdout]    --> src/networks/solana_network.rs:143:8
[INFO] [stdout]     |
[INFO] [stdout] 143 | pub fn map_solana_tx(result: &serde_json::Value, my_address: &str) -> Option<Transaction> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ETH_RPC_URL` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const ETH_RPC_URL: &str = "https://ethereum-sepolia-rpc.publicnode.com";
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ETH_HISTORY_URL` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const ETH_HISTORY_URL: &str = "https://eth-sepolia.blockscout.com/api";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ETH_CHAIN_ID` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const ETH_CHAIN_ID: u64 = 11155111;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WEI_PER_ETH` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const WEI_PER_ETH: u128 = 1_000_000_000_000_000_000;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CLIENT` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | static CLIENT: Lazy<Client> = Lazy::new(Client::new);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_provider` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:21:14
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub async fn get_provider() -> Result<impl Provider> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_eth_balance` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub async fn get_eth_balance(address: &str) -> Result<f64> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_eth` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:35:14
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub async fn send_eth(signer: PrivateKeySigner, recipient: &str, amount_eth: f64) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_eth_history` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:65:14
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub async fn fetch_eth_history(address: &str, since_txid: Option<String>) -> Result<Vec<Transaction>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `map_ethereum_tx` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn map_ethereum_tx(result: &serde_json::Value, my_address: &str) -> Option<Transaction> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_child` is never used
[INFO] [stdout]  --> src/tokens/bitcoin.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn derive_child(seed: &[u8], network: Network, path: &str) -> Result<Xpriv> {
[INFO] [stdout]   |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_address` is never used
[INFO] [stdout]   --> src/tokens/bitcoin.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn derive_address(seed: &[u8], network: Network, path: &str) -> Result<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_private_key` is never used
[INFO] [stdout]   --> src/tokens/bitcoin.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub fn derive_private_key(seed: &[u8], network: Network, path: &str) -> Result<PrivateKey> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_PATH` is never used
[INFO] [stdout]   --> src/tokens/ethereum.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const DEFAULT_PATH: &str = "m/44'/60'/0'/0/0";
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_child` is never used
[INFO] [stdout]   --> src/tokens/ethereum.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn derive_child(seed: &[u8], path: &str) -> Result<Xpriv> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_private_key` is never used
[INFO] [stdout]   --> src/tokens/ethereum.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn derive_private_key(seed: &[u8]) -> Result<PrivateKeySigner> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_address` is never used
[INFO] [stdout]   --> src/tokens/ethereum.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn derive_address(seed: &[u8]) -> Result<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SolanaKeypair` is never constructed
[INFO] [stdout]  --> src/tokens/solana.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct SolanaKeypair {
[INFO] [stdout]   |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_keypair` is never used
[INFO] [stdout]   --> src/tokens/solana.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn derive_keypair(seed: &[u8]) -> Result<SolanaKeypair> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_address` is never used
[INFO] [stdout]   --> src/tokens/solana.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub fn derive_address(seed: &[u8]) -> Result<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_private_key` is never used
[INFO] [stdout]   --> src/tokens/solana.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub fn derive_private_key(seed: &[u8]) -> Result<SolanaKeypair> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `History` is never constructed
[INFO] [stdout]   --> src/history.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct History {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `history_path` is never used
[INFO] [stdout]   --> src/history.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn history_path() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `store_history`, `load_history`, `last_entry_network`, and `append` are never used
[INFO] [stdout]   --> src/history.rs:24:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl History {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 24 |     pub async fn new(sol_address: &str, btc_address: &str, eth_address: &str) -> Result<History> {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn store_history(&self) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn load_history() -> Result<History> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     fn last_entry_network(&self, network: &Network) -> Option<String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub async fn append(&mut self, sol_address: &str, btc_address: &str, eth_address: &str) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `signers::Signer`
[INFO] [stdout]  --> src/tokens/ethereum.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     signers::Signer,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Key` is never used
[INFO] [stdout]   --> src/helpers/making_tx.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum Key {
[INFO] [stdout]    |          ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send` is never used
[INFO] [stdout]   --> src/helpers/making_tx.rs:22:18
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Network {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] 22 |     pub async fn send(
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `txid` and `vout` are never read
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Utxo {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 14 |     pub txid: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 15 |     pub vout: u32,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `broadcast_tx` is never used
[INFO] [stdout]   --> src/networks/btc/bitcoin_network.rs:32:14
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub async fn broadcast_tx(tx_hex: &str) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DUST_LIMIT` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const DUST_LIMIT: u64 = 546;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SAT_PER_VBYTE` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const SAT_PER_VBYTE: u64 = 10;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `estimate_fee` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn estimate_fee(input_count: usize, output_count: usize) -> u64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_btc` is never used
[INFO] [stdout]   --> src/networks/btc/transaction.rs:27:14
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub async fn send_btc(
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_sol` is never used
[INFO] [stdout]   --> src/networks/solana_network.rs:54:14
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub async fn send_sol(signing_key: &SigningKey, recipient: &str, amount_sol: f64) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ETH_CHAIN_ID` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const ETH_CHAIN_ID: u64 = 11155111;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_eth` is never used
[INFO] [stdout]   --> src/networks/ethereum_network.rs:35:14
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub async fn send_eth(signer: PrivateKeySigner, recipient: &str, amount_eth: f64) -> Result<String> {
[INFO] [stdout]    |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `append` are never used
[INFO] [stdout]   --> src/history.rs:24:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl History {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 24 |     pub async fn new(sol_address: &str, btc_address: &str, eth_address: &str) -> Result<History> {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub async fn append(&mut self, sol_address: &str, btc_address: &str, eth_address: &str) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/networks/btc/bitcoin_network.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |         assert!(utxos.len() >= 0);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/networks/ethereum_network.rs:176:17
[INFO] [stdout]     |
[INFO] [stdout] 176 |         assert!(result.len() >= 0);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 01s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9", kill_on_drop: false }`
[INFO] [stdout] 9c343cbbc929ac0b5a50e8dfcc601a00883dbe860efd5ced3f4dfa7be54e6ec9
