[INFO] cloning repository https://github.com/bc1bb/RustyRC
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bc1bb/RustyRC" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbc1bb%2FRustyRC", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbc1bb%2FRustyRC'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8633e264a8793369b219dca30c11543043d0a671
[INFO] checking bc1bb/RustyRC against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbc1bb%2FRustyRC" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/bc1bb/RustyRC
[INFO] finished tweaking git repo https://github.com/bc1bb/RustyRC
[INFO] tweaked toml for git repo https://github.com/bc1bb/RustyRC written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bc1bb/RustyRC 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/bc1bb/RustyRC 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]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded spin_sleep v1.1.1
[INFO] [stderr]   Downloaded mysqlclient-sys v0.2.5
[INFO] [stderr]   Downloaded diesel_derives v2.0.1
[INFO] [stderr]   Downloaded diesel v2.0.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 2e5029cc1155391d0e0b3027b8f150f129602a545afe9c6cfd4441f2931cc236
[INFO] running `Command { std: "docker" "start" "-a" "2e5029cc1155391d0e0b3027b8f150f129602a545afe9c6cfd4441f2931cc236", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e5029cc1155391d0e0b3027b8f150f129602a545afe9c6cfd4441f2931cc236", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e5029cc1155391d0e0b3027b8f150f129602a545afe9c6cfd4441f2931cc236", kill_on_drop: false }`
[INFO] [stdout] 2e5029cc1155391d0e0b3027b8f150f129602a545afe9c6cfd4441f2931cc236
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 728ade9fa0a7185614585646b8c83136caca1124ba47e7d3b727835287136efb
[INFO] running `Command { std: "docker" "start" "-a" "728ade9fa0a7185614585646b8c83136caca1124ba47e7d3b727835287136efb", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.49
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling io-lifetimes v1.0.3
[INFO] [stderr]    Compiling pkg-config v0.3.26
[INFO] [stderr]    Compiling rustix v0.36.6
[INFO] [stderr]     Checking percent-encoding v2.2.0
[INFO] [stderr]     Checking linux-raw-sys v0.1.4
[INFO] [stderr]     Checking regex-syntax v0.6.28
[INFO] [stderr]     Checking idna v0.3.0
[INFO] [stderr]     Checking spin_sleep v1.1.1
[INFO] [stderr]     Checking dotenvy v0.15.6
[INFO] [stderr]     Checking form_urlencoded v1.1.0
[INFO] [stderr]    Compiling mysqlclient-sys v0.2.5
[INFO] [stderr]     Checking url v2.3.1
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]     Checking regex v1.7.0
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]     Checking is-terminal v0.4.2
[INFO] [stderr]     Checking env_logger v0.10.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling diesel_derives v2.0.1
[INFO] [stderr]     Checking diesel v2.0.2
[INFO] [stderr]     Checking rustyrc v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::rirc_lib::IrcError::*`
[INFO] [stdout]   --> src/rirc_lib.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::rirc_lib::IrcError::*;
[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: `crate::rirc_lib::IrcError::*`
[INFO] [stdout]   --> src/rirc_lib.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::rirc_lib::IrcError::*;
[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 variable: `connection`
[INFO] [stdout]   --> src/rirc_protocol_handler.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn motd(connection: &mut MysqlConnection, thread_id: i32) -> Result<Response,IrcError> {
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connection`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_id`
[INFO] [stdout]   --> src/rirc_protocol_handler.rs:77:43
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn motd(connection: &mut MysqlConnection, thread_id: i32) -> Result<Response,IrcError> {
[INFO] [stdout]    |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res_string` is never read
[INFO] [stdout]   --> src/rirc_protocol_handler.rs:98:26
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let mut res_string = "".to_string();
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res_string` is never read
[INFO] [stdout]    --> src/rirc_protocol_handler.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 | ...   res_string = res_string + "\n:localhost 366 " + user.nick.as_str() + " " + channel.name.as_str() + " :End of /NAMES list.";
[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/rirc_protocol_handler.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |     let mut receiver = content_vec[0];
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidRequest` is never constructed
[INFO] [stdout]    --> src/rirc_lib.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum Error {
[INFO] [stdout]     |          ----- variant in this enum
[INFO] [stdout] 120 |     InvalidRequest,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `None`, `NoSuchNick`, `CannotSendToChan`, and `YouWillBeBanned` are never constructed
[INFO] [stdout]    --> src/rirc_lib.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub enum IrcError {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 130 |     None, // (=unimplemented)
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 131 |     UnknownError, // 400: ERR_UNKNOWNERROR
[INFO] [stdout] 132 |     NoSuchNick, // 401: ERR_NOSUCHNICK
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 133 |     NoSuchChannel, // 403: ERR_NOSUCHCHANNEL
[INFO] [stdout] 134 |     CannotSendToChan, // 404: ERR_CANNOTSENDTOCHAN
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     YouWillBeBanned, // 466: ERR_YOUWILLBEBANNED
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IrcError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `last_login` and `op` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct User {
[INFO] [stdout]     |            ---- fields in this struct
[INFO] [stdout] 211 |     pub id: i32,
[INFO] [stdout] 212 |     pub last_login: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub op: bool,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `User` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `is_ip`, and `content` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:431:9
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub struct Ban {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 431 |     pub id: i32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 432 |     pub is_ip: bool, // if ban is applied on ip, this will be set to 1
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 433 |     pub content: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_ban` is never used
[INFO] [stdout]    --> src/rirc_lib.rs:478:8
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub fn create_ban(connection: &mut MysqlConnection, is_ip: &bool, content: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `creation_time` and `creator` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:494:9
[INFO] [stdout]     |
[INFO] [stdout] 491 | pub struct Channel {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 494 |     pub creation_time: i32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 495 |     pub creator: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Channel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_channel` is never used
[INFO] [stdout]    --> src/rirc_lib.rs:588:8
[INFO] [stdout]     |
[INFO] [stdout] 588 | pub fn create_channel(connection: &mut MysqlConnection, name: &str, creation_time: &i32, creator: &str, topic: &str, content: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `key` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:634:9
[INFO] [stdout]     |
[INFO] [stdout] 633 | pub struct Setting {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 634 |     pub id: i32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 635 |     pub key: String,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/rirc_protocol_handler.rs:218:59
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let receiver_with_hashtag = "#".to_string() + receiver.clone();
[INFO] [stdout]     |                                                           ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `connection`
[INFO] [stdout]   --> src/rirc_protocol_handler.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn motd(connection: &mut MysqlConnection, thread_id: i32) -> Result<Response,IrcError> {
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_connection`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `thread_id`
[INFO] [stdout]   --> src/rirc_protocol_handler.rs:77:43
[INFO] [stdout]    |
[INFO] [stdout] 77 | fn motd(connection: &mut MysqlConnection, thread_id: i32) -> Result<Response,IrcError> {
[INFO] [stdout]    |                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_thread_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res_string` is never read
[INFO] [stdout]   --> src/rirc_protocol_handler.rs:98:26
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let mut res_string = "".to_string();
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `res_string` is never read
[INFO] [stdout]    --> src/rirc_protocol_handler.rs:109:13
[INFO] [stdout]     |
[INFO] [stdout] 109 | ...   res_string = res_string + "\n:localhost 366 " + user.nick.as_str() + " " + channel.name.as_str() + " :End of /NAMES list.";
[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/rirc_protocol_handler.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 |     let mut receiver = content_vec[0];
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidRequest` is never constructed
[INFO] [stdout]    --> src/rirc_lib.rs:120:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub enum Error {
[INFO] [stdout]     |          ----- variant in this enum
[INFO] [stdout] 120 |     InvalidRequest,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `None`, `NoSuchNick`, `CannotSendToChan`, and `YouWillBeBanned` are never constructed
[INFO] [stdout]    --> src/rirc_lib.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub enum IrcError {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 130 |     None, // (=unimplemented)
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 131 |     UnknownError, // 400: ERR_UNKNOWNERROR
[INFO] [stdout] 132 |     NoSuchNick, // 401: ERR_NOSUCHNICK
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 133 |     NoSuchChannel, // 403: ERR_NOSUCHCHANNEL
[INFO] [stdout] 134 |     CannotSendToChan, // 404: ERR_CANNOTSENDTOCHAN
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     YouWillBeBanned, // 466: ERR_YOUWILLBEBANNED
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IrcError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `last_login` and `op` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct User {
[INFO] [stdout]     |            ---- fields in this struct
[INFO] [stdout] 211 |     pub id: i32,
[INFO] [stdout] 212 |     pub last_login: i64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub op: bool,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `User` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `is_ip`, and `content` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:431:9
[INFO] [stdout]     |
[INFO] [stdout] 430 | pub struct Ban {
[INFO] [stdout]     |            --- fields in this struct
[INFO] [stdout] 431 |     pub id: i32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 432 |     pub is_ip: bool, // if ban is applied on ip, this will be set to 1
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 433 |     pub content: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_ban` is never used
[INFO] [stdout]    --> src/rirc_lib.rs:478:8
[INFO] [stdout]     |
[INFO] [stdout] 478 | pub fn create_ban(connection: &mut MysqlConnection, is_ip: &bool, content: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `creation_time` and `creator` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:494:9
[INFO] [stdout]     |
[INFO] [stdout] 491 | pub struct Channel {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 494 |     pub creation_time: i32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 495 |     pub creator: String,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Channel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_channel` is never used
[INFO] [stdout]    --> src/rirc_lib.rs:588:8
[INFO] [stdout]     |
[INFO] [stdout] 588 | pub fn create_channel(connection: &mut MysqlConnection, name: &str, creation_time: &i32, creator: &str, topic: &str, content: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `key` are never read
[INFO] [stdout]    --> src/rirc_lib.rs:634:9
[INFO] [stdout]     |
[INFO] [stdout] 633 | pub struct Setting {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 634 |     pub id: i32,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 635 |     pub key: String,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/rirc_protocol_handler.rs:218:59
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let receiver_with_hashtag = "#".to_string() + receiver.clone();
[INFO] [stdout]     |                                                           ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.01s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: diesel_derives v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 6`
[INFO] running `Command { std: "docker" "inspect" "728ade9fa0a7185614585646b8c83136caca1124ba47e7d3b727835287136efb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "728ade9fa0a7185614585646b8c83136caca1124ba47e7d3b727835287136efb", kill_on_drop: false }`
[INFO] [stdout] 728ade9fa0a7185614585646b8c83136caca1124ba47e7d3b727835287136efb
