[INFO] cloning repository https://github.com/nrobinson2000/rust-chatroom
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nrobinson2000/rust-chatroom" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnrobinson2000%2Frust-chatroom", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnrobinson2000%2Frust-chatroom'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6a17052b40693e92fa007b055353e3428b0bf141
[INFO] testing nrobinson2000/rust-chatroom against 1.69.0 for beta-1.70-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnrobinson2000%2Frust-chatroom" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/nrobinson2000/rust-chatroom on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/nrobinson2000/rust-chatroom
[INFO] finished tweaking git repo https://github.com/nrobinson2000/rust-chatroom
[INFO] tweaked toml for git repo https://github.com/nrobinson2000/rust-chatroom written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/nrobinson2000/rust-chatroom 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.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 96a6ab781f0eb3e3dfb96503e12b6254ea8b25fb47cbf7fbb32d9b04cf4ad8b1
[INFO] running `Command { std: "docker" "start" "-a" "96a6ab781f0eb3e3dfb96503e12b6254ea8b25fb47cbf7fbb32d9b04cf4ad8b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "96a6ab781f0eb3e3dfb96503e12b6254ea8b25fb47cbf7fbb32d9b04cf4ad8b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96a6ab781f0eb3e3dfb96503e12b6254ea8b25fb47cbf7fbb32d9b04cf4ad8b1", kill_on_drop: false }`
[INFO] [stdout] 96a6ab781f0eb3e3dfb96503e12b6254ea8b25fb47cbf7fbb32d9b04cf4ad8b1
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e8818fc84efbaddd0866eeab82bbef3109e1d3f3ed442d6de0e28fcd9310201b
[INFO] running `Command { std: "docker" "start" "-a" "e8818fc84efbaddd0866eeab82bbef3109e1d3f3ed442d6de0e28fcd9310201b", kill_on_drop: false }`
[INFO] [stderr]    Compiling chatroom v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/lib.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/lib.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 79 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getUsername` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn getUsername(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getMessage` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn getMessage(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to snake case: `get_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getFront` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub fn getFront(&mut self) -> &ChatMessage {
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to snake case: `get_front`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isEmpty` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn isEmpty(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `is_empty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getStream` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn getStream(&self) -> &TcpStream {
[INFO] [stdout]     |            ^^^^^^^^^ help: convert the identifier to snake case: `get_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getUsername` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn getUsername(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]   --> src/bin/server.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Err(error) => {}
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]   --> src/bin/server.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |             Err(error) => {}
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/client.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn read_handler(mut stream: &TcpStream) {
[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: variable `vecInput` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let mut vecInput = vec![];
[INFO] [stdout]    |             ^^^^^^^^ help: convert the identifier to snake case: `vec_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/server.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |             let mut temp_stream = stream.try_clone().unwrap();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/server.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |             let mut temp_username = username.clone();
[INFO] [stdout]    |                 ----^^^^^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/server.rs:122:53
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn handle_outgoing_messages(clients: &[UserStream], mut message: &ChatMessage) {
[INFO] [stdout]     |                                                     ----^^^^^^^
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/server.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let mut stream = client.getStream();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_client` is never used
[INFO] [stdout]   --> src/bin/server.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn add_client(clients: &mut Vec<UserStream>, stream: TcpStream, username: String) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/bin/server.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |             client_tx1.send(UserStream::new(temp_stream, temp_username));
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/bin/server.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     stream.write(hello_message.as_bytes());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/bin/server.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     stream.write(message.as_bytes());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 10 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.69s
[INFO] running `Command { std: "docker" "inspect" "e8818fc84efbaddd0866eeab82bbef3109e1d3f3ed442d6de0e28fcd9310201b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e8818fc84efbaddd0866eeab82bbef3109e1d3f3ed442d6de0e28fcd9310201b", kill_on_drop: false }`
[INFO] [stdout] e8818fc84efbaddd0866eeab82bbef3109e1d3f3ed442d6de0e28fcd9310201b
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7980e2b8b14d2663991d7a06b00b6b10f9607a7a1fbedd05611236abe2aaa4ce
[INFO] running `Command { std: "docker" "start" "-a" "7980e2b8b14d2663991d7a06b00b6b10f9607a7a1fbedd05611236abe2aaa4ce", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/lib.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::borrow::Borrow;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/lib.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 79 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getUsername` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn getUsername(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getMessage` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn getMessage(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to snake case: `get_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getFront` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub fn getFront(&mut self) -> &ChatMessage {
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to snake case: `get_front`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isEmpty` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn isEmpty(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `is_empty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getStream` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn getStream(&self) -> &TcpStream {
[INFO] [stdout]     |            ^^^^^^^^^ help: convert the identifier to snake case: `get_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getUsername` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn getUsername(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling chatroom v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::borrow::Borrow`
[INFO] [stdout]  --> src/lib.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | 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 variable: `error`
[INFO] [stdout]   --> src/bin/server.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |             Err(error) => {}
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `error`
[INFO] [stdout]   --> src/bin/server.rs:59:17
[INFO] [stdout]    |
[INFO] [stdout] 59 |             Err(error) => {}
[INFO] [stdout]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/client.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn read_handler(mut stream: &TcpStream) {
[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: variable `vecInput` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |     let mut vecInput = vec![];
[INFO] [stdout]    |             ^^^^^^^^ help: convert the identifier to snake case: `vec_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/server.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |             let mut temp_stream = stream.try_clone().unwrap();
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/server.rs:80:17
[INFO] [stdout]    |
[INFO] [stdout] 80 |             let mut temp_username = username.clone();
[INFO] [stdout]    |                 ----^^^^^^^^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/server.rs:122:53
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn handle_outgoing_messages(clients: &[UserStream], mut message: &ChatMessage) {
[INFO] [stdout]     |                                                     ----^^^^^^^
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/server.rs:128:13
[INFO] [stdout]     |
[INFO] [stdout] 128 |         let mut stream = client.getStream();
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_client` is never used
[INFO] [stdout]   --> src/bin/server.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn add_client(clients: &mut Vec<UserStream>, stream: TcpStream, username: String) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/lib.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 78 | struct Worker {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 79 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getUsername` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 132 |     pub fn getUsername(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getMessage` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn getMessage(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^ help: convert the identifier to snake case: `get_message`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getFront` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 160 |     pub fn getFront(&mut self) -> &ChatMessage {
[INFO] [stdout]     |            ^^^^^^^^ help: convert the identifier to snake case: `get_front`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `isEmpty` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 |     pub fn isEmpty(&mut self) -> bool {
[INFO] [stdout]     |            ^^^^^^^ help: convert the identifier to snake case: `is_empty`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getStream` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 |     pub fn getStream(&self) -> &TcpStream {
[INFO] [stdout]     |            ^^^^^^^^^ help: convert the identifier to snake case: `get_stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `getUsername` should have a snake case name
[INFO] [stdout]    --> src/lib.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout] 200 |     pub fn getUsername(self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/bin/server.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |             client_tx1.send(UserStream::new(temp_stream, temp_username));
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/bin/server.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     stream.write(hello_message.as_bytes());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/bin/server.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 157 |     stream.write(message.as_bytes());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 10 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.20s
[INFO] running `Command { std: "docker" "inspect" "7980e2b8b14d2663991d7a06b00b6b10f9607a7a1fbedd05611236abe2aaa4ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7980e2b8b14d2663991d7a06b00b6b10f9607a7a1fbedd05611236abe2aaa4ce", kill_on_drop: false }`
[INFO] [stdout] 7980e2b8b14d2663991d7a06b00b6b10f9607a7a1fbedd05611236abe2aaa4ce
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] dda273e15da9081420c3333cade0c9cb0e7e2e91c9b299d32635ba124fdbe71e
[INFO] running `Command { std: "docker" "start" "-a" "dda273e15da9081420c3333cade0c9cb0e7e2e91c9b299d32635ba124fdbe71e", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::borrow::Borrow`
[INFO] [stderr]  --> src/lib.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::borrow::Borrow;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `id` is never read
[INFO] [stderr]   --> src/lib.rs:79:5
[INFO] [stderr]    |
[INFO] [stderr] 78 | struct Worker {
[INFO] [stderr]    |        ------ field in this struct
[INFO] [stderr] 79 |     id: usize,
[INFO] [stderr]    |     ^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `getUsername` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:132:12
[INFO] [stderr]     |
[INFO] [stderr] 132 |     pub fn getUsername(self) -> String {
[INFO] [stderr]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `getMessage` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:135:12
[INFO] [stderr]     |
[INFO] [stderr] 135 |     pub fn getMessage(self) -> String {
[INFO] [stderr]     |            ^^^^^^^^^^ help: convert the identifier to snake case: `get_message`
[INFO] [stderr] 
[INFO] [stderr] warning: method `getFront` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:160:12
[INFO] [stderr]     |
[INFO] [stderr] 160 |     pub fn getFront(&mut self) -> &ChatMessage {
[INFO] [stderr]     |            ^^^^^^^^ help: convert the identifier to snake case: `get_front`
[INFO] [stderr] 
[INFO] [stderr] warning: method `isEmpty` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:168:12
[INFO] [stderr]     |
[INFO] [stderr] 168 |     pub fn isEmpty(&mut self) -> bool {
[INFO] [stderr]     |            ^^^^^^^ help: convert the identifier to snake case: `is_empty`
[INFO] [stderr] 
[INFO] [stderr] warning: method `getStream` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:196:12
[INFO] [stderr]     |
[INFO] [stderr] 196 |     pub fn getStream(&self) -> &TcpStream {
[INFO] [stderr]     |            ^^^^^^^^^ help: convert the identifier to snake case: `get_stream`
[INFO] [stderr] 
[INFO] [stderr] warning: method `getUsername` should have a snake case name
[INFO] [stderr]    --> src/lib.rs:200:12
[INFO] [stderr]     |
[INFO] [stderr] 200 |     pub fn getUsername(self) -> String {
[INFO] [stderr]     |            ^^^^^^^^^^^ help: convert the identifier to snake case: `get_username`
[INFO] [stderr] 
[INFO] [stderr] warning: `chatroom` (lib) generated 8 warnings (run `cargo fix --lib -p chatroom` to apply 1 suggestion)
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]   --> src/bin/server.rs:51:17
[INFO] [stderr]    |
[INFO] [stderr] 51 |             Err(error) => {}
[INFO] [stderr]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]   --> src/bin/server.rs:59:17
[INFO] [stderr]    |
[INFO] [stderr] 59 |             Err(error) => {}
[INFO] [stderr]    |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/server.rs:79:17
[INFO] [stderr]    |
[INFO] [stderr] 79 |             let mut temp_stream = stream.try_clone().unwrap();
[INFO] [stderr]    |                 ----^^^^^^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/server.rs:80:17
[INFO] [stderr]    |
[INFO] [stderr] 80 |             let mut temp_username = username.clone();
[INFO] [stderr]    |                 ----^^^^^^^^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bin/server.rs:122:53
[INFO] [stderr]     |
[INFO] [stderr] 122 | fn handle_outgoing_messages(clients: &[UserStream], mut message: &ChatMessage) {
[INFO] [stderr]     |                                                     ----^^^^^^^
[INFO] [stderr]     |                                                     |
[INFO] [stderr]     |                                                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bin/server.rs:128:13
[INFO] [stderr]     |
[INFO] [stderr] 128 |         let mut stream = client.getStream();
[INFO] [stderr]     |             ----^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function `add_client` is never used
[INFO] [stderr]   --> src/bin/server.rs:96:4
[INFO] [stderr]    |
[INFO] [stderr] 96 | fn add_client(clients: &mut Vec<UserStream>, stream: TcpStream, username: String) {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/bin/server.rs:83:13
[INFO] [stderr]    |
[INFO] [stderr] 83 |             client_tx1.send(UserStream::new(temp_stream, temp_username));
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/bin/server.rs:116:5
[INFO] [stderr]     |
[INFO] [stderr] 116 |     stream.write(hello_message.as_bytes());
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/bin/server.rs:157:5
[INFO] [stderr]     |
[INFO] [stderr] 157 |     stream.write(message.as_bytes());
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: `chatroom` (bin "server" test) generated 10 warnings (run `cargo fix --bin "server" --tests` to apply 6 suggestions)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/client.rs:51:17
[INFO] [stderr]    |
[INFO] [stderr] 51 | fn read_handler(mut stream: &TcpStream) {
[INFO] [stderr]    |                 ----^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `vecInput` should have a snake case name
[INFO] [stderr]   --> src/bin/client.rs:82:13
[INFO] [stderr]    |
[INFO] [stderr] 82 |     let mut vecInput = vec![];
[INFO] [stderr]    |             ^^^^^^^^ help: convert the identifier to snake case: `vec_input`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `chatroom` (bin "client" test) generated 2 warnings (run `cargo fix --bin "client" --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `chatroom` (lib test) generated 8 warnings (8 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.00s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/chatroom-096358d95ad9b21a)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/client.rs (/opt/rustwide/target/debug/deps/client-ae7b7ffbfd5c55d5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/server.rs (/opt/rustwide/target/debug/deps/server-eb10749492579bbd)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests chatroom
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "dda273e15da9081420c3333cade0c9cb0e7e2e91c9b299d32635ba124fdbe71e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dda273e15da9081420c3333cade0c9cb0e7e2e91c9b299d32635ba124fdbe71e", kill_on_drop: false }`
[INFO] [stdout] dda273e15da9081420c3333cade0c9cb0e7e2e91c9b299d32635ba124fdbe71e
