[INFO] cloning repository https://github.com/Hoss-Boss/txrp-rust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Hoss-Boss/txrp-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHoss-Boss%2Ftxrp-rust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHoss-Boss%2Ftxrp-rust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cbb45b2c6be3a3427a7038a3f119666c619ba998
[INFO] checking Hoss-Boss/txrp-rust against df1ae0f7dd168513de2d89beb2cb7a95d4fdc118 for pr-159343-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHoss-Boss%2Ftxrp-rust" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Hoss-Boss/txrp-rust
[INFO] finished tweaking git repo https://github.com/Hoss-Boss/txrp-rust
[INFO] tweaked toml for git repo https://github.com/Hoss-Boss/txrp-rust written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Hoss-Boss/txrp-rust on toolchain df1ae0f7dd168513de2d89beb2cb7a95d4fdc118
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+df1ae0f7dd168513de2d89beb2cb7a95d4fdc118" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Hoss-Boss/txrp-rust 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" "+df1ae0f7dd168513de2d89beb2cb7a95d4fdc118" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.104
[INFO] [stderr]   Downloaded quote v1.0.42
[INFO] [stderr]   Downloaded xrpl-rust-macros v0.1.0
[INFO] [stderr]   Downloaded ref-cast v1.0.25
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.106
[INFO] [stderr]   Downloaded thiserror-impl-no-std v2.0.2
[INFO] [stderr]   Downloaded ref-cast-impl v1.0.25
[INFO] [stderr]   Downloaded dyn-clone v1.0.20
[INFO] [stderr]   Downloaded bitcoin-io v0.1.4
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.106
[INFO] [stderr]   Downloaded serde_repr v0.1.20
[INFO] [stderr]   Downloaded hash32 v0.1.1
[INFO] [stderr]   Downloaded embedded-io-async v0.6.1
[INFO] [stderr]   Downloaded age-core v0.11.0
[INFO] [stderr]   Downloaded nourl v0.1.4
[INFO] [stderr]   Downloaded as-slice v0.1.5
[INFO] [stderr]   Downloaded atomic-polyfill v1.0.3
[INFO] [stderr]   Downloaded embedded-nal-async v0.8.0
[INFO] [stderr]   Downloaded embedded-nal v0.9.0
[INFO] [stderr]   Downloaded nb v1.1.0
[INFO] [stderr]   Downloaded rand_hc v0.3.2
[INFO] [stderr]   Downloaded derive-new v0.7.0
[INFO] [stderr]   Downloaded is_terminal_polyfill v1.70.2
[INFO] [stderr]   Downloaded once_cell_polyfill v1.70.2
[INFO] [stderr]   Downloaded security-framework-sys v2.15.0
[INFO] [stderr]   Downloaded deranged v0.5.5
[INFO] [stderr]   Downloaded time-core v0.1.6
[INFO] [stderr]   Downloaded tokio-tungstenite v0.24.0
[INFO] [stderr]   Downloaded thiserror-no-std v2.0.2
[INFO] [stderr]   Downloaded zmij v1.0.6
[INFO] [stderr]   Downloaded time-macros v0.2.24
[INFO] [stderr]   Downloaded blake2 v0.10.6
[INFO] [stderr]   Downloaded hex-conservative v0.2.2
[INFO] [stderr]   Downloaded embassy-futures v0.1.2
[INFO] [stderr]   Downloaded anstyle-wincon v3.0.11
[INFO] [stderr]   Downloaded anstyle-query v1.1.5
[INFO] [stderr]   Downloaded libredox v0.1.12
[INFO] [stderr]   Downloaded signal-hook-mio v0.2.5
[INFO] [stderr]   Downloaded crossterm_winapi v0.9.1
[INFO] [stderr]   Downloaded chacha20poly1305 v0.10.1
[INFO] [stderr]   Downloaded generic-array v0.13.3
[INFO] [stderr]   Downloaded rkyv_derive v0.7.45
[INFO] [stderr]   Downloaded generic-array v0.12.4
[INFO] [stderr]   Downloaded buffered-io v0.5.4
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.56
[INFO] [stderr]   Downloaded critical-section v1.2.0
[INFO] [stderr]   Downloaded native-tls v0.2.14
[INFO] [stderr]   Downloaded data-encoding v2.9.0
[INFO] [stderr]   Downloaded iana-time-zone v0.1.64
[INFO] [stderr]   Downloaded system-configuration v0.6.1
[INFO] [stderr]   Downloaded fs_extra v1.3.0
[INFO] [stderr]   Downloaded cmake v0.1.57
[INFO] [stderr]   Downloaded base64ct v1.8.1
[INFO] [stderr]   Downloaded thiserror v2.0.17
[INFO] [stderr]   Downloaded thiserror-impl v2.0.17
[INFO] [stderr]   Downloaded directories v5.0.1
[INFO] [stderr]   Downloaded rust-embed-utils v8.9.0
[INFO] [stderr]   Downloaded rust-embed-impl v8.9.0
[INFO] [stderr]   Downloaded proc-macro-error-attr2 v2.0.0
[INFO] [stderr]   Downloaded i18n-embed-impl v0.8.4
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.106
[INFO] [stderr]   Downloaded tempfile v3.24.0
[INFO] [stderr]   Downloaded hashlink v0.11.0
[INFO] [stderr]   Downloaded scrypt v0.11.0
[INFO] [stderr]   Downloaded password-hash v0.5.0
[INFO] [stderr]   Downloaded i18n-embed-fl v0.9.4
[INFO] [stderr]   Downloaded self_cell v0.10.3
[INFO] [stderr]   Downloaded secrecy v0.10.3
[INFO] [stderr]   Downloaded toml_parser v1.0.6+spec-1.1.0
[INFO] [stderr]   Downloaded reqwless v0.13.0
[INFO] [stderr]   Downloaded tungstenite v0.24.0
[INFO] [stderr]   Downloaded bitcoin_hashes v0.14.1
[INFO] [stderr]   Downloaded embedded-websocket-embedded-io v0.1.0
[INFO] [stderr]   Downloaded embassy-sync v0.6.2
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.106
[INFO] [stderr]   Downloaded js-sys v0.3.83
[INFO] [stderr]   Downloaded argon2 v0.5.3
[INFO] [stderr]   Downloaded poly1305 v0.8.0
[INFO] [stderr]   Downloaded heapless v0.6.1
[INFO] [stderr]   Downloaded clap v4.5.53
[INFO] [stderr]   Downloaded signal-hook v0.3.18
[INFO] [stderr]   Downloaded i18n-embed v0.15.4
[INFO] [stderr]   Downloaded i18n-config v0.4.8
[INFO] [stderr]   Downloaded find-crate v0.6.3
[INFO] [stderr]   Downloaded fluent v0.16.1
[INFO] [stderr]   Downloaded cookie-factory v0.3.3
[INFO] [stderr]   Downloaded io_tee v0.1.1
[INFO] [stderr]   Downloaded openssl-sys v0.9.111
[INFO] [stderr]   Downloaded schemars v0.9.0
[INFO] [stderr]   Downloaded secp256k1 v0.30.0
[INFO] [stderr]   Downloaded uuid v1.19.0
[INFO] [stderr]   Downloaded heapless v0.8.0
[INFO] [stderr]   Downloaded embedded-tls v0.17.0
[INFO] [stderr]   Downloaded pin-project v1.1.10
[INFO] [stderr]   Downloaded proc-macro-error2 v2.0.1
[INFO] [stderr]   Downloaded chacha20 v0.9.1
[INFO] [stderr]   Downloaded bumpalo v3.19.1
[INFO] [stderr]   Downloaded schemars v1.2.0
[INFO] [stderr]   Downloaded security-framework v3.5.1
[INFO] [stderr]   Downloaded fluent-syntax v0.11.1
[INFO] [stderr]   Downloaded arc-swap v1.8.0
[INFO] [stderr]   Downloaded time v0.3.44
[INFO] [stderr]   Downloaded rkyv v0.7.45
[INFO] [stderr]   Downloaded tower v0.5.2
[INFO] [stderr]   Downloaded bip39 v2.2.2
[INFO] [stderr]   Downloaded pin-project-internal v1.1.10
[INFO] [stderr]   Downloaded bigdecimal v0.4.10
[INFO] [stderr]   Downloaded crossterm v0.28.1
[INFO] [stderr]   Downloaded fluent-bundle v0.15.3
[INFO] [stderr]   Downloaded syn v2.0.112
[INFO] [stderr]   Downloaded libm v0.2.15
[INFO] [stderr]   Downloaded reqwest v0.13.1
[INFO] [stderr]   Downloaded webpki-root-certs v1.0.5
[INFO] [stderr]   Downloaded x25519-dalek v2.0.1
[INFO] [stderr]   Downloaded basic-toml v0.1.10
[INFO] [stderr]   Downloaded rust_decimal v1.39.0
[INFO] [stderr]   Downloaded rusqlite v0.38.0
[INFO] [stderr]   Downloaded aws-lc-rs v1.15.4
[INFO] [stderr]   Downloaded clap_builder v4.5.53
[INFO] [stderr]   Downloaded chrono v0.4.42
[INFO] [stderr]   Downloaded openssl v0.10.75
[INFO] [stderr]   Downloaded rustix v0.38.44
[INFO] [stderr]   Downloaded rustix v1.1.3
[INFO] [stderr]   Downloaded web-sys v0.3.83
[INFO] [stderr]   Downloaded libc v0.2.178
[INFO] [stderr]   Downloaded rust-embed v8.9.0
[INFO] [stderr]   Downloaded age v0.11.2
[INFO] [stderr]   Downloaded linux-raw-sys v0.4.15
[INFO] [stderr]   Downloaded secp256k1-sys v0.10.1
[INFO] [stderr]   Downloaded libsqlite3-sys v0.36.0
[INFO] [stderr]   Downloaded aws-lc-sys v0.37.0
[INFO] [stderr]   Downloaded sqlite-wasm-rs v0.5.1
[INFO] [stderr]   Downloaded xrpl-rust v1.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597
[INFO] running `Command { std: "docker" "start" "12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597", 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" "12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597" "/opt/rustwide/cargo-home/bin/cargo" "+df1ae0f7dd168513de2d89beb2cb7a95d4fdc118" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597", 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" "12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597" "/opt/rustwide/cargo-home/bin/cargo" "+df1ae0f7dd168513de2d89beb2cb7a95d4fdc118" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.104
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.6
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]     Checking bytes v1.11.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking pin-utils v0.1.0
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]    Compiling syn v2.0.112
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]    Compiling cc v1.2.51
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking foldhash v0.2.0
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling cmake v0.1.57
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]     Checking litemap v0.8.1
[INFO] [stderr]     Checking writeable v0.6.2
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]     Checking foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]     Checking percent-encoding v2.3.2
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling aws-lc-sys v0.37.0
[INFO] [stderr]    Compiling embedded-io-async v0.6.1
[INFO] [stderr]    Compiling aws-lc-rs v1.15.4
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling icu_normalizer_data v2.1.1
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]     Checking foreign-types v0.3.2
[INFO] [stderr]     Checking indexmap v2.12.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking tower-service v0.3.3
[INFO] [stderr]     Checking atomic-waker v1.1.2
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]     Checking embedded-io v0.6.1
[INFO] [stderr]     Checking try-lock v0.2.5
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]     Checking want v0.3.1
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling rust-embed-utils v8.9.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling zmij v1.0.6
[INFO] [stderr]     Checking base16ct v0.2.0
[INFO] [stderr]     Checking openssl-probe v0.1.6
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling rustc-hash v2.1.1
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]    Compiling type-map v0.5.1
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking hash32 v0.3.1
[INFO] [stderr]    Compiling serde_json v1.0.148
[INFO] [stderr]     Checking tokio-util v0.7.17
[INFO] [stderr]    Compiling self_cell v1.2.2
[INFO] [stderr]     Checking untrusted v0.9.0
[INFO] [stderr]     Checking ipnet v2.11.0
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling rustls v0.23.35
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling self_cell v0.10.3
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking h2 v0.4.12
[INFO] [stderr]     Checking generic-array v0.13.3
[INFO] [stderr]     Checking generic-array v0.12.4
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling atomic-polyfill v1.0.3
[INFO] [stderr]    Compiling heapless v0.6.1
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking critical-section v1.2.0
[INFO] [stderr]     Checking tower-layer v0.3.3
[INFO] [stderr]     Checking utf8_iter v1.0.4
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]     Checking rustls-pki-types v1.13.2
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking unic-langid-impl v0.9.6
[INFO] [stderr]     Checking unic-langid v0.9.6
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]    Compiling rust-embed-impl v8.9.0
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling basic-toml v0.1.10
[INFO] [stderr]    Compiling fluent-syntax v0.11.1
[INFO] [stderr]    Compiling intl_pluralrules v7.0.2
[INFO] [stderr]    Compiling intl-memoizer v0.5.3
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking hyper-util v0.1.19
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]    Compiling fluent-langneg v0.13.1
[INFO] [stderr]    Compiling i18n-config v0.4.8
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]    Compiling fluent-bundle v0.15.3
[INFO] [stderr]    Compiling find-crate v0.6.3
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]    Compiling i18n-embed-impl v0.8.4
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking as-slice v0.1.5
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]    Compiling secp256k1-sys v0.10.1
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking hash32 v0.1.1
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]     Checking iri-string v0.7.10
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]     Checking nb v1.1.0
[INFO] [stderr]     Checking tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking embedded-nal v0.9.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]    Compiling fluent v0.16.1
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]    Compiling rust-embed v8.9.0
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]     Checking hex-conservative v0.2.2
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling arc-swap v1.8.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.36.0
[INFO] [stderr]    Compiling bigdecimal v0.4.10
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking clap_lex v0.7.6
[INFO] [stderr]    Compiling rust_decimal v1.39.0
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]     Checking data-encoding v2.9.0
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking ryu v1.0.22
[INFO] [stderr]    Compiling embassy-sync v0.6.2
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking mime v0.3.17
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]     Checking tungstenite v0.24.0
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking clap_builder v4.5.53
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]    Compiling i18n-embed v0.15.4
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling thiserror-impl-no-std v2.0.2
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking bitcoin_hashes v0.14.1
[INFO] [stderr]     Checking embedded-tls v0.17.0
[INFO] [stderr]    Compiling serde_with_macros v3.16.1
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking embedded-nal-async v0.8.0
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking cookie-factory v0.3.3
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking salsa20 v0.10.2
[INFO] [stderr]     Checking secrecy v0.10.3
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]     Checking buffered-io v0.5.4
[INFO] [stderr]     Checking iana-time-zone v0.1.64
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking io_tee v0.1.1
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking nourl v0.1.4
[INFO] [stderr]     Checking base64ct v1.8.1
[INFO] [stderr]     Checking reqwless v0.13.0
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking age-core v0.11.0
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking serde_with v3.16.1
[INFO] [stderr]     Checking scrypt v0.11.0
[INFO] [stderr]     Checking bip39 v2.2.2
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking clap v4.5.53
[INFO] [stderr]     Checking thiserror-no-std v2.0.2
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking secp256k1 v0.30.0
[INFO] [stderr]    Compiling i18n-embed-fl v0.9.4
[INFO] [stderr]     Checking tokio-tungstenite v0.24.0
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking x25519-dalek v2.0.1
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking embedded-websocket-embedded-io v0.1.0
[INFO] [stderr]     Checking bs58 v0.5.1
[INFO] [stderr]     Checking ripemd v0.1.3
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling xrpl-rust-macros v0.1.0
[INFO] [stderr]    Compiling derive-new v0.7.0
[INFO] [stderr]     Checking hashlink v0.11.0
[INFO] [stderr]     Checking rand_hc v0.3.2
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking bech32 v0.9.1
[INFO] [stderr]     Checking embassy-futures v0.1.2
[INFO] [stderr]     Checking fallible-streaming-iterator v0.1.9
[INFO] [stderr]     Checking fallible-iterator v0.3.0
[INFO] [stderr]     Checking age v0.11.2
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking directories v5.0.1
[INFO] [stderr]     Checking xrpl-rust v1.0.0
[INFO] [stderr]     Checking rusqlite v0.38.0
[INFO] [stderr]     Checking rustls-webpki v0.103.8
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking reqwest v0.13.1
[INFO] [stderr]     Checking txrp-rust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `aes_gcm::Error`
[INFO] [stdout]  --> src/wallet_functionality.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use aes_gcm::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Value` and `error`
[INFO] [stdout]  --> src/wallet_functionality.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{error, json, Value};
[INFO] [stdout]   |                  ^^^^^        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::requests::fee`
[INFO] [stdout]  --> src/wallet_functionality.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use xrpl::models::requests::fee;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::results::tx::Transaction`
[INFO] [stdout]  --> src/wallet_functionality.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use xrpl::models::results::tx::Transaction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ARGON_ALGORITHM`, `ARGON_VERSION`, `M_COST`, `OUTPUT_LEN`, `P_COST`, and `T_COST`
[INFO] [stdout]   --> src/wallet_functionality.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::encryption::{M_COST, T_COST, P_COST, OUTPUT_LEN, ARGON_ALGORITHM, ARGON_VERSION};
[INFO] [stdout]    |                         ^^^^^^  ^^^^^^  ^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::clients::XRPLSyncClient`
[INFO] [stdout]   --> src/wallet_functionality.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use xrpl::clients::XRPLSyncClient;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::clients::json_rpc::JsonRpcClient`
[INFO] [stdout]   --> src/wallet_functionality.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use xrpl::clients::json_rpc::JsonRpcClient;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::requests::account_info::AccountInfo`
[INFO] [stdout]   --> src/wallet_functionality.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use xrpl::models::requests::account_info::AccountInfo;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::results::account_info::AccountInfoVersionMap`
[INFO] [stdout]   --> src/wallet_functionality.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use xrpl::models::results::account_info::AccountInfoVersionMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::Client`
[INFO] [stdout]   --> src/wallet_functionality.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use reqwest::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `url::Url`
[INFO] [stdout]   --> src/wallet_functionality.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use url::Url;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OnceLock`
[INFO] [stdout]   --> src/wallet_functionality.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::sync::{OnceLock};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::Thread`
[INFO] [stdout]   --> src/wallet_functionality.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use std::thread::Thread;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/wallet_functionality.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 |         if (current_wallet_is_encrypted) {
[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] 131 -         if (current_wallet_is_encrypted) {
[INFO] [stdout] 131 +         if current_wallet_is_encrypted {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/wallet_functionality.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 |         if (mnemonic_exists) {
[INFO] [stdout]     |            ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 136 -         if (mnemonic_exists) {
[INFO] [stdout] 136 +         if mnemonic_exists {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/wallet_functionality.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 |         if (current_wallet_isnt_encrypted) {
[INFO] [stdout]     |            ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 148 -         if (current_wallet_isnt_encrypted) {
[INFO] [stdout] 148 +         if current_wallet_isnt_encrypted {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/file_io.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/file_io.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::database::attempt_test_data_insertion`
[INFO] [stdout]  --> src/file_io.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::database::attempt_test_data_insertion;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/file_io.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 |     if (wallets_db_file_exists == false) {
[INFO] [stdout]    |        ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 44 -     if (wallets_db_file_exists == false) {
[INFO] [stdout] 44 +     if wallets_db_file_exists == false {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/file_io.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 |     if (options_file_exists == false) {
[INFO] [stdout]    |        ^                            ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 48 -     if (options_file_exists == false) {
[INFO] [stdout] 48 +     if options_file_exists == false {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `io`, `num::ParseIntError`, `ptr::read_unaligned`, `thread::sleep`, and `time::Duration`
[INFO] [stdout]  --> src/menu_navigation.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io, num::ParseIntError, process::exit, ptr::read_unaligned, thread::sleep, time::Duration};
[INFO] [stdout]   |           ^^  ^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `asynch::wallet`
[INFO] [stdout]  --> src/menu_navigation.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use xrpl::{asynch::wallet, wallet::Wallet};
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:103:24
[INFO] [stdout]     |
[INFO] [stdout] 103 |                     if (user_input.trim() == "b") {
[INFO] [stdout]     |                        ^                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 103 -                     if (user_input.trim() == "b") {
[INFO] [stdout] 103 +                     if user_input.trim() == "b" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:106:29
[INFO] [stdout]     |
[INFO] [stdout] 106 |                     else if (user_input.trim() == "h") {
[INFO] [stdout]     |                             ^                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 106 -                     else if (user_input.trim() == "h") {
[INFO] [stdout] 106 +                     else if user_input.trim() == "h" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 113 |                     if (user_input.trim() != user_input_2.trim()) {
[INFO] [stdout]     |                        ^                                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 113 -                     if (user_input.trim() != user_input_2.trim()) {
[INFO] [stdout] 113 +                     if user_input.trim() != user_input_2.trim() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:170:16
[INFO] [stdout]     |
[INFO] [stdout] 170 |             if (parsed_value.is_err()) {
[INFO] [stdout]     |                ^                     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 170 -             if (parsed_value.is_err()) {
[INFO] [stdout] 170 +             if parsed_value.is_err() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:178:20
[INFO] [stdout]     |
[INFO] [stdout] 178 |                 if (index >= wallets.len()) {
[INFO] [stdout]     |                    ^                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 178 -                 if (index >= wallets.len()) {
[INFO] [stdout] 178 +                 if index >= wallets.len() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:211:16
[INFO] [stdout]     |
[INFO] [stdout] 211 |             if (&user_input.to_lowercase() == "h") {
[INFO] [stdout]     |                ^                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 211 -             if (&user_input.to_lowercase() == "h") {
[INFO] [stdout] 211 +             if &user_input.to_lowercase() == "h" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |             else if (&user_input.to_lowercase() == "b") {
[INFO] [stdout]     |                     ^                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 214 -             else if (&user_input.to_lowercase() == "b") {
[INFO] [stdout] 214 +             else if &user_input.to_lowercase() == "b" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `aes_gcm::Error`
[INFO] [stdout]  --> src/wallet_functionality.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use aes_gcm::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Value` and `error`
[INFO] [stdout]  --> src/wallet_functionality.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::{error, json, Value};
[INFO] [stdout]   |                  ^^^^^        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::requests::fee`
[INFO] [stdout]  --> src/wallet_functionality.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use xrpl::models::requests::fee;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::results::tx::Transaction`
[INFO] [stdout]  --> src/wallet_functionality.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use xrpl::models::results::tx::Transaction;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ARGON_ALGORITHM`, `ARGON_VERSION`, `M_COST`, `OUTPUT_LEN`, `P_COST`, and `T_COST`
[INFO] [stdout]   --> src/wallet_functionality.rs:14:25
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::encryption::{M_COST, T_COST, P_COST, OUTPUT_LEN, ARGON_ALGORITHM, ARGON_VERSION};
[INFO] [stdout]    |                         ^^^^^^  ^^^^^^  ^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PasswordHash`, `PasswordHasher`, `PasswordVerifier`, `SaltString`, and `Salt`
[INFO] [stdout]  --> src/encryption.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use argon2::{password_hash::{PasswordHash, PasswordHasher, PasswordVerifier, Salt, SaltString}, Algorithm, Argon2, Params, Version};
[INFO] [stdout]   |                              ^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::clients::XRPLSyncClient`
[INFO] [stdout]   --> src/wallet_functionality.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use xrpl::clients::XRPLSyncClient;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Key` and `aes::Aes256`
[INFO] [stdout]  --> src/encryption.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use aes_gcm::{aead::{Aead, Nonce}, aes::Aes256, AeadCore, Aes256Gcm, Key, KeyInit};
[INFO] [stdout]   |                                    ^^^^^^^^^^^                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/encryption.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::clients::json_rpc::JsonRpcClient`
[INFO] [stdout]   --> src/wallet_functionality.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use xrpl::clients::json_rpc::JsonRpcClient;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/encryption.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 |             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout]    |                                                               ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 43 -             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout] 43 +             _ => return Err(ArgonParseError::StringMatchError(string.to_string())),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::requests::account_info::AccountInfo`
[INFO] [stdout]   --> src/wallet_functionality.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use xrpl::models::requests::account_info::AccountInfo;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/encryption.rs:88:63
[INFO] [stdout]    |
[INFO] [stdout] 88 |             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout]    |                                                               ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 88 -             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout] 88 +             _ => return Err(ArgonParseError::StringMatchError(string.to_string())),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::models::results::account_info::AccountInfoVersionMap`
[INFO] [stdout]   --> src/wallet_functionality.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use xrpl::models::results::account_info::AccountInfoVersionMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `reqwest::Client`
[INFO] [stdout]   --> src/wallet_functionality.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use reqwest::Client;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `url::Url`
[INFO] [stdout]   --> src/wallet_functionality.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use url::Url;
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OnceLock`
[INFO] [stdout]   --> src/wallet_functionality.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::sync::{OnceLock};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::Thread`
[INFO] [stdout]   --> src/wallet_functionality.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use std::thread::Thread;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/wallet_functionality.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 |         if (current_wallet_is_encrypted) {
[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] 131 -         if (current_wallet_is_encrypted) {
[INFO] [stdout] 131 +         if current_wallet_is_encrypted {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/wallet_functionality.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 136 |         if (mnemonic_exists) {
[INFO] [stdout]     |            ^               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 136 -         if (mnemonic_exists) {
[INFO] [stdout] 136 +         if mnemonic_exists {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/wallet_functionality.rs:148:12
[INFO] [stdout]     |
[INFO] [stdout] 148 |         if (current_wallet_isnt_encrypted) {
[INFO] [stdout]     |            ^                             ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 148 -         if (current_wallet_isnt_encrypted) {
[INFO] [stdout] 148 +         if current_wallet_isnt_encrypted {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]  --> src/file_io.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use serde::{Deserialize, Serialize};
[INFO] [stdout]   |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/file_io.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/encryption.rs:147:34
[INFO] [stdout]     |
[INFO] [stdout] 147 |     let encryption_data_exists = (wallet.encryption_enabled == true && wallet.encryption_data.is_some());
[INFO] [stdout]     |                                  ^                                                                     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 147 -     let encryption_data_exists = (wallet.encryption_enabled == true && wallet.encryption_data.is_some());
[INFO] [stdout] 147 +     let encryption_data_exists = wallet.encryption_enabled == true && wallet.encryption_data.is_some();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bip39::Mnemonic`
[INFO] [stdout]  --> src/database.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bip39::Mnemonic;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::database::attempt_test_data_insertion`
[INFO] [stdout]  --> src/file_io.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::database::attempt_test_data_insertion;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/file_io.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 |     if (wallets_db_file_exists == false) {
[INFO] [stdout]    |        ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 44 -     if (wallets_db_file_exists == false) {
[INFO] [stdout] 44 +     if wallets_db_file_exists == false {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::cursor`
[INFO] [stdout]  --> src/database.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crossterm::cursor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/database.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 |     if (wallet.encryption_enabled) {
[INFO] [stdout]    |        ^                         ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 76 -     if (wallet.encryption_enabled) {
[INFO] [stdout] 76 +     if wallet.encryption_enabled {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/file_io.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 |     if (options_file_exists == false) {
[INFO] [stdout]    |        ^                            ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 48 -     if (options_file_exists == false) {
[INFO] [stdout] 48 +     if options_file_exists == false {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `aes_gcm::aes::cipher`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use aes_gcm::aes::cipher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Engine` and `engine::general_purpose`
[INFO] [stdout]  --> src/main.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use base64::{engine::general_purpose, Engine};
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `io`, `num::ParseIntError`, `ptr::read_unaligned`, `thread::sleep`, and `time::Duration`
[INFO] [stdout]  --> src/menu_navigation.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{io, num::ParseIntError, process::exit, ptr::read_unaligned, thread::sleep, time::Duration};
[INFO] [stdout]   |           ^^  ^^^^^^^^^^^^^^^^^^                 ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `asynch::wallet`
[INFO] [stdout]  --> src/menu_navigation.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use xrpl::{asynch::wallet, wallet::Wallet};
[INFO] [stdout]   |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:103:24
[INFO] [stdout]     |
[INFO] [stdout] 103 |                     if (user_input.trim() == "b") {
[INFO] [stdout]     |                        ^                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 103 -                     if (user_input.trim() == "b") {
[INFO] [stdout] 103 +                     if user_input.trim() == "b" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:106:29
[INFO] [stdout]     |
[INFO] [stdout] 106 |                     else if (user_input.trim() == "h") {
[INFO] [stdout]     |                             ^                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 106 -                     else if (user_input.trim() == "h") {
[INFO] [stdout] 106 +                     else if user_input.trim() == "h" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::wallet::Wallet`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use xrpl::wallet::Wallet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:113:24
[INFO] [stdout]     |
[INFO] [stdout] 113 |                     if (user_input.trim() != user_input_2.trim()) {
[INFO] [stdout]     |                        ^                                        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 113 -                     if (user_input.trim() != user_input_2.trim()) {
[INFO] [stdout] 113 +                     if user_input.trim() != user_input_2.trim() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `get_wallets_from_db` and `insert_wallet_into_db`
[INFO] [stdout]   --> src/main.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::database::{insert_wallet_into_db, get_wallets_from_db};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wallet_functionality::TXRPWallet`
[INFO] [stdout]   --> src/main.rs:11:44
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{encryption::encrypt_plaintext, wallet_functionality::TXRPWallet};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:170:16
[INFO] [stdout]     |
[INFO] [stdout] 170 |             if (parsed_value.is_err()) {
[INFO] [stdout]     |                ^                     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 170 -             if (parsed_value.is_err()) {
[INFO] [stdout] 170 +             if parsed_value.is_err() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:178:20
[INFO] [stdout]     |
[INFO] [stdout] 178 |                 if (index >= wallets.len()) {
[INFO] [stdout]     |                    ^                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 178 -                 if (index >= wallets.len()) {
[INFO] [stdout] 178 +                 if index >= wallets.len() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:211:16
[INFO] [stdout]     |
[INFO] [stdout] 211 |             if (&user_input.to_lowercase() == "h") {
[INFO] [stdout]     |                ^                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 211 -             if (&user_input.to_lowercase() == "h") {
[INFO] [stdout] 211 +             if &user_input.to_lowercase() == "h" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/menu_navigation.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |             else if (&user_input.to_lowercase() == "b") {
[INFO] [stdout]     |                     ^                                 ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 214 -             else if (&user_input.to_lowercase() == "b") {
[INFO] [stdout] 214 +             else if &user_input.to_lowercase() == "b" {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PasswordHash`, `PasswordHasher`, `PasswordVerifier`, `SaltString`, and `Salt`
[INFO] [stdout]  --> src/encryption.rs:1:30
[INFO] [stdout]   |
[INFO] [stdout] 1 | use argon2::{password_hash::{PasswordHash, PasswordHasher, PasswordVerifier, Salt, SaltString}, Algorithm, Argon2, Params, Version};
[INFO] [stdout]   |                              ^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Key` and `aes::Aes256`
[INFO] [stdout]  --> src/encryption.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use aes_gcm::{aead::{Aead, Nonce}, aes::Aes256, AeadCore, Aes256Gcm, Key, KeyInit};
[INFO] [stdout]   |                                    ^^^^^^^^^^^                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/encryption.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/encryption.rs:43:63
[INFO] [stdout]    |
[INFO] [stdout] 43 |             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout]    |                                                               ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 43 -             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout] 43 +             _ => return Err(ArgonParseError::StringMatchError(string.to_string())),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]   --> src/encryption.rs:88:63
[INFO] [stdout]    |
[INFO] [stdout] 88 |             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout]    |                                                               ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 88 -             _ => return Err(ArgonParseError::StringMatchError((string.to_string()))),
[INFO] [stdout] 88 +             _ => return Err(ArgonParseError::StringMatchError(string.to_string())),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/encryption.rs:147:34
[INFO] [stdout]     |
[INFO] [stdout] 147 |     let encryption_data_exists = (wallet.encryption_enabled == true && wallet.encryption_data.is_some());
[INFO] [stdout]     |                                  ^                                                                     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 147 -     let encryption_data_exists = (wallet.encryption_enabled == true && wallet.encryption_data.is_some());
[INFO] [stdout] 147 +     let encryption_data_exists = wallet.encryption_enabled == true && wallet.encryption_data.is_some();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bip39::Mnemonic`
[INFO] [stdout]  --> src/database.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bip39::Mnemonic;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::cursor`
[INFO] [stdout]  --> src/database.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crossterm::cursor;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/database.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 |     if (wallet.encryption_enabled) {
[INFO] [stdout]    |        ^                         ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 76 -     if (wallet.encryption_enabled) {
[INFO] [stdout] 76 +     if wallet.encryption_enabled {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `aes_gcm::aes::cipher`
[INFO] [stdout]  --> src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use aes_gcm::aes::cipher;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Engine` and `engine::general_purpose`
[INFO] [stdout]  --> src/main.rs:8:14
[INFO] [stdout]   |
[INFO] [stdout] 8 | use base64::{engine::general_purpose, Engine};
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `xrpl::wallet::Wallet`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use xrpl::wallet::Wallet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `get_wallets_from_db` and `insert_wallet_into_db`
[INFO] [stdout]   --> src/main.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::database::{insert_wallet_into_db, get_wallets_from_db};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wallet_functionality::TXRPWallet`
[INFO] [stdout]   --> src/main.rs:11:44
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::{encryption::encrypt_plaintext, wallet_functionality::TXRPWallet};
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invalid_wallet_err`
[INFO] [stdout]   --> src/wallet_functionality.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Err(invalid_wallet_err) => return Err(format!("Error: The seed provided isn't a valid XRP wallet seed.").into()),
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_invalid_wallet_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invalid_response`
[INFO] [stdout]    --> src/wallet_functionality.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |         Err(invalid_response) => return Err(format!("Error getting response from transaction.").into())
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_invalid_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet`
[INFO] [stdout]    --> src/menu_navigation.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                 let wallet = &wallets[index];
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invalid_wallet`
[INFO] [stdout]    --> src/menu_navigation.rs:283:21
[INFO] [stdout]     |
[INFO] [stdout] 283 |                 Err(invalid_wallet) => {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_invalid_wallet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `seed` is never read
[INFO] [stdout]    --> src/menu_navigation.rs:220:28
[INFO] [stdout]     |
[INFO] [stdout] 220 |             let mut seed = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 223 |                     seed = wallet_from_valid_seet.seed;
[INFO] [stdout]     |                     ---- `seed` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/encryption.rs:163:21
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 Err(error) => {
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named struct `Error`
[INFO] [stdout]     |
[INFO] [stdout] 163 -                 Err(error) => {
[INFO] [stdout] 163 +                 Err(aes_gcm::Error) => {
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 Err(_error) => {
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/database.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut transaction = connection.transaction().expect("Error initializing transaction."); // atomic: wallet + encryptiondata tog...
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/database.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let id: u16 = row.get(0).expect("Error: DB row has no ID.");
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/database.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let mut connection = get_db_connection();
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/wallet_functionality.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl TXRPWallet {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn encrypt(&self, password: &str) -> Result<TXRPWallet, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn decrypt(&self, password: &str) -> Result<TXRPWallet, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn view_balance_of_address(address: &str) -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn view_balance(&self) -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn get_sequence(&self) -> Result<u64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |      pub fn get_sequence_of_address(address: &str) -> Result<u64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn get_last_xrp_ledger_index(advance: u32) -> Result<u32, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub fn drops_to_xrp(drops: f64) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub fn xrp_to_drops(xrp_amount: f64) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn get_ledger_minimum_fee() -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub fn get_open_ledger_fee() -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn send_xrp(&self, amount_in_drops: u32, destination: &str) -> Result<String, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn to_json(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn from_json(json_wallet: &str) -> TXRPWallet {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_xrp_wallet_without_mnemonic_or_seed` is never used
[INFO] [stdout]    --> src/wallet_functionality.rs:318:8
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub fn generate_xrp_wallet_without_mnemonic_or_seed(word_amount: Option<usize>) -> Wallet {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserOptions` is never constructed
[INFO] [stdout]  --> src/menu_navigation.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct UserOptions {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FeePreference` is never used
[INFO] [stdout]   --> src/menu_navigation.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum FeePreference {
[INFO] [stdout]    |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_key_from_password_and_salt_and_encryption_data` is never used
[INFO] [stdout]    --> src/encryption.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn create_key_from_password_and_salt_and_encryption_data(password: &str, salt: &[u8], encryption_data: &EncryptionData) -> [u8; 32] {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_wallet` is never used
[INFO] [stdout]    --> src/encryption.rs:146:8
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn decrypt_wallet(wallet: TXRPWallet, password: &str) -> Result<TXRPWallet, Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_ciphertext` is never used
[INFO] [stdout]    --> src/encryption.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub fn decrypt_ciphertext(ciphertext: &str, password: &str, salt: &[u8], nonce: &[u8]) -> Result<String, aes_gcm::Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_ciphertext_from_encryption_data` is never used
[INFO] [stdout]    --> src/encryption.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn decrypt_ciphertext_from_encryption_data(ciphertext: &str, password: &str, salt: &[u8], nonce:&[u8], encryption_data: &Encryp...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DBError` is never used
[INFO] [stdout]   --> src/database.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum DBError {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attempt_test_data_insertion` is never used
[INFO] [stdout]    --> src/database.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn attempt_test_data_insertion() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CLIENT` is never used
[INFO] [stdout]  --> src/requests_io.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | static CLIENT: OnceLock<Client> = OnceLock::new();
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `http_client` is never used
[INFO] [stdout]  --> src/requests_io.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn http_client() -> &'static Client {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `xrp_ledger_call` is never used
[INFO] [stdout]   --> src/requests_io.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn xrp_ledger_call(method: &str, parameters: Value) -> Result<Value, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invalid_wallet_err`
[INFO] [stdout]   --> src/wallet_functionality.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |             Err(invalid_wallet_err) => return Err(format!("Error: The seed provided isn't a valid XRP wallet seed.").into()),
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_invalid_wallet_err`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invalid_response`
[INFO] [stdout]    --> src/wallet_functionality.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |         Err(invalid_response) => return Err(format!("Error getting response from transaction.").into())
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_invalid_response`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wallet`
[INFO] [stdout]    --> src/menu_navigation.rs:183:21
[INFO] [stdout]     |
[INFO] [stdout] 183 |                 let wallet = &wallets[index];
[INFO] [stdout]     |                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invalid_wallet`
[INFO] [stdout]    --> src/menu_navigation.rs:283:21
[INFO] [stdout]     |
[INFO] [stdout] 283 |                 Err(invalid_wallet) => {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_invalid_wallet`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `seed` is never read
[INFO] [stdout]    --> src/menu_navigation.rs:220:28
[INFO] [stdout]     |
[INFO] [stdout] 220 |             let mut seed = String::new();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 223 |                     seed = wallet_from_valid_seet.seed;
[INFO] [stdout]     |                     ---- `seed` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]    --> src/encryption.rs:163:21
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 Err(error) => {
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: you might have meant to pattern match on the similarly named struct `Error`
[INFO] [stdout]     |
[INFO] [stdout] 163 -                 Err(error) => {
[INFO] [stdout] 163 +                 Err(aes_gcm::Error) => {
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 163 |                 Err(_error) => {
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/database.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     let mut transaction = connection.transaction().expect("Error initializing transaction."); // atomic: wallet + encryptiondata tog...
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/database.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let id: u16 = row.get(0).expect("Error: DB row has no ID.");
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/database.rs:120:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     let mut connection = get_db_connection();
[INFO] [stdout]     |         ----^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/wallet_functionality.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl TXRPWallet {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn encrypt(&self, password: &str) -> Result<TXRPWallet, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub fn decrypt(&self, password: &str) -> Result<TXRPWallet, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn view_balance_of_address(address: &str) -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     pub fn view_balance(&self) -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub fn get_sequence(&self) -> Result<u64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 186 |      pub fn get_sequence_of_address(address: &str) -> Result<u64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn get_last_xrp_ledger_index(advance: u32) -> Result<u32, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub fn drops_to_xrp(drops: f64) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub fn xrp_to_drops(xrp_amount: f64) -> f64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn get_ledger_minimum_fee() -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     pub fn get_open_ledger_fee() -> Result<f64, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |     pub fn send_xrp(&self, amount_in_drops: u32, destination: &str) -> Result<String, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     pub fn to_json(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn from_json(json_wallet: &str) -> TXRPWallet {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_xrp_wallet_without_mnemonic_or_seed` is never used
[INFO] [stdout]    --> src/wallet_functionality.rs:318:8
[INFO] [stdout]     |
[INFO] [stdout] 318 | pub fn generate_xrp_wallet_without_mnemonic_or_seed(word_amount: Option<usize>) -> Wallet {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserOptions` is never constructed
[INFO] [stdout]  --> src/menu_navigation.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct UserOptions {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FeePreference` is never used
[INFO] [stdout]   --> src/menu_navigation.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum FeePreference {
[INFO] [stdout]    |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_key_from_password_and_salt_and_encryption_data` is never used
[INFO] [stdout]    --> src/encryption.rs:136:4
[INFO] [stdout]     |
[INFO] [stdout] 136 | fn create_key_from_password_and_salt_and_encryption_data(password: &str, salt: &[u8], encryption_data: &EncryptionData) -> [u8; 32] {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_wallet` is never used
[INFO] [stdout]    --> src/encryption.rs:146:8
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn decrypt_wallet(wallet: TXRPWallet, password: &str) -> Result<TXRPWallet, Box<dyn std::error::Error>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_ciphertext` is never used
[INFO] [stdout]    --> src/encryption.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 195 | pub fn decrypt_ciphertext(ciphertext: &str, password: &str, salt: &[u8], nonce: &[u8]) -> Result<String, aes_gcm::Error> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_ciphertext_from_encryption_data` is never used
[INFO] [stdout]    --> src/encryption.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn decrypt_ciphertext_from_encryption_data(ciphertext: &str, password: &str, salt: &[u8], nonce:&[u8], encryption_data: &Encryp...
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `DBError` is never used
[INFO] [stdout]   --> src/database.rs:11:6
[INFO] [stdout]    |
[INFO] [stdout] 11 | enum DBError {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attempt_test_data_insertion` is never used
[INFO] [stdout]    --> src/database.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn attempt_test_data_insertion() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CLIENT` is never used
[INFO] [stdout]  --> src/requests_io.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | static CLIENT: OnceLock<Client> = OnceLock::new();
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `http_client` is never used
[INFO] [stdout]  --> src/requests_io.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn http_client() -> &'static Client {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `xrp_ledger_call` is never used
[INFO] [stdout]   --> src/requests_io.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn xrp_ledger_call(method: &str, parameters: Value) -> Result<Value, Box<dyn std::error::Error>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 00s
[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" "12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597", kill_on_drop: false }`
[INFO] [stdout] 12fda0f920e2d86b4ab1b9d92d3710b556d460c766fea88b112949dbbf2c4597
