[INFO] cloning repository https://github.com/ruckus-one/personal-finance-app
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ruckus-one/personal-finance-app" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fruckus-one%2Fpersonal-finance-app", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fruckus-one%2Fpersonal-finance-app'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 95438d56815be033053865795e9d56edf4e658c0
[INFO] checking ruckus-one/personal-finance-app against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fruckus-one%2Fpersonal-finance-app" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ruckus-one/personal-finance-app
[INFO] finished tweaking git repo https://github.com/ruckus-one/personal-finance-app
[INFO] tweaked toml for git repo https://github.com/ruckus-one/personal-finance-app written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ruckus-one/personal-finance-app on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ruckus-one/personal-finance-app 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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936
[INFO] running `Command { std: "docker" "start" "47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936", 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" "47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936", 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" "47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling cc v1.0.104
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking http v1.1.0
[INFO] [stderr]    Compiling httparse v1.9.4
[INFO] [stderr]    Compiling openssl v0.10.64
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking tinyvec v1.6.1
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking tower-layer v0.3.2
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]     Checking signal-hook v0.3.17
[INFO] [stderr]     Checking tower-service v0.3.2
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking unicode-bidi v0.3.15
[INFO] [stderr]    Compiling unicode-segmentation v1.11.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking linux-raw-sys v0.4.14
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking tokio v1.38.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.3
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking fastrand v2.1.0
[INFO] [stderr]     Checking rustls-pki-types v1.7.0
[INFO] [stderr]    Compiling serde_json v1.0.120
[INFO] [stderr]     Checking regex-syntax v0.8.4
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking crossterm v0.25.0
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking fuzzy-matcher v0.3.7
[INFO] [stderr]     Checking rustls-pemfile v2.1.2
[INFO] [stderr]     Checking unicode-normalization v0.1.23
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking newline-converter v0.3.0
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking sync_wrapper v1.0.1
[INFO] [stderr]     Checking iana-time-zone v0.1.60
[INFO] [stderr]     Checking dyn-clone v1.0.17
[INFO] [stderr]     Checking shell-words v1.1.0
[INFO] [stderr]     Checking crossterm v0.27.0
[INFO] [stderr]    Compiling syn v2.0.68
[INFO] [stderr]     Checking http-body v1.0.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking quick-xml v0.35.0
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking inquire v0.7.5
[INFO] [stderr]    Compiling openssl-sys v0.9.102
[INFO] [stderr]     Checking chrono v0.4.38
[INFO] [stderr]     Checking regex-automata v0.4.7
[INFO] [stderr]     Checking url v2.5.2
[INFO] [stderr]    Compiling native-tls v0.2.12
[INFO] [stderr]     Checking tempfile v3.10.1
[INFO] [stderr]     Checking http-body-util v0.1.2
[INFO] [stderr]     Checking regex v1.10.5
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]     Checking tokio-util v0.7.11
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling serde_derive v1.0.203
[INFO] [stderr]    Compiling thiserror-impl v1.0.61
[INFO] [stderr]    Compiling uuid-macro-internal v1.9.1
[INFO] [stderr]     Checking h2 v0.4.5
[INFO] [stderr]     Checking uuid v1.9.1
[INFO] [stderr]     Checking structopt v0.3.26
[INFO] [stderr]     Checking thiserror v1.0.61
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]     Checking dialoguer v0.11.0
[INFO] [stderr]     Checking serde v1.0.203
[INFO] [stderr]     Checking hyper v1.4.0
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper-util v0.1.6
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking reqwest v0.12.5
[INFO] [stderr]     Checking personal-finance-app v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/account.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     use super::*;
[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: `self`
[INFO] [stdout]   --> src/currency_rates.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 |     use std::fs::{self};
[INFO] [stdout]    |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::currency_rates::extract_rates_from_xml`
[INFO] [stdout]   --> src/currency_rates.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     use crate::currency_rates::extract_rates_from_xml;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:69:75
[INFO] [stdout]    |
[INFO] [stdout] 69 |         wallet.add_account(Account::new("Bank account #1".into(), 123.45, Currency::PLN.into()));
[INFO] [stdout]    |                                                                           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 69 -         wallet.add_account(Account::new("Bank account #1".into(), 123.45, Currency::PLN.into()));
[INFO] [stdout] 69 +         wallet.add_account(Account::new("Bank account #1".into(), 123.45, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 69 -         wallet.add_account(Account::new("Bank account #1".into(), 123.45, Currency::PLN.into()));
[INFO] [stdout] 69 +         wallet.add_account(Account::new("Bank account #1".into(), 123.45, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:80:70
[INFO] [stdout]    |
[INFO] [stdout] 80 |         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::PLN.into()));
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 80 -         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::PLN.into()));
[INFO] [stdout] 80 +         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 80 -         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::PLN.into()));
[INFO] [stdout] 80 +         wallet.add_account(Account::new("Account #1".into(), 123.45, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:81:69
[INFO] [stdout]    |
[INFO] [stdout] 81 |         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 81 -         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN.into()));
[INFO] [stdout] 81 +         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 81 -         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN.into()));
[INFO] [stdout] 81 +         wallet.add_account(Account::new("Account #2".into(), 67.89, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:82:69
[INFO] [stdout]    |
[INFO] [stdout] 82 |         wallet.add_account(Account::new("Account #2".into(), 782.9, Currency::PLN.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 82 -         wallet.add_account(Account::new("Account #2".into(), 782.9, Currency::PLN.into()));
[INFO] [stdout] 82 +         wallet.add_account(Account::new("Account #2".into(), 782.9, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 82 -         wallet.add_account(Account::new("Account #2".into(), 782.9, Currency::PLN.into()));
[INFO] [stdout] 82 +         wallet.add_account(Account::new("Account #2".into(), 782.9, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:83:69
[INFO] [stdout]    |
[INFO] [stdout] 83 |         wallet.add_account(Account::new("Account #2".into(), 12.97, Currency::PLN.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 83 -         wallet.add_account(Account::new("Account #2".into(), 12.97, Currency::PLN.into()));
[INFO] [stdout] 83 +         wallet.add_account(Account::new("Account #2".into(), 12.97, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 83 -         wallet.add_account(Account::new("Account #2".into(), 12.97, Currency::PLN.into()));
[INFO] [stdout] 83 +         wallet.add_account(Account::new("Account #2".into(), 12.97, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:84:70
[INFO] [stdout]    |
[INFO] [stdout] 84 |         wallet.add_account(Account::new("Account #2".into(), 123.97, Currency::GBP.into()));
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 84 -         wallet.add_account(Account::new("Account #2".into(), 123.97, Currency::GBP.into()));
[INFO] [stdout] 84 +         wallet.add_account(Account::new("Account #2".into(), 123.97, Currency::GBP));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 84 -         wallet.add_account(Account::new("Account #2".into(), 123.97, Currency::GBP.into()));
[INFO] [stdout] 84 +         wallet.add_account(Account::new("Account #2".into(), 123.97, <currency::Currency as Into<_>>::into(Currency::GBP)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:85:69
[INFO] [stdout]    |
[INFO] [stdout] 85 |         wallet.add_account(Account::new("Account #2".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 85 -         wallet.add_account(Account::new("Account #2".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 85 +         wallet.add_account(Account::new("Account #2".into(), 60.00, Currency::GBP));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 85 -         wallet.add_account(Account::new("Account #2".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 85 +         wallet.add_account(Account::new("Account #2".into(), 60.00, <currency::Currency as Into<_>>::into(Currency::GBP)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:94:70
[INFO] [stdout]    |
[INFO] [stdout] 94 |         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::USD.into()));
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 94 -         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::USD.into()));
[INFO] [stdout] 94 +         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::USD));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 94 -         wallet.add_account(Account::new("Account #1".into(), 123.45, Currency::USD.into()));
[INFO] [stdout] 94 +         wallet.add_account(Account::new("Account #1".into(), 123.45, <currency::Currency as Into<_>>::into(Currency::USD)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:95:69
[INFO] [stdout]    |
[INFO] [stdout] 95 |         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 95 -         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN.into()));
[INFO] [stdout] 95 +         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 95 -         wallet.add_account(Account::new("Account #2".into(), 67.89, Currency::PLN.into()));
[INFO] [stdout] 95 +         wallet.add_account(Account::new("Account #2".into(), 67.89, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:96:69
[INFO] [stdout]    |
[INFO] [stdout] 96 |         wallet.add_account(Account::new("Account #3".into(), 782.9, Currency::PLN.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 96 -         wallet.add_account(Account::new("Account #3".into(), 782.9, Currency::PLN.into()));
[INFO] [stdout] 96 +         wallet.add_account(Account::new("Account #3".into(), 782.9, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 96 -         wallet.add_account(Account::new("Account #3".into(), 782.9, Currency::PLN.into()));
[INFO] [stdout] 96 +         wallet.add_account(Account::new("Account #3".into(), 782.9, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:97:69
[INFO] [stdout]    |
[INFO] [stdout] 97 |         wallet.add_account(Account::new("Account #4".into(), 12.97, Currency::PLN.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 97 -         wallet.add_account(Account::new("Account #4".into(), 12.97, Currency::PLN.into()));
[INFO] [stdout] 97 +         wallet.add_account(Account::new("Account #4".into(), 12.97, Currency::PLN));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 97 -         wallet.add_account(Account::new("Account #4".into(), 12.97, Currency::PLN.into()));
[INFO] [stdout] 97 +         wallet.add_account(Account::new("Account #4".into(), 12.97, <currency::Currency as Into<_>>::into(Currency::PLN)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:98:70
[INFO] [stdout]    |
[INFO] [stdout] 98 |         wallet.add_account(Account::new("Account #5".into(), 123.97, Currency::GBP.into()));
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 98 -         wallet.add_account(Account::new("Account #5".into(), 123.97, Currency::GBP.into()));
[INFO] [stdout] 98 +         wallet.add_account(Account::new("Account #5".into(), 123.97, Currency::GBP));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 98 -         wallet.add_account(Account::new("Account #5".into(), 123.97, Currency::GBP.into()));
[INFO] [stdout] 98 +         wallet.add_account(Account::new("Account #5".into(), 123.97, <currency::Currency as Into<_>>::into(Currency::GBP)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]   --> src/wallet.rs:99:69
[INFO] [stdout]    |
[INFO] [stdout] 99 |         wallet.add_account(Account::new("Account #6".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]    |
[INFO] [stdout] 99 -         wallet.add_account(Account::new("Account #6".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 99 +         wallet.add_account(Account::new("Account #6".into(), 60.00, Currency::GBP));
[INFO] [stdout]    |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]    |
[INFO] [stdout] 99 -         wallet.add_account(Account::new("Account #6".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 99 +         wallet.add_account(Account::new("Account #6".into(), 60.00, <currency::Currency as Into<_>>::into(Currency::GBP)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]    --> src/wallet.rs:100:69
[INFO] [stdout]     |
[INFO] [stdout] 100 |         wallet.add_account(Account::new("Account #7".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 100 -         wallet.add_account(Account::new("Account #7".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 100 +         wallet.add_account(Account::new("Account #7".into(), 60.00, Currency::GBP));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 100 -         wallet.add_account(Account::new("Account #7".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 100 +         wallet.add_account(Account::new("Account #7".into(), 60.00, <currency::Currency as Into<_>>::into(Currency::GBP)));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]    --> src/wallet.rs:101:69
[INFO] [stdout]     |
[INFO] [stdout] 101 |         wallet.add_account(Account::new("Account #8".into(), 60.00, Currency::USD.into()));
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 101 -         wallet.add_account(Account::new("Account #8".into(), 60.00, Currency::USD.into()));
[INFO] [stdout] 101 +         wallet.add_account(Account::new("Account #8".into(), 60.00, Currency::USD));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 101 -         wallet.add_account(Account::new("Account #8".into(), 60.00, Currency::USD.into()));
[INFO] [stdout] 101 +         wallet.add_account(Account::new("Account #8".into(), 60.00, <currency::Currency as Into<_>>::into(Currency::USD)));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]    --> src/wallet.rs:102:69
[INFO] [stdout]     |
[INFO] [stdout] 102 |         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 102 -         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 102 +         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::GBP));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 102 -         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::GBP.into()));
[INFO] [stdout] 102 +         wallet.add_account(Account::new("Account #9".into(), 60.00, <currency::Currency as Into<_>>::into(Currency::GBP)));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `currency::Currency`
[INFO] [stdout]    --> src/wallet.rs:103:69
[INFO] [stdout]     |
[INFO] [stdout] 103 |         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::NOK.into()));
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 103 -         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::NOK.into()));
[INFO] [stdout] 103 +         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::NOK));
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 103 -         wallet.add_account(Account::new("Account #9".into(), 60.00, Currency::NOK.into()));
[INFO] [stdout] 103 +         wallet.add_account(Account::new("Account #9".into(), 60.00, <currency::Currency as Into<_>>::into(Currency::NOK)));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `personal-finance-app` (bin "personal-finance-app" test) due to 17 previous errors
[INFO] [stderr] warning: unused dependency `inquire`
[INFO] [stderr]  --> Cargo.toml:5:1
[INFO] [stderr]   |
[INFO] [stderr] 5 | inquire = "0.7.5"
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `inquire`
[INFO] [stderr] warning: `personal-finance-app` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "inspect" "47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936", kill_on_drop: false }`
[INFO] [stdout] 47f941bcde4a21f2fdac8bd49c426bde61fae21c7f16d8dd0b1f46b39f3b3936
