[INFO] cloning repository https://github.com/MrZLeo/TourBookingSystem
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MrZLeo/TourBookingSystem" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrZLeo%2FTourBookingSystem", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrZLeo%2FTourBookingSystem'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fbf67402bd00a0fc4fd3330188fda3a841b80fef
[INFO] checking MrZLeo/TourBookingSystem against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMrZLeo%2FTourBookingSystem" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/MrZLeo/TourBookingSystem
[INFO] finished tweaking git repo https://github.com/MrZLeo/TourBookingSystem
[INFO] tweaked toml for git repo https://github.com/MrZLeo/TourBookingSystem written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/MrZLeo/TourBookingSystem on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/MrZLeo/TourBookingSystem already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded blake2b_simd v0.5.11
[INFO] [stderr]   Downloaded dirs v1.0.5
[INFO] [stderr]   Downloaded redox_users v0.3.5
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.5
[INFO] [stderr]   Downloaded term v0.5.2
[INFO] [stderr]   Downloaded native-tls v0.2.8
[INFO] [stderr]   Downloaded prettytable-rs v0.8.0
[INFO] [stderr]   Downloaded bufstream v0.1.4
[INFO] [stderr]   Downloaded time-macros-impl v0.1.2
[INFO] [stderr]   Downloaded named_pipe v0.4.1
[INFO] [stderr]   Downloaded pkg-config v0.3.22
[INFO] [stderr]   Downloaded io-enum v0.2.6
[INFO] [stderr]   Downloaded pem v0.8.3
[INFO] [stderr]   Downloaded lru v0.6.6
[INFO] [stderr]   Downloaded security-framework-sys v2.4.2
[INFO] [stderr]   Downloaded mysql_common v0.24.1
[INFO] [stderr]   Downloaded derive_utils v0.11.2
[INFO] [stderr]   Downloaded bigdecimal v0.1.2
[INFO] [stderr]   Downloaded csv-core v0.1.10
[INFO] [stderr]   Downloaded proc-macro2 v1.0.32
[INFO] [stderr]   Downloaded serde_derive v1.0.130
[INFO] [stderr]   Downloaded quote v1.0.10
[INFO] [stderr]   Downloaded lexical v5.2.2
[INFO] [stderr]   Downloaded bumpalo v3.8.0
[INFO] [stderr]   Downloaded serde_json v1.0.70
[INFO] [stderr]   Downloaded serde v1.0.130
[INFO] [stderr]   Downloaded rust_decimal v1.17.0
[INFO] [stderr]   Downloaded time v0.2.27
[INFO] [stderr]   Downloaded mysql v20.1.0
[INFO] [stderr]   Downloaded openssl-sys v0.9.70
[INFO] [stderr]   Downloaded nix v0.19.1
[INFO] [stderr]   Downloaded syn v1.0.81
[INFO] [stderr]   Downloaded rust-argon2 v0.8.3
[INFO] [stderr]   Downloaded typenum v1.14.0
[INFO] [stderr]   Downloaded const_fn v0.4.8
[INFO] [stderr]   Downloaded standback v0.2.17
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.15
[INFO] [stderr]   Downloaded bstr v0.2.17
[INFO] [stderr]   Downloaded core-foundation v0.9.2
[INFO] [stderr]   Downloaded security-framework v2.4.2
[INFO] [stderr]   Downloaded twox-hash v1.6.1
[INFO] [stderr]   Downloaded libc v0.2.107
[INFO] [stderr]   Downloaded lexical-core v0.7.6
[INFO] [stderr]   Downloaded csv v1.1.6
[INFO] [stderr]   Downloaded libz-sys v1.1.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ef0631a298e63ce1b67abc2483c908b01bfa5cfb5230aae0be97959b9a06448d
[INFO] running `Command { std: "docker" "start" "-a" "ef0631a298e63ce1b67abc2483c908b01bfa5cfb5230aae0be97959b9a06448d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ef0631a298e63ce1b67abc2483c908b01bfa5cfb5230aae0be97959b9a06448d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ef0631a298e63ce1b67abc2483c908b01bfa5cfb5230aae0be97959b9a06448d", kill_on_drop: false }`
[INFO] [stdout] ef0631a298e63ce1b67abc2483c908b01bfa5cfb5230aae0be97959b9a06448d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8684c18f27a64f1f867e2b521d4d99cf9349004b7108e83868a1178e2b7f4013
[INFO] running `Command { std: "docker" "start" "-a" "8684c18f27a64f1f867e2b521d4d99cf9349004b7108e83868a1178e2b7f4013", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.107
[INFO] [stderr]    Compiling cc v1.0.72
[INFO] [stderr]    Compiling pkg-config v0.3.22
[INFO] [stderr]    Compiling proc-macro2 v1.0.32
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling syn v1.0.81
[INFO] [stderr]    Compiling typenum v1.14.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.15
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling standback v0.2.17
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling ahash v0.7.6
[INFO] [stderr]     Checking byte-tools v0.3.1
[INFO] [stderr]     Checking itoa v0.4.8
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]    Compiling const_fn v0.4.8
[INFO] [stderr]    Compiling lexical-core v0.7.6
[INFO] [stderr]     Checking tinyvec v1.5.1
[INFO] [stderr]     Checking block-padding v0.1.5
[INFO] [stderr]    Compiling time v0.2.27
[INFO] [stderr]    Compiling serde_json v1.0.70
[INFO] [stderr]    Compiling openssl v0.10.38
[INFO] [stderr]     Checking matches v0.1.9
[INFO] [stderr]    Compiling io-enum v0.2.6
[INFO] [stderr]     Checking fake-simd v0.1.2
[INFO] [stderr]    Compiling native-tls v0.2.8
[INFO] [stderr]     Checking opaque-debug v0.2.3
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking unicode-bidi v0.3.7
[INFO] [stderr]     Checking form_urlencoded v1.0.1
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking base64 v0.13.0
[INFO] [stderr]    Compiling mysql v20.1.0
[INFO] [stderr]     Checking base64 v0.12.3
[INFO] [stderr]     Checking encode_unicode v0.3.6
[INFO] [stderr]     Checking bufstream v0.1.4
[INFO] [stderr]     Checking unicode-width v0.1.9
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]     Checking regex v1.5.4
[INFO] [stderr]    Compiling openssl-sys v0.9.70
[INFO] [stderr]    Compiling libz-sys v1.1.3
[INFO] [stderr]     Checking generic-array v0.12.4
[INFO] [stderr]     Checking unicode-normalization v0.1.19
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking nix v0.19.1
[INFO] [stderr]     Checking socket2 v0.3.19
[INFO] [stderr]     Checking flate2 v1.0.22
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking term v0.5.2
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking digest v0.8.1
[INFO] [stderr]     Checking block-buffer v0.7.3
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking lexical v5.2.2
[INFO] [stderr]     Checking sha2 v0.8.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking pem v0.8.3
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking lru v0.6.6
[INFO] [stderr]     Checking idna v0.2.3
[INFO] [stderr]     Checking twox-hash v1.6.1
[INFO] [stderr]     Checking url v2.2.2
[INFO] [stderr]     Checking rust_decimal v1.17.0
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]     Checking bigdecimal v0.1.2
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]    Compiling derive_utils v0.11.2
[INFO] [stderr]     Checking csv v1.1.6
[INFO] [stderr]    Compiling time-macros-impl v0.1.2
[INFO] [stderr]     Checking prettytable-rs v0.8.0
[INFO] [stderr]     Checking time-macros v0.1.1
[INFO] [stderr]     Checking mysql_common v0.24.1
[INFO] [stderr]     Checking TourBookingSystem v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `mysql::PooledConn`
[INFO] [stdout]  --> src/controller.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mysql::PooledConn;
[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: `Read`, `Stdin`, `Write`, `stdin`, and `stdout`
[INFO] [stdout]   --> src/controller.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{stdin, stdout, Read, Stdin, Write};
[INFO] [stdout]    |               ^^^^^  ^^^^^^  ^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PooledConn` and `params`
[INFO] [stdout]  --> src/flight.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use mysql::{params, PooledConn};
[INFO] [stdout]   |             ^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::reservation::Reservation`
[INFO] [stdout]  --> src/mysql_connection.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::reservation::Reservation;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `Transaction`
[INFO] [stdout]  --> src/mysql_connection.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use mysql::{params, Error, Pool, PooledConn, Transaction};
[INFO] [stdout]   |                     ^^^^^                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/mysql_connection.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/mysql_connection.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::task::Poll`
[INFO] [stdout]  --> src/mysql_connection.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::task::Poll;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MySQLConnection` and `read`
[INFO] [stdout]  --> src/view.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{read, MySQLConnection, ToRow};
[INFO] [stdout]   |             ^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Stdout` and `stdin`
[INFO] [stdout]  --> src/view.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{stdin, stdout, Stdout, Write};
[INFO] [stdout]   |               ^^^^^          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::view::*`
[INFO] [stdout]   --> src/lib.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::view::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Stdin`, `Write`, `stdin`, and `stdout`
[INFO] [stdout]   --> src/lib.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::io::{stdin, stdout, Stdin, Write};
[INFO] [stdout]    |               ^^^^^  ^^^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::thread::sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `io` and `time`
[INFO] [stdout]   --> src/lib.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::{io, time};
[INFO] [stdout]    |           ^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mysql::PooledConn`
[INFO] [stdout]  --> src/controller.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use mysql::PooledConn;
[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: `Read`, `Stdin`, `Write`, `stdin`, and `stdout`
[INFO] [stdout]   --> src/controller.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{stdin, stdout, Read, Stdin, Write};
[INFO] [stdout]    |               ^^^^^  ^^^^^^  ^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PooledConn` and `params`
[INFO] [stdout]  --> src/flight.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | use mysql::{params, PooledConn};
[INFO] [stdout]   |             ^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::reservation::Reservation`
[INFO] [stdout]  --> src/mysql_connection.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::reservation::Reservation;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Error` and `Transaction`
[INFO] [stdout]  --> src/mysql_connection.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use mysql::{params, Error, Pool, PooledConn, Transaction};
[INFO] [stdout]   |                     ^^^^^                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::borrow::BorrowMut`
[INFO] [stdout]  --> src/mysql_connection.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::borrow::BorrowMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/mysql_connection.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::task::Poll`
[INFO] [stdout]  --> src/mysql_connection.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::task::Poll;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MySQLConnection` and `read`
[INFO] [stdout]  --> src/view.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{read, MySQLConnection, ToRow};
[INFO] [stdout]   |             ^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Stdout` and `stdin`
[INFO] [stdout]  --> src/view.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::io::{stdin, stdout, Stdout, Write};
[INFO] [stdout]   |               ^^^^^          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::view::*`
[INFO] [stdout]   --> src/lib.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::view::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Stdin`, `Write`, `stdin`, and `stdout`
[INFO] [stdout]   --> src/lib.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::io::{stdin, stdout, Stdin, Write};
[INFO] [stdout]    |               ^^^^^  ^^^^^^  ^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]   --> src/lib.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use std::thread::sleep;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `io` and `time`
[INFO] [stdout]   --> src/lib.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::{io, time};
[INFO] [stdout]    |           ^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `price`, `set_bus_num`, `set_location`, and `set_price` are never used
[INFO] [stdout]   --> src/bus.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Bus {
[INFO] [stdout]    | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn price(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_bus_num(&mut self, bus_num: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn set_location(&mut self, location: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn set_price(&mut self, price: u32) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `customers` and `reservations` are never read
[INFO] [stdout]   --> src/controller.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Controller {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     customers: Vec<Customer>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 29 |     reservations: Vec<Reservation>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `connection_mut` is never used
[INFO] [stdout]   --> src/controller.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Controller {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn connection_mut(&mut self) -> &mut MySQLConnection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `id` are never read
[INFO] [stdout]  --> src/customer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Customer {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 2 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 3 |     id: u32,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `name`, `id`, `set_name`, and `set_id` are never used
[INFO] [stdout]   --> src/customer.rs:6:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl Customer {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout]  6 |     pub fn new(name: String, id: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub fn name(&self) -> &str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn id(&self) -> u32 {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn set_name(&mut self, name: String) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn set_id(&mut self, id: u32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_flight_num`, `set_price`, `set_from_city`, and `set_arrive_city` are never used
[INFO] [stdout]   --> src/flight.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Flight {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn set_flight_num(&mut self, flight_num: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn set_price(&mut self, price: u32) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn set_from_city(&mut self, from_city: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn set_arrive_city(&mut self, arrive_city: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `price`, `set_hotel_num`, `set_location`, and `set_price` are never used
[INFO] [stdout]   --> src/hotels.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Hotels {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn price(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_hotel_num(&mut self, hotel_num: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn set_location(&mut self, location: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn set_price(&mut self, price: u32) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `url` and `pool` are never read
[INFO] [stdout]   --> src/mysql_connection.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MySQLConnection {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 12 |     url: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 13 |     pool: Pool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `customer`, `res_type`, `res_id`, and `id` are never read
[INFO] [stdout]  --> src/reservation.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Reservation {
[INFO] [stdout]   |            ----------- fields in this struct
[INFO] [stdout] 2 |     customer: u32,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 3 |     res_type: u32,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 4 |     res_id: String,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 5 |     id: u32,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/reservation.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Reservation {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new(customer: u32, res_type: u32, res_id: String, id: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_customer(&mut self, customer: u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn set_res_type(&mut self, res_type: u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn set_res_id(&mut self, res_id: String) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn set_id(&mut self, id: u32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn customer(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn res_type(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn res_id(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn id(&self) -> u32 {
[INFO] [stdout]    |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/mysql_connection.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         self.conn.exec_drop(
[INFO] [stdout] 70 | |             "INSERT INTO Reservation \
[INFO] [stdout] 71 | |             VALUES (:customer_id, 2, :res_id, null);",
[INFO] [stdout] 72 | |             params! {
[INFO] [stdout] ...  |
[INFO] [stdout] 75 | |             },
[INFO] [stdout] 76 | |         );
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = self.conn.exec_drop(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  98 | /         self.conn.exec_drop(
[INFO] [stdout]  99 | |             "INSERT INTO Reservation \
[INFO] [stdout] 100 | |             VALUES (:customer_id, 3, :res_id, null);",
[INFO] [stdout] 101 | |             params! {
[INFO] [stdout] ...   |
[INFO] [stdout] 104 | |             },
[INFO] [stdout] 105 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout]  98 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 | /         self.conn.exec_drop(
[INFO] [stdout] 125 | |             r"INSERT INTO Reservation
[INFO] [stdout] 126 | |             VALUES (:customer_id, 1, :res_id, null);",
[INFO] [stdout] 127 | |             params! {
[INFO] [stdout] ...   |
[INFO] [stdout] 130 | |             },
[INFO] [stdout] 131 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 | /         self.conn.exec_drop(
[INFO] [stdout] 309 | |             "INSERT INTO Customer VALUES (:name, :id);",
[INFO] [stdout] 310 | |             params! {
[INFO] [stdout] 311 | |                 "name" => name,
[INFO] [stdout] 312 | |                 "id" => id
[INFO] [stdout] 313 | |             },
[INFO] [stdout] 314 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 337 | /         self.conn.exec_drop(
[INFO] [stdout] 338 | |             "DELETE FROM BookingSystem.Reservation \
[INFO] [stdout] 339 | |                 WHERE res_id = :res_id",
[INFO] [stdout] 340 | |             params! {
[INFO] [stdout] 341 | |                 "res_id" => res_id
[INFO] [stdout] 342 | |             },
[INFO] [stdout] 343 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 337 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 368 | /         self.conn.exec_drop(
[INFO] [stdout] 369 | |             "DELETE FROM BookingSystem.Reservation \
[INFO] [stdout] 370 | |                 WHERE res_id = :res_id",
[INFO] [stdout] 371 | |             params! {
[INFO] [stdout] 372 | |                 "res_id" => res_id
[INFO] [stdout] 373 | |             },
[INFO] [stdout] 374 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 368 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:399:9
[INFO] [stdout]     |
[INFO] [stdout] 399 | /         self.conn.exec_drop(
[INFO] [stdout] 400 | |             "DELETE FROM BookingSystem.Reservation \
[INFO] [stdout] 401 | |                 WHERE hotel_num = ':res_id'",
[INFO] [stdout] 402 | |             params! {
[INFO] [stdout] 403 | |                 "res_id" => res_id
[INFO] [stdout] 404 | |             },
[INFO] [stdout] 405 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 399 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         stdout().flush();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let _ = stdout().flush();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `price`, `set_bus_num`, `set_location`, and `set_price` are never used
[INFO] [stdout]   --> src/bus.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Bus {
[INFO] [stdout]    | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn price(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_bus_num(&mut self, bus_num: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn set_location(&mut self, location: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn set_price(&mut self, price: u32) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `customers` and `reservations` are never read
[INFO] [stdout]   --> src/controller.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Controller {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     customers: Vec<Customer>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 29 |     reservations: Vec<Reservation>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `connection_mut` is never used
[INFO] [stdout]   --> src/controller.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Controller {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn connection_mut(&mut self) -> &mut MySQLConnection {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `id` are never read
[INFO] [stdout]  --> src/customer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Customer {
[INFO] [stdout]   |            -------- fields in this struct
[INFO] [stdout] 2 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 3 |     id: u32,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `name`, `id`, `set_name`, and `set_id` are never used
[INFO] [stdout]   --> src/customer.rs:6:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl Customer {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout]  6 |     pub fn new(name: String, id: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 10 |     pub fn name(&self) -> &str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn id(&self) -> u32 {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn set_name(&mut self, name: String) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn set_id(&mut self, id: u32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_flight_num`, `set_price`, `set_from_city`, and `set_arrive_city` are never used
[INFO] [stdout]   --> src/flight.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Flight {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn set_flight_num(&mut self, flight_num: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn set_price(&mut self, price: u32) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn set_from_city(&mut self, from_city: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn set_arrive_city(&mut self, arrive_city: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `price`, `set_hotel_num`, `set_location`, and `set_price` are never used
[INFO] [stdout]   --> src/hotels.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Hotels {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn price(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_hotel_num(&mut self, hotel_num: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn set_location(&mut self, location: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn set_price(&mut self, price: u32) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `url` and `pool` are never read
[INFO] [stdout]   --> src/mysql_connection.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct MySQLConnection {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] 12 |     url: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 13 |     pool: Pool,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `customer`, `res_type`, `res_id`, and `id` are never read
[INFO] [stdout]  --> src/reservation.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Reservation {
[INFO] [stdout]   |            ----------- fields in this struct
[INFO] [stdout] 2 |     customer: u32,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 3 |     res_type: u32,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 4 |     res_id: String,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 5 |     id: u32,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/reservation.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Reservation {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new(customer: u32, res_type: u32, res_id: String, id: u32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_customer(&mut self, customer: u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn set_res_type(&mut self, res_type: u32) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn set_res_id(&mut self, res_id: String) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn set_id(&mut self, id: u32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn customer(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn res_type(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn res_id(&self) -> &str {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn id(&self) -> u32 {
[INFO] [stdout]    |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `TourBookingSystem` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `tour_booking_system`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/mysql_connection.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 | /         self.conn.exec_drop(
[INFO] [stdout] 70 | |             "INSERT INTO Reservation \
[INFO] [stdout] 71 | |             VALUES (:customer_id, 2, :res_id, null);",
[INFO] [stdout] 72 | |             params! {
[INFO] [stdout] ...  |
[INFO] [stdout] 75 | |             },
[INFO] [stdout] 76 | |         );
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let _ = self.conn.exec_drop(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  98 | /         self.conn.exec_drop(
[INFO] [stdout]  99 | |             "INSERT INTO Reservation \
[INFO] [stdout] 100 | |             VALUES (:customer_id, 3, :res_id, null);",
[INFO] [stdout] 101 | |             params! {
[INFO] [stdout] ...   |
[INFO] [stdout] 104 | |             },
[INFO] [stdout] 105 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout]  98 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:124:9
[INFO] [stdout]     |
[INFO] [stdout] 124 | /         self.conn.exec_drop(
[INFO] [stdout] 125 | |             r"INSERT INTO Reservation
[INFO] [stdout] 126 | |             VALUES (:customer_id, 1, :res_id, null);",
[INFO] [stdout] 127 | |             params! {
[INFO] [stdout] ...   |
[INFO] [stdout] 130 | |             },
[INFO] [stdout] 131 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 124 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 | /         self.conn.exec_drop(
[INFO] [stdout] 309 | |             "INSERT INTO Customer VALUES (:name, :id);",
[INFO] [stdout] 310 | |             params! {
[INFO] [stdout] 311 | |                 "name" => name,
[INFO] [stdout] 312 | |                 "id" => id
[INFO] [stdout] 313 | |             },
[INFO] [stdout] 314 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 337 | /         self.conn.exec_drop(
[INFO] [stdout] 338 | |             "DELETE FROM BookingSystem.Reservation \
[INFO] [stdout] 339 | |                 WHERE res_id = :res_id",
[INFO] [stdout] 340 | |             params! {
[INFO] [stdout] 341 | |                 "res_id" => res_id
[INFO] [stdout] 342 | |             },
[INFO] [stdout] 343 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 337 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 368 | /         self.conn.exec_drop(
[INFO] [stdout] 369 | |             "DELETE FROM BookingSystem.Reservation \
[INFO] [stdout] 370 | |                 WHERE res_id = :res_id",
[INFO] [stdout] 371 | |             params! {
[INFO] [stdout] 372 | |                 "res_id" => res_id
[INFO] [stdout] 373 | |             },
[INFO] [stdout] 374 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 368 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/mysql_connection.rs:399:9
[INFO] [stdout]     |
[INFO] [stdout] 399 | /         self.conn.exec_drop(
[INFO] [stdout] 400 | |             "DELETE FROM BookingSystem.Reservation \
[INFO] [stdout] 401 | |                 WHERE hotel_num = ':res_id'",
[INFO] [stdout] 402 | |             params! {
[INFO] [stdout] 403 | |                 "res_id" => res_id
[INFO] [stdout] 404 | |             },
[INFO] [stdout] 405 | |         );
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 399 |         let _ = self.conn.exec_drop(
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 11 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 38 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 53 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/view.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         stdout().flush();
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let _ = stdout().flush();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/view.rs:118:9
[INFO] [stdout]     |
[INFO] [stdout] 118 |         stdout().flush();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 118 |         let _ = stdout().flush();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.38s
[INFO] running `Command { std: "docker" "inspect" "8684c18f27a64f1f867e2b521d4d99cf9349004b7108e83868a1178e2b7f4013", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8684c18f27a64f1f867e2b521d4d99cf9349004b7108e83868a1178e2b7f4013", kill_on_drop: false }`
[INFO] [stdout] 8684c18f27a64f1f867e2b521d4d99cf9349004b7108e83868a1178e2b7f4013
