[INFO] cloning repository https://github.com/timMetzger/rustBasicFileServerAndClient
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/timMetzger/rustBasicFileServerAndClient" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FtimMetzger%2FrustBasicFileServerAndClient", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FtimMetzger%2FrustBasicFileServerAndClient'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2b8c8c8699138e73b11c1c001b6b92cc40c61b86
[INFO] testing timMetzger/rustBasicFileServerAndClient against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FtimMetzger%2FrustBasicFileServerAndClient" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/timMetzger/rustBasicFileServerAndClient
[INFO] finished tweaking git repo https://github.com/timMetzger/rustBasicFileServerAndClient
[INFO] tweaked toml for git repo https://github.com/timMetzger/rustBasicFileServerAndClient written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/timMetzger/rustBasicFileServerAndClient on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/timMetzger/rustBasicFileServerAndClient 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.93
[INFO] [stderr]   Downloaded quote v1.0.38
[INFO] [stderr]   Downloaded unicode-ident v1.0.16
[INFO] [stderr]   Downloaded syn v2.0.98
[INFO] [stderr]   Downloaded libc v0.2.169
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1fc6a58c5fe88d52e40d96bbcc49c63181d7f4e353a33af4e899dfbeb7900589
[INFO] running `Command { std: "docker" "start" "-a" "1fc6a58c5fe88d52e40d96bbcc49c63181d7f4e353a33af4e899dfbeb7900589", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1fc6a58c5fe88d52e40d96bbcc49c63181d7f4e353a33af4e899dfbeb7900589", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1fc6a58c5fe88d52e40d96bbcc49c63181d7f4e353a33af4e899dfbeb7900589", kill_on_drop: false }`
[INFO] [stdout] 1fc6a58c5fe88d52e40d96bbcc49c63181d7f4e353a33af4e899dfbeb7900589
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 47b7032b0b7ca805192f11862208264be35e522a4e6c03694b30ca524cb33f0c
[INFO] running `Command { std: "docker" "start" "-a" "47b7032b0b7ca805192f11862208264be35e522a4e6c03694b30ca524cb33f0c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling unicode-ident v1.0.16
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling syn v2.0.98
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling BasicWebServer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `workers` is never read
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ThreadPool{
[INFO] [stdout]   |            ---------- field in this struct
[INFO] [stdout] 5 |     workers: Vec<Worker>,
[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 `id` and `thread` are never read
[INFO] [stdout]   --> src/lib.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct Worker {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 53 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 54 |     thread: thread::JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `BasicWebServer` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `basic_web_server`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/lib.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if size < 0
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: denote infinite loops with `loop { ... }`
[INFO] [stdout]   --> src/bin/client.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 |                     while true {
[INFO] [stdout]    |                     ^^^^^^^^^^ help: use `loop`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(while_true)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/bin/client.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut stream = TcpStream::connect("127.0.0.1:8080");
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/client.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let mut fileSize = fileSizeStr.parse::<i32>().expect("Could not parse size");
[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/client.rs:39:17
[INFO] [stdout]    |
[INFO] [stdout] 39 |             let mut f = std::fs::File::options().write(true).create(true).open(format!("C:/Debug/{fileName}"));
[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/client.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stdout]    |                         ----^^^^^^^^^^^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytesWritten`
[INFO] [stdout]   --> src/bin/client.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytesWritten`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileName` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let mut fileName = String::new();
[INFO] [stdout]    |                     ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSizeStr` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:29:21
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let mut fileSizeStr = String::new();
[INFO] [stdout]    |                     ^^^^^^^^^^^ help: convert the identifier to snake case: `file_size_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let mut fileSize = fileSizeStr.parse::<i32>().expect("Could not parse size");
[INFO] [stdout]    |                     ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bytesReceived` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:44:29
[INFO] [stdout]    |
[INFO] [stdout] 44 |                     let mut bytesReceived : i32 = 0;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `bytes_received`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bytesWritten` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:45:29
[INFO] [stdout]    |
[INFO] [stdout] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stdout]    |                             ^^^^^^^^^^^^ help: convert the identifier to snake case: `bytes_written`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileContents` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:46:29
[INFO] [stdout]    |
[INFO] [stdout] 46 |                     let mut fileContents : [u8; 512] = [0;512];
[INFO] [stdout]    |                             ^^^^^^^^^^^^ help: convert the identifier to snake case: `file_contents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/main.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut buf_reader = BufReader::new(&stream);
[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] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.63s
[INFO] running `Command { std: "docker" "inspect" "47b7032b0b7ca805192f11862208264be35e522a4e6c03694b30ca524cb33f0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "47b7032b0b7ca805192f11862208264be35e522a4e6c03694b30ca524cb33f0c", kill_on_drop: false }`
[INFO] [stdout] 47b7032b0b7ca805192f11862208264be35e522a4e6c03694b30ca524cb33f0c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3a9b530aa8d04bd716acfa20636da398ad81e8e1d0df21b5b806c2fd10e1686e
[INFO] running `Command { std: "docker" "start" "-a" "3a9b530aa8d04bd716acfa20636da398ad81e8e1d0df21b5b806c2fd10e1686e", kill_on_drop: false }`
[INFO] [stderr]    Compiling BasicWebServer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `workers` is never read
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ThreadPool{
[INFO] [stdout]   |            ---------- field in this struct
[INFO] [stdout] 5 |     workers: Vec<Worker>,
[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 `id` and `thread` are never read
[INFO] [stdout]   --> src/lib.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct Worker {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 53 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 54 |     thread: thread::JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `BasicWebServer` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `basic_web_server`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/lib.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if size < 0
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: denote infinite loops with `loop { ... }`
[INFO] [stdout]   --> src/bin/client.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 |                     while true {
[INFO] [stdout]    |                     ^^^^^^^^^^ help: use `loop`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(while_true)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/bin/client.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut stream = TcpStream::connect("127.0.0.1:8080");
[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: variable does not need to be mutable
[INFO] [stdout]   --> src/bin/client.rs:36:17
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let mut fileSize = fileSizeStr.parse::<i32>().expect("Could not parse size");
[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/client.rs:39:17
[INFO] [stdout]    |
[INFO] [stdout] 39 |             let mut f = std::fs::File::options().write(true).create(true).open(format!("C:/Debug/{fileName}"));
[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/client.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stdout]    |                         ----^^^^^^^^^^^^
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytesWritten`
[INFO] [stdout]   --> src/bin/client.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytesWritten`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/main.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let mut buf_reader = BufReader::new(&stream);
[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: variable `fileName` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let mut fileName = String::new();
[INFO] [stdout]    |                     ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSizeStr` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:29:21
[INFO] [stdout]    |
[INFO] [stdout] 29 |             let mut fileSizeStr = String::new();
[INFO] [stdout]    |                     ^^^^^^^^^^^ help: convert the identifier to snake case: `file_size_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileSize` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 |             let mut fileSize = fileSizeStr.parse::<i32>().expect("Could not parse size");
[INFO] [stdout]    |                     ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bytesReceived` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:44:29
[INFO] [stdout]    |
[INFO] [stdout] 44 |                     let mut bytesReceived : i32 = 0;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `bytes_received`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `bytesWritten` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:45:29
[INFO] [stdout]    |
[INFO] [stdout] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stdout]    |                             ^^^^^^^^^^^^ help: convert the identifier to snake case: `bytes_written`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `fileContents` should have a snake case name
[INFO] [stdout]   --> src/bin/client.rs:46:29
[INFO] [stdout]    |
[INFO] [stdout] 46 |                     let mut fileContents : [u8; 512] = [0;512];
[INFO] [stdout]    |                             ^^^^^^^^^^^^ help: convert the identifier to snake case: `file_contents`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `workers` is never read
[INFO] [stdout]  --> src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct ThreadPool{
[INFO] [stdout]   |            ---------- field in this struct
[INFO] [stdout] 5 |     workers: Vec<Worker>,
[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 `id` and `thread` are never read
[INFO] [stdout]   --> src/lib.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct Worker {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 53 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 54 |     thread: thread::JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/lib.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 |         if size < 0
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.54s
[INFO] running `Command { std: "docker" "inspect" "3a9b530aa8d04bd716acfa20636da398ad81e8e1d0df21b5b806c2fd10e1686e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3a9b530aa8d04bd716acfa20636da398ad81e8e1d0df21b5b806c2fd10e1686e", kill_on_drop: false }`
[INFO] [stdout] 3a9b530aa8d04bd716acfa20636da398ad81e8e1d0df21b5b806c2fd10e1686e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 0956aa36d4af35a50e50daa745587e9f35962a5a7024fdd789015de690ac3d6e
[INFO] running `Command { std: "docker" "start" "-a" "0956aa36d4af35a50e50daa745587e9f35962a5a7024fdd789015de690ac3d6e", kill_on_drop: false }`
[INFO] [stderr] warning: field `workers` is never read
[INFO] [stderr]  --> src/lib.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct ThreadPool{
[INFO] [stderr]   |            ---------- field in this struct
[INFO] [stderr] 5 |     workers: Vec<Worker>,
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id` and `thread` are never read
[INFO] [stderr]   --> src/lib.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub struct Worker {
[INFO] [stderr]    |            ------ fields in this struct
[INFO] [stderr] 53 |     id: usize,
[INFO] [stderr]    |     ^^
[INFO] [stderr] 54 |     thread: thread::JoinHandle<()>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: crate `BasicWebServer` should have a snake case name
[INFO] [stderr]   |
[INFO] [stderr]   = help: convert the identifier to snake case: `basic_web_server`
[INFO] [stderr]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: comparison is useless due to type limits
[INFO] [stderr]   --> src/lib.rs:41:12
[INFO] [stderr]    |
[INFO] [stderr] 41 |         if size < 0
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `BasicWebServer` (lib) generated 4 warnings
[INFO] [stderr] warning: denote infinite loops with `loop { ... }`
[INFO] [stderr]   --> src/bin/client.rs:49:21
[INFO] [stderr]    |
[INFO] [stderr] 49 |                     while true {
[INFO] [stderr]    |                     ^^^^^^^^^^ help: use `loop`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(while_true)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/bin/client.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut stream = TcpStream::connect("127.0.0.1:8080");
[INFO] [stderr]   |         ----^^^^^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/bin/client.rs:36:17
[INFO] [stderr]    |
[INFO] [stderr] 36 |             let mut fileSize = fileSizeStr.parse::<i32>().expect("Could not parse size");
[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/client.rs:39:17
[INFO] [stderr]    |
[INFO] [stderr] 39 |             let mut f = std::fs::File::options().write(true).create(true).open(format!("C:/Debug/{fileName}"));
[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/client.rs:45:25
[INFO] [stderr]    |
[INFO] [stderr] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stderr]    |                         ----^^^^^^^^^^^^
[INFO] [stderr]    |                         |
[INFO] [stderr]    |                         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bytesWritten`
[INFO] [stderr]   --> src/bin/client.rs:45:25
[INFO] [stderr]    |
[INFO] [stderr] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bytesWritten`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileName` should have a snake case name
[INFO] [stderr]   --> src/bin/client.rs:28:21
[INFO] [stderr]    |
[INFO] [stderr] 28 |             let mut fileName = String::new();
[INFO] [stderr]    |                     ^^^^^^^^ help: convert the identifier to snake case: `file_name`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileSizeStr` should have a snake case name
[INFO] [stderr]   --> src/bin/client.rs:29:21
[INFO] [stderr]    |
[INFO] [stderr] 29 |             let mut fileSizeStr = String::new();
[INFO] [stderr]    |                     ^^^^^^^^^^^ help: convert the identifier to snake case: `file_size_str`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileSize` should have a snake case name
[INFO] [stderr]   --> src/bin/client.rs:36:21
[INFO] [stderr]    |
[INFO] [stderr] 36 |             let mut fileSize = fileSizeStr.parse::<i32>().expect("Could not parse size");
[INFO] [stderr]    |                     ^^^^^^^^ help: convert the identifier to snake case: `file_size`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `bytesReceived` should have a snake case name
[INFO] [stderr]   --> src/bin/client.rs:44:29
[INFO] [stderr]    |
[INFO] [stderr] 44 |                     let mut bytesReceived : i32 = 0;
[INFO] [stderr]    |                             ^^^^^^^^^^^^^ help: convert the identifier to snake case: `bytes_received`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `bytesWritten` should have a snake case name
[INFO] [stderr]   --> src/bin/client.rs:45:29
[INFO] [stderr]    |
[INFO] [stderr] 45 |                     let mut bytesWritten : i32 = 0;
[INFO] [stderr]    |                             ^^^^^^^^^^^^ help: convert the identifier to snake case: `bytes_written`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `fileContents` should have a snake case name
[INFO] [stderr]   --> src/bin/client.rs:46:29
[INFO] [stderr]    |
[INFO] [stderr] 46 |                     let mut fileContents : [u8; 512] = [0;512];
[INFO] [stderr]    |                             ^^^^^^^^^^^^ help: convert the identifier to snake case: `file_contents`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]  --> src/main.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let mut buf_reader = BufReader::new(&stream);
[INFO] [stderr]   |         ----^^^^^^^^^^
[INFO] [stderr]   |         |
[INFO] [stderr]   |         help: remove this `mut`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `BasicWebServer` (bin "client" test) generated 12 warnings (run `cargo fix --bin "client" -p BasicWebServer --tests` to apply 6 suggestions)
[INFO] [stderr] warning: `BasicWebServer` (bin "BasicWebServer" test) generated 1 warning (run `cargo fix --bin "BasicWebServer" -p BasicWebServer --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `BasicWebServer` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/BasicWebServer-727fcfff082e781b)
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/BasicWebServer-6be91ad38c1877fb)
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/client.rs (/opt/rustwide/target/debug/deps/client-e44ca01f82343891)
[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] [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] [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 BasicWebServer
[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" "0956aa36d4af35a50e50daa745587e9f35962a5a7024fdd789015de690ac3d6e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0956aa36d4af35a50e50daa745587e9f35962a5a7024fdd789015de690ac3d6e", kill_on_drop: false }`
[INFO] [stdout] 0956aa36d4af35a50e50daa745587e9f35962a5a7024fdd789015de690ac3d6e
