[INFO] cloning repository https://github.com/redark6/rustfinal
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/redark6/rustfinal" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fredark6%2Frustfinal", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fredark6%2Frustfinal'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 712fe2625d49b598f045f9805be12fb74a2c24df
[INFO] testing redark6/rustfinal against 1.90.0 for beta-1.91-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fredark6%2Frustfinal" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/redark6/rustfinal
[INFO] finished tweaking git repo https://github.com/redark6/rustfinal
[INFO] tweaked toml for git repo https://github.com/redark6/rustfinal written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/redark6/rustfinal on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/redark6/rustfinal 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.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded os_str_bytes v6.1.0
[INFO] [stderr]   Downloaded clap v3.2.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a21dd2dd80372baa44def1d9d8dfec7d374ff2972bc4ce25cace5177330a1362
[INFO] running `Command { std: "docker" "start" "-a" "a21dd2dd80372baa44def1d9d8dfec7d374ff2972bc4ce25cace5177330a1362", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a21dd2dd80372baa44def1d9d8dfec7d374ff2972bc4ce25cace5177330a1362", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a21dd2dd80372baa44def1d9d8dfec7d374ff2972bc4ce25cace5177330a1362", kill_on_drop: false }`
[INFO] [stdout] a21dd2dd80372baa44def1d9d8dfec7d374ff2972bc4ce25cace5177330a1362
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3e5157569ee48f48d4fab1c8880033fd12dbb496f9595ba1a6bc67d40c72aebf
[INFO] running `Command { std: "docker" "start" "-a" "3e5157569ee48f48d4fab1c8880033fd12dbb496f9595ba1a6bc67d40c72aebf", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.126
[INFO] [stderr]    Compiling proc-macro2 v1.0.40
[INFO] [stderr]    Compiling unicode-ident v1.0.1
[INFO] [stderr]    Compiling quote v1.0.20
[INFO] [stderr]    Compiling syn v1.0.98
[INFO] [stderr]    Compiling serde_derive v1.0.138
[INFO] [stderr]    Compiling serde v1.0.138
[INFO] [stderr]    Compiling serde_json v1.0.82
[INFO] [stderr]    Compiling hashbrown v0.12.1
[INFO] [stderr]    Compiling os_str_bytes v6.1.0
[INFO] [stderr]    Compiling ryu v1.0.10
[INFO] [stderr]    Compiling indexmap v1.9.1
[INFO] [stderr]    Compiling textwrap v0.15.0
[INFO] [stderr]    Compiling itoa v1.0.2
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling md5 v0.7.0
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling getrandom v0.2.7
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling rand_core v0.6.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling clap v3.2.8
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling client v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io::Bytes`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::rngs::ThreadRng`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rand::rngs::ThreadRng;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::transmute`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::mem::transmute;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `clap::builder::TypedValueParser`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use clap::builder::TypedValueParser;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_leading_zeros` is never read
[INFO] [stdout]   --> src/hash_cash_challenge.rs:33:17
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let mut current_leading_zeros: u32 = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/hash_cash_challenge.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let mut hexa_seed = format!("{:01$X}", seed, 16);
[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/monstrous_maze_challenge.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 111 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:130:21
[INFO] [stdout]     |
[INFO] [stdout] 130 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:149:21
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:169:21
[INFO] [stdout]     |
[INFO] [stdout] 169 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.clone();
[INFO] [stdout]     |                     ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/main.rs:66:61
[INFO] [stdout]    |
[INFO] [stdout] 66 | ...                   if let Challenge::RecoverSecret(input) = mes {
[INFO] [stdout]    |                                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `name` is never used
[INFO] [stdout]  --> src/hash_cash_challenge/challenge_trait.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait ChallengeTrait {
[INFO] [stdout]   |           -------------- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 7 |     fn name() -> String;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Grid {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 25 |     grid: Vec<String>,
[INFO] [stdout] 26 |     start: (u64, u64),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 27 |     end: (u64, u64),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `name` is never used
[INFO] [stdout]  --> src/monstrous_maze_challenge/challenge_trait.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait ChallengeTrait {
[INFO] [stdout]   |           -------------- associated function in this trait
[INFO] [stdout] ...
[INFO] [stdout] 7 |     fn name() -> String;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `inputValue` should have a snake case name
[INFO] [stdout]   --> src/main.rs:52:37
[INFO] [stdout]    |
[INFO] [stdout] 52 | ...                   let inputValue = MD5HashCashInput{complexity: input.complexity.clone() ,message: input.message.clone()};
[INFO] [stdout]    |                           ^^^^^^^^^^ help: convert the identifier to snake case: `input_value`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `inputValue` should have a snake case name
[INFO] [stdout]   --> src/main.rs:60:37
[INFO] [stdout]    |
[INFO] [stdout] 60 | ...                   let inputValue = MonstrousMazeInput{grid: input.grid.clone() ,endurance: input.endurance.clone()};
[INFO] [stdout]    |                           ^^^^^^^^^^ help: convert the identifier to snake case: `input_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     stream.read( &mut array);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let _ = stream.read( &mut array);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     stream.read(&mut vector);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let _ = stream.read(&mut vector);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     stream.write_all(&message_to_serialized.as_bytes());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 136 |     let _ = stream.write_all(&message_to_serialized.as_bytes());
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `startPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub startPoint: (u64, u64),
[INFO] [stdout]    |         ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `endPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub endPoint: (u64, u64),
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `mazeString` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:44:28
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn stringified_maze_to(mazeString: String) -> (Vec<String>, (u64, u64), (u64, u64)) {
[INFO] [stdout]    |                            ^^^^^^^^^^ help: convert the identifier to snake case: `maze_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut startPoint: (u64, u64) = (0, 0);
[INFO] [stdout]    |                 ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `endPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:47:17
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut endPoint: (u64, u64) = (0, 0);
[INFO] [stdout]    |                 ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startX` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |             let startX = row.find(MonstrousMaze::START_CHARACTER) ;
[INFO] [stdout]    |                 ^^^^^^ help: convert the identifier to snake case: `start_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `endX` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |             let endX = row.find(MonstrousMaze::END_CHARACTER) ;
[INFO] [stdout]    |                 ^^^^ help: convert the identifier to snake case: `end_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startPoint` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:198:20
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let (maze, startPoint, endPoint) = MonstrousMaze::stringified_maze_to("│Y M X│".to_string());
[INFO] [stdout]     |                    ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `endPoint` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:198:32
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let (maze, startPoint, endPoint) = MonstrousMaze::stringified_maze_to("│Y M X│".to_string());
[INFO] [stdout]     |                                ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startX` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:226:17
[INFO] [stdout]     |
[INFO] [stdout] 226 |         let mut startX = self.startPoint.1.clone();
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `start_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startY` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:227:17
[INFO] [stdout]     |
[INFO] [stdout] 227 |         let mut startY = self.startPoint.0.clone();
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `start_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.45s
[INFO] running `Command { std: "docker" "inspect" "3e5157569ee48f48d4fab1c8880033fd12dbb496f9595ba1a6bc67d40c72aebf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e5157569ee48f48d4fab1c8880033fd12dbb496f9595ba1a6bc67d40c72aebf", kill_on_drop: false }`
[INFO] [stdout] 3e5157569ee48f48d4fab1c8880033fd12dbb496f9595ba1a6bc67d40c72aebf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6a62d6d0761caa5cb3f5abc95ea0bfd58485e7770eca20ad854732d29a8cf8ac
[INFO] running `Command { std: "docker" "start" "-a" "6a62d6d0761caa5cb3f5abc95ea0bfd58485e7770eca20ad854732d29a8cf8ac", kill_on_drop: false }`
[INFO] [stderr]    Compiling client v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io::Bytes`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Bytes;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::thread;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::rngs::ThreadRng`
[INFO] [stdout]  --> src/hash_cash_challenge.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use rand::rngs::ThreadRng;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::transmute`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::mem::transmute;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `clap::builder::TypedValueParser`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use clap::builder::TypedValueParser;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `current_leading_zeros` is never read
[INFO] [stdout]   --> src/hash_cash_challenge.rs:33:17
[INFO] [stdout]    |
[INFO] [stdout] 33 |         let mut current_leading_zeros: u32 = 0;
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/hash_cash_challenge.rs:43:13
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let mut hexa_seed = format!("{:01$X}", seed, 16);
[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/monstrous_maze_challenge.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 111 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:130:21
[INFO] [stdout]     |
[INFO] [stdout] 130 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:149:21
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:169:21
[INFO] [stdout]     |
[INFO] [stdout] 169 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.clone();
[INFO] [stdout]     |                     ----^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/main.rs:66:61
[INFO] [stdout]    |
[INFO] [stdout] 66 | ...                   if let Challenge::RecoverSecret(input) = mes {
[INFO] [stdout]    |                                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Grid {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] 25 |     grid: Vec<String>,
[INFO] [stdout] 26 |     start: (u64, u64),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 27 |     end: (u64, u64),
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `inputValue` should have a snake case name
[INFO] [stdout]   --> src/main.rs:52:37
[INFO] [stdout]    |
[INFO] [stdout] 52 | ...                   let inputValue = MD5HashCashInput{complexity: input.complexity.clone() ,message: input.message.clone()};
[INFO] [stdout]    |                           ^^^^^^^^^^ help: convert the identifier to snake case: `input_value`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `inputValue` should have a snake case name
[INFO] [stdout]   --> src/main.rs:60:37
[INFO] [stdout]    |
[INFO] [stdout] 60 | ...                   let inputValue = MonstrousMazeInput{grid: input.grid.clone() ,endurance: input.endurance.clone()};
[INFO] [stdout]    |                           ^^^^^^^^^^ help: convert the identifier to snake case: `input_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/main.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     stream.read( &mut array);
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 99 |     let _ = stream.read( &mut array);
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     stream.read(&mut vector);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let _ = stream.read(&mut vector);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/main.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     stream.write_all(&message_to_serialized.as_bytes());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 136 |     let _ = stream.write_all(&message_to_serialized.as_bytes());
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `startPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub startPoint: (u64, u64),
[INFO] [stdout]    |         ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `endPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub endPoint: (u64, u64),
[INFO] [stdout]    |         ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `mazeString` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:44:28
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn stringified_maze_to(mazeString: String) -> (Vec<String>, (u64, u64), (u64, u64)) {
[INFO] [stdout]    |                            ^^^^^^^^^^ help: convert the identifier to snake case: `maze_string`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let mut startPoint: (u64, u64) = (0, 0);
[INFO] [stdout]    |                 ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `endPoint` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:47:17
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let mut endPoint: (u64, u64) = (0, 0);
[INFO] [stdout]    |                 ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startX` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |             let startX = row.find(MonstrousMaze::START_CHARACTER) ;
[INFO] [stdout]    |                 ^^^^^^ help: convert the identifier to snake case: `start_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `endX` should have a snake case name
[INFO] [stdout]   --> src/monstrous_maze_challenge.rs:51:17
[INFO] [stdout]    |
[INFO] [stdout] 51 |             let endX = row.find(MonstrousMaze::END_CHARACTER) ;
[INFO] [stdout]    |                 ^^^^ help: convert the identifier to snake case: `end_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startPoint` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:198:20
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let (maze, startPoint, endPoint) = MonstrousMaze::stringified_maze_to("│Y M X│".to_string());
[INFO] [stdout]     |                    ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `endPoint` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:198:32
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let (maze, startPoint, endPoint) = MonstrousMaze::stringified_maze_to("│Y M X│".to_string());
[INFO] [stdout]     |                                ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startX` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:226:17
[INFO] [stdout]     |
[INFO] [stdout] 226 |         let mut startX = self.startPoint.1.clone();
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `start_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `startY` should have a snake case name
[INFO] [stdout]    --> src/monstrous_maze_challenge.rs:227:17
[INFO] [stdout]     |
[INFO] [stdout] 227 |         let mut startY = self.startPoint.0.clone();
[INFO] [stdout]     |                 ^^^^^^ help: convert the identifier to snake case: `start_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.93s
[INFO] running `Command { std: "docker" "inspect" "6a62d6d0761caa5cb3f5abc95ea0bfd58485e7770eca20ad854732d29a8cf8ac", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6a62d6d0761caa5cb3f5abc95ea0bfd58485e7770eca20ad854732d29a8cf8ac", kill_on_drop: false }`
[INFO] [stdout] 6a62d6d0761caa5cb3f5abc95ea0bfd58485e7770eca20ad854732d29a8cf8ac
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] fe7c0938e19b3afd0791cbbd4e1e7a6c0b0a0123476eb9c3d4c17b1b3bc6bbbe
[INFO] running `Command { std: "docker" "start" "-a" "fe7c0938e19b3afd0791cbbd4e1e7a6c0b0a0123476eb9c3d4c17b1b3bc6bbbe", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::io::Bytes`
[INFO] [stderr]  --> src/hash_cash_challenge.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::io::Bytes;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::Deref`
[INFO] [stderr]  --> src/hash_cash_challenge.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::ops::Deref;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread`
[INFO] [stderr]  --> src/hash_cash_challenge.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::thread;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rand::rngs::ThreadRng`
[INFO] [stderr]  --> src/hash_cash_challenge.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use rand::rngs::ThreadRng;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem::transmute`
[INFO] [stderr]   --> src/main.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::mem::transmute;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `clap::builder::TypedValueParser`
[INFO] [stderr]   --> src/main.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use clap::builder::TypedValueParser;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `current_leading_zeros` is never read
[INFO] [stderr]   --> src/hash_cash_challenge.rs:33:17
[INFO] [stderr]    |
[INFO] [stderr] 33 |         let mut current_leading_zeros: u32 = 0;
[INFO] [stderr]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: maybe it is overwritten before being read?
[INFO] [stderr]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/hash_cash_challenge.rs:43:13
[INFO] [stderr]    |
[INFO] [stderr] 43 |         let mut hexa_seed = format!("{:01$X}", seed, 16);
[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/monstrous_maze_challenge.rs:111:21
[INFO] [stderr]     |
[INFO] [stderr] 111 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:130:21
[INFO] [stderr]     |
[INFO] [stderr] 130 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:149:21
[INFO] [stderr]     |
[INFO] [stderr] 149 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.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/monstrous_maze_challenge.rs:169:21
[INFO] [stderr]     |
[INFO] [stderr] 169 |                 let mut visited_coordinates = grid_possible_solution.visited_coordinates.clone();
[INFO] [stderr]     |                     ----^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `input`
[INFO] [stderr]   --> src/main.rs:66:61
[INFO] [stderr]    |
[INFO] [stderr] 66 | ...                   if let Challenge::RecoverSecret(input) = mes {
[INFO] [stderr]    |                                                       ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `start` and `end` are never read
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | struct Grid {
[INFO] [stderr]    |        ---- fields in this struct
[INFO] [stderr] 25 |     grid: Vec<String>,
[INFO] [stderr] 26 |     start: (u64, u64),
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 27 |     end: (u64, u64),
[INFO] [stderr]    |     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `inputValue` should have a snake case name
[INFO] [stderr]   --> src/main.rs:52:37
[INFO] [stderr]    |
[INFO] [stderr] 52 | ...                   let inputValue = MD5HashCashInput{complexity: input.complexity.clone() ,message: input.message.clone()};
[INFO] [stderr]    |                           ^^^^^^^^^^ help: convert the identifier to snake case: `input_value`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable `inputValue` should have a snake case name
[INFO] [stderr]   --> src/main.rs:60:37
[INFO] [stderr]    |
[INFO] [stderr] 60 | ...                   let inputValue = MonstrousMazeInput{grid: input.grid.clone() ,endurance: input.endurance.clone()};
[INFO] [stderr]    |                           ^^^^^^^^^^ help: convert the identifier to snake case: `input_value`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/main.rs:99:5
[INFO] [stderr]    |
[INFO] [stderr] 99 |     stream.read( &mut array);
[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] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 99 |     let _ = stream.read( &mut array);
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/main.rs:107:5
[INFO] [stderr]     |
[INFO] [stderr] 107 |     stream.read(&mut vector);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 107 |     let _ = stream.read(&mut vector);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/main.rs:136:5
[INFO] [stderr]     |
[INFO] [stderr] 136 |     stream.write_all(&message_to_serialized.as_bytes());
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 136 |     let _ = stream.write_all(&message_to_serialized.as_bytes());
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `startPoint` should have a snake case name
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:20:9
[INFO] [stderr]    |
[INFO] [stderr] 20 |     pub startPoint: (u64, u64),
[INFO] [stderr]    |         ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stderr] 
[INFO] [stderr] warning: structure field `endPoint` should have a snake case name
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:21:9
[INFO] [stderr]    |
[INFO] [stderr] 21 |     pub endPoint: (u64, u64),
[INFO] [stderr]    |         ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `mazeString` should have a snake case name
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:44:28
[INFO] [stderr]    |
[INFO] [stderr] 44 |     fn stringified_maze_to(mazeString: String) -> (Vec<String>, (u64, u64), (u64, u64)) {
[INFO] [stderr]    |                            ^^^^^^^^^^ help: convert the identifier to snake case: `maze_string`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `startPoint` should have a snake case name
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:46:17
[INFO] [stderr]    |
[INFO] [stderr] 46 |         let mut startPoint: (u64, u64) = (0, 0);
[INFO] [stderr]    |                 ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `endPoint` should have a snake case name
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:47:17
[INFO] [stderr]    |
[INFO] [stderr] 47 |         let mut endPoint: (u64, u64) = (0, 0);
[INFO] [stderr]    |                 ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `startX` should have a snake case name
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:50:17
[INFO] [stderr]    |
[INFO] [stderr] 50 |             let startX = row.find(MonstrousMaze::START_CHARACTER) ;
[INFO] [stderr]    |                 ^^^^^^ help: convert the identifier to snake case: `start_x`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `endX` should have a snake case name
[INFO] [stderr]   --> src/monstrous_maze_challenge.rs:51:17
[INFO] [stderr]    |
[INFO] [stderr] 51 |             let endX = row.find(MonstrousMaze::END_CHARACTER) ;
[INFO] [stderr]    |                 ^^^^ help: convert the identifier to snake case: `end_x`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `startPoint` should have a snake case name
[INFO] [stderr]    --> src/monstrous_maze_challenge.rs:198:20
[INFO] [stderr]     |
[INFO] [stderr] 198 |         let (maze, startPoint, endPoint) = MonstrousMaze::stringified_maze_to("│Y M X│".to_string());
[INFO] [stderr]     |                    ^^^^^^^^^^ help: convert the identifier to snake case: `start_point`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `endPoint` should have a snake case name
[INFO] [stderr]    --> src/monstrous_maze_challenge.rs:198:32
[INFO] [stderr]     |
[INFO] [stderr] 198 |         let (maze, startPoint, endPoint) = MonstrousMaze::stringified_maze_to("│Y M X│".to_string());
[INFO] [stderr]     |                                ^^^^^^^^ help: convert the identifier to snake case: `end_point`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `startX` should have a snake case name
[INFO] [stderr]    --> src/monstrous_maze_challenge.rs:226:17
[INFO] [stderr]     |
[INFO] [stderr] 226 |         let mut startX = self.startPoint.1.clone();
[INFO] [stderr]     |                 ^^^^^^ help: convert the identifier to snake case: `start_x`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `startY` should have a snake case name
[INFO] [stderr]    --> src/monstrous_maze_challenge.rs:227:17
[INFO] [stderr]     |
[INFO] [stderr] 227 |         let mut startY = self.startPoint.0.clone();
[INFO] [stderr]     |                 ^^^^^^ help: convert the identifier to snake case: `start_y`
[INFO] [stderr] 
[INFO] [stderr] warning: `client` (bin "server" test) generated 30 warnings (run `cargo fix --bin "server" --tests` to apply 10 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/server-e5cbfae2635d5090)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test hash_cash_challenge::tests_hash_cash::is_hash_cash_digest ... ok
[INFO] [stdout] test hash_cash_challenge::tests_hash_cash::is_hash_cash_name ... ok
[INFO] [stdout] test hash_cash_challenge::tests_hash_cash::is_hash_cash_verify ... ok
[INFO] [stdout] test monstrous_maze_challenge::tests_monstrous_maze::is_monstrous_maze_in_grid ... ok
[INFO] [stdout] test monstrous_maze_challenge::tests_monstrous_maze::is_monstrous_maze_monster ... ok
[INFO] [stdout] test monstrous_maze_challenge::tests_monstrous_maze::is_monstrous_maze_name ... ok
[INFO] [stdout] test monstrous_maze_challenge::tests_monstrous_maze::is_monstrous_maze_new ... ok
[INFO] [stdout] test monstrous_maze_challenge::tests_monstrous_maze::is_monstrous_maze_verify ... ok
[INFO] [stdout] test hash_cash_challenge::tests_hash_cash::is_hash_cash_new ... ok
[INFO] [stdout] test hash_cash_challenge::tests_hash_cash::is_hash_cash_get_leading_zeros ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "fe7c0938e19b3afd0791cbbd4e1e7a6c0b0a0123476eb9c3d4c17b1b3bc6bbbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe7c0938e19b3afd0791cbbd4e1e7a6c0b0a0123476eb9c3d4c17b1b3bc6bbbe", kill_on_drop: false }`
[INFO] [stdout] fe7c0938e19b3afd0791cbbd4e1e7a6c0b0a0123476eb9c3d4c17b1b3bc6bbbe
