[INFO] cloning repository https://github.com/dotIndigo/bomanis-bank [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dotIndigo/bomanis-bank" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FdotIndigo%2Fbomanis-bank", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FdotIndigo%2Fbomanis-bank'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 42b80135e7e16532af7241deb47060f1e4f3f024 [INFO] checking dotIndigo/bomanis-bank against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FdotIndigo%2Fbomanis-bank" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/dotIndigo/bomanis-bank [INFO] finished tweaking git repo https://github.com/dotIndigo/bomanis-bank [INFO] tweaked toml for git repo https://github.com/dotIndigo/bomanis-bank written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/dotIndigo/bomanis-bank on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/dotIndigo/bomanis-bank 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" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ad37e268fd6cc4b28282b4ab5a392fd7bea0d8d0fcc16f8e82ba31787984f09b [INFO] running `Command { std: "docker" "start" "-a" "ad37e268fd6cc4b28282b4ab5a392fd7bea0d8d0fcc16f8e82ba31787984f09b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ad37e268fd6cc4b28282b4ab5a392fd7bea0d8d0fcc16f8e82ba31787984f09b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ad37e268fd6cc4b28282b4ab5a392fd7bea0d8d0fcc16f8e82ba31787984f09b", kill_on_drop: false }` [INFO] [stdout] ad37e268fd6cc4b28282b4ab5a392fd7bea0d8d0fcc16f8e82ba31787984f09b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 98d9ee578d26552973624e61752984509447fffc2b85bf50fb02a538a4a69701 [INFO] running `Command { std: "docker" "start" "-a" "98d9ee578d26552973624e61752984509447fffc2b85bf50fb02a538a4a69701", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking regex-syntax v0.7.3 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking iana-time-zone v0.1.57 [INFO] [stderr] Compiling num-traits v0.2.15 [INFO] [stderr] Checking aho-corasick v1.0.2 [INFO] [stderr] Checking getrandom v0.2.10 [INFO] [stderr] Checking time v0.1.45 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking chrono v0.4.26 [INFO] [stderr] Checking regex-automata v0.3.2 [INFO] [stderr] Checking regex v1.9.1 [INFO] [stderr] Checking bomanis_bank v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/bomanis_bank/account.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ref` [INFO] [stdout] --> src/bomanis_bank/account.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::{RefCell, Ref}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `account::BankAccount` [INFO] [stdout] --> src/bomanis_bank/mod.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub use account::BankAccount; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/bomanis_bank/session.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/bomanis_bank/database.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/bomanis_bank/database.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/bomanis_bank/account.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ref` [INFO] [stdout] --> src/bomanis_bank/account.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::{RefCell, Ref}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `account::BankAccount` [INFO] [stdout] --> src/bomanis_bank/mod.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub use account::BankAccount; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/bomanis_bank/session.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/bomanis_bank/database.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/bomanis_bank/database.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `user_id` is never read [INFO] [stdout] --> src/bomanis_bank/session.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | let mut user_id: String = String::new(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `password` is assigned to, but never used [INFO] [stdout] --> src/bomanis_bank/session.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | let mut password: String = String::new(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_password` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `password` is never read [INFO] [stdout] --> src/bomanis_bank/session.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | password = get_user_input_as_str(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bomanis_bank/session.rs:279:21 [INFO] [stdout] | [INFO] [stdout] 279 | let mut money_account = ptr_money_account.borrow(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Length` is never constructed [INFO] [stdout] --> src/bomanis_bank/account.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum MoneyAccountType { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | Length, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MoneyAccountType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `linked_bank_account` is never read [INFO] [stdout] --> src/bomanis_bank/account.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct MoneyAccount { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 21 | pub linked_bank_account: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_account_number`, `get_balance`, `set_balance`, and `get_bank_account` are never used [INFO] [stdout] --> src/bomanis_bank/account.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl MoneyAccount { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn get_account_number(self: &Self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn get_balance(self: &Self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn set_balance(self: &mut Self, new_balance: i32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn get_bank_account(self: &Self) -> Rc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Exit` and `Length` are never constructed [INFO] [stdout] --> src/bomanis_bank/account.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 71 | pub enum UserActions { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 78 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 79 | Length, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `dob` and `password` are never read [INFO] [stdout] --> src/bomanis_bank/account.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 97 | pub struct BankAccount { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 100 | pub dob: NaiveDate, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub password: String, //TODO make hash [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_associated_money_account` is never used [INFO] [stdout] --> src/bomanis_bank/account.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl BankAccount { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn get_associated_money_account(self: &Self, id: MoneyAccountID) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `action_show_balance` and `action_withdraw_overdraft` are never used [INFO] [stdout] --> src/bomanis_bank/session.rs:260:8 [INFO] [stdout] | [INFO] [stdout] 22 | impl Session { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 260 | fn action_show_balance(self: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | fn action_withdraw_overdraft(self: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_bank_account_with_id_u32`, `get_bank_account_with_id_string`, `get_money_account_with_id_u32`, `get_money_account_with_id_string`, and `get_money_accounts_with_ids` are never used [INFO] [stdout] --> src/bomanis_bank/database.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl DatabaseHandler { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn get_bank_account_with_id_u32(self: &Self, id: BankAccountID) -> Result>, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn get_bank_account_with_id_string(self: &Self, id: String) -> Result>, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn get_money_account_with_id_u32(self: &Self, id: MoneyAccountID) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn get_money_account_with_id_string(self: &Self, id: String) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn get_money_accounts_with_ids(self: &Self, ids: Vec) -> Vec>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LockedAccount` is never constructed [INFO] [stdout] --> src/bomanis_bank/errors.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 1 | pub enum SessionError { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] 2 | FailedLogin, [INFO] [stdout] 3 | LockedAccount, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/bomanis_bank/errors.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl SessionError { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 8 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Locked` and `Unknown` are never constructed [INFO] [stdout] --> src/bomanis_bank/errors.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum BalanceError { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 18 | NotEnough, [INFO] [stdout] 19 | Locked, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | Unknown, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/bomanis_bank/errors.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 23 | impl BalanceError { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 24 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | session.start(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 5 | let _ = session.start(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `user_id` is never read [INFO] [stdout] --> src/bomanis_bank/session.rs:33:17 [INFO] [stdout] | [INFO] [stdout] 33 | let mut user_id: String = String::new(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `password` is assigned to, but never used [INFO] [stdout] --> src/bomanis_bank/session.rs:34:17 [INFO] [stdout] | [INFO] [stdout] 34 | let mut password: String = String::new(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_password` instead [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `password` is never read [INFO] [stdout] --> src/bomanis_bank/session.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | password = get_user_input_as_str(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bomanis_bank/session.rs:279:21 [INFO] [stdout] | [INFO] [stdout] 279 | let mut money_account = ptr_money_account.borrow(); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Length` is never constructed [INFO] [stdout] --> src/bomanis_bank/account.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum MoneyAccountType { [INFO] [stdout] | ---------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | Length, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MoneyAccountType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `linked_bank_account` is never read [INFO] [stdout] --> src/bomanis_bank/account.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct MoneyAccount { [INFO] [stdout] | ------------ field in this struct [INFO] [stdout] 21 | pub linked_bank_account: Weak>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_account_number`, `get_balance`, `set_balance`, and `get_bank_account` are never used [INFO] [stdout] --> src/bomanis_bank/account.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl MoneyAccount { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn get_account_number(self: &Self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn get_balance(self: &Self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn set_balance(self: &mut Self, new_balance: i32) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn get_bank_account(self: &Self) -> Rc> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Exit` and `Length` are never constructed [INFO] [stdout] --> src/bomanis_bank/account.rs:78:5 [INFO] [stdout] | [INFO] [stdout] 71 | pub enum UserActions { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 78 | Exit, [INFO] [stdout] | ^^^^ [INFO] [stdout] 79 | Length, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `dob` and `password` are never read [INFO] [stdout] --> src/bomanis_bank/account.rs:100:9 [INFO] [stdout] | [INFO] [stdout] 97 | pub struct BankAccount { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 100 | pub dob: NaiveDate, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 104 | pub password: String, //TODO make hash [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_associated_money_account` is never used [INFO] [stdout] --> src/bomanis_bank/account.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl BankAccount { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn get_associated_money_account(self: &Self, id: MoneyAccountID) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `action_show_balance` and `action_withdraw_overdraft` are never used [INFO] [stdout] --> src/bomanis_bank/session.rs:260:8 [INFO] [stdout] | [INFO] [stdout] 22 | impl Session { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 260 | fn action_show_balance(self: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | fn action_withdraw_overdraft(self: &Self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_bank_account_with_id_u32`, `get_bank_account_with_id_string`, `get_money_account_with_id_u32`, `get_money_account_with_id_string`, and `get_money_accounts_with_ids` are never used [INFO] [stdout] --> src/bomanis_bank/database.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl DatabaseHandler { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn get_bank_account_with_id_u32(self: &Self, id: BankAccountID) -> Result>, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn get_bank_account_with_id_string(self: &Self, id: String) -> Result>, ()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn get_money_account_with_id_u32(self: &Self, id: MoneyAccountID) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn get_money_account_with_id_string(self: &Self, id: String) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn get_money_accounts_with_ids(self: &Self, ids: Vec) -> Vec>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LockedAccount` is never constructed [INFO] [stdout] --> src/bomanis_bank/errors.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 1 | pub enum SessionError { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] 2 | FailedLogin, [INFO] [stdout] 3 | LockedAccount, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/bomanis_bank/errors.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl SessionError { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 8 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Locked` and `Unknown` are never constructed [INFO] [stdout] --> src/bomanis_bank/errors.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 17 | pub enum BalanceError { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 18 | NotEnough, [INFO] [stdout] 19 | Locked, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 20 | Unknown, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `as_str` is never used [INFO] [stdout] --> src/bomanis_bank/errors.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 23 | impl BalanceError { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 24 | fn as_str(&self) -> &'static str { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | session.start(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 5 | let _ = session.start(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.67s [INFO] running `Command { std: "docker" "inspect" "98d9ee578d26552973624e61752984509447fffc2b85bf50fb02a538a4a69701", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "98d9ee578d26552973624e61752984509447fffc2b85bf50fb02a538a4a69701", kill_on_drop: false }` [INFO] [stdout] 98d9ee578d26552973624e61752984509447fffc2b85bf50fb02a538a4a69701