[INFO] cloning repository https://github.com/niooii/chess-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/niooii/chess-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fniooii%2Fchess-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fniooii%2Fchess-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c03bc2e02af791c2b25fe8e6ea8445e14a46b9ab
[INFO] checking niooii/chess-rs against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fniooii%2Fchess-rs" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/niooii/chess-rs
[INFO] finished tweaking git repo https://github.com/niooii/chess-rs
[INFO] tweaked toml for git repo https://github.com/niooii/chess-rs written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/niooii/chess-rs on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/niooii/chess-rs 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" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded sdl2 v0.36.0
[INFO] [stderr]   Downloaded sdl2-sys v0.36.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5e42327301d207da7ea5456bb4998e6c7e57d68c503528890f7ce918100a8466
[INFO] running `Command { std: "docker" "start" "-a" "5e42327301d207da7ea5456bb4998e6c7e57d68c503528890f7ce918100a8466", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5e42327301d207da7ea5456bb4998e6c7e57d68c503528890f7ce918100a8466", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e42327301d207da7ea5456bb4998e6c7e57d68c503528890f7ce918100a8466", kill_on_drop: false }`
[INFO] [stdout] 5e42327301d207da7ea5456bb4998e6c7e57d68c503528890f7ce918100a8466
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 97c1a2042aaa7c2b188c6f5b9c6b62840af122c6c564267b6b502d13746b8418
[INFO] running `Command { std: "docker" "start" "-a" "97c1a2042aaa7c2b188c6f5b9c6b62840af122c6c564267b6b502d13746b8418", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr] note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr] note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr] note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]    Compiling thiserror v1.0.56
[INFO] [stderr]     Checking chess_engine v0.1.0 (/opt/rustwide/workdir/chess_engine)
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling version-compare v0.1.1
[INFO] [stderr]    Compiling sdl2 v0.36.0
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]    Compiling cmake v0.1.50
[INFO] [stderr]    Compiling sdl2-sys v0.36.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]     Checking chess v0.1.0 (/opt/rustwide/workdir/chess)
[INFO] [stdout] warning: unused imports: `piece::Piece` and `self`
[INFO] [stdout]  --> chess/src/board.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     piece::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     tile::{self, Tile, TileBuilder},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Direction`
[INFO] [stdout]  --> chess/src/game.rs:6:47
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::piece_rules::{MoveRules, Distance, Direction};
[INFO] [stdout]   |                                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::vec2::Vec2`
[INFO] [stdout]   --> chess/src/game.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::vec2::Vec2;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::team::StartInfo`
[INFO] [stdout]  --> chess/src/move.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::team::StartInfo;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::ChessError`
[INFO] [stdout]  --> chess/src/piece.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     error::ChessError,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]    --> chess/src/piece.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |     use std::sync::Arc;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `piece::PieceRef` and `team::Team`
[INFO] [stdout]    --> chess/src/piece.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 241 |         piece::PieceRef,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 242 |         piece_rules::{Direction, Distance, MoveRules, MoveVec, NthMoveRules},
[INFO] [stdout] 243 |         team::Team,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> chess/src/piece_set.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::piece::{self, PieceBuilder};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `RwLock`
[INFO] [stdout]  --> chess/src/team.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> chess/src/team.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::piece::Piece`
[INFO] [stdout]  --> chess/src/team.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::piece::Piece;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]  --> chess/src/tile.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> chess/src/tile.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::piece`
[INFO] [stdout]  --> chess/src/tile.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::piece;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::piece::PieceRef`
[INFO] [stdout]  --> chess/src/tile.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::piece::PieceRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `piece::Piece` and `self`
[INFO] [stdout]  --> chess/src/board.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     piece::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     tile::{self, Tile, TileBuilder},
[INFO] [stdout]   |            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Direction`
[INFO] [stdout]  --> chess/src/game.rs:6:47
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::piece_rules::{MoveRules, Distance, Direction};
[INFO] [stdout]   |                                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::vec2::Vec2`
[INFO] [stdout]   --> chess/src/game.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::vec2::Vec2;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::team::StartInfo`
[INFO] [stdout]  --> chess/src/move.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::team::StartInfo;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::ChessError`
[INFO] [stdout]  --> chess/src/piece.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     error::ChessError,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]    --> chess/src/piece.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |     use std::sync::Arc;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `piece::PieceRef` and `team::Team`
[INFO] [stdout]    --> chess/src/piece.rs:241:9
[INFO] [stdout]     |
[INFO] [stdout] 241 |         piece::PieceRef,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 242 |         piece_rules::{Direction, Distance, MoveRules, MoveVec, NthMoveRules},
[INFO] [stdout] 243 |         team::Team,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> chess/src/piece_set.rs:4:20
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::piece::{self, PieceBuilder};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `RwLock`
[INFO] [stdout]  --> chess/src/team.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::{Arc, RwLock};
[INFO] [stdout]   |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::error::Result`
[INFO] [stdout]  --> chess/src/team.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::error::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::piece::Piece`
[INFO] [stdout]  --> chess/src/team.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::piece::Piece;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Mutex`
[INFO] [stdout]  --> chess/src/tile.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `thiserror::Error`
[INFO] [stdout]  --> chess/src/tile.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use thiserror::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::piece`
[INFO] [stdout]  --> chess/src/tile.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::piece;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::piece::PieceRef`
[INFO] [stdout]  --> chess/src/tile.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::piece::PieceRef;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> chess/src/board.rs:128:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |         todo!();
[INFO] [stdout]     |         ------- any code following this expression is unreachable
[INFO] [stdout] 128 |         let mut x = original.x();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> chess/src/board.rs:128:9
[INFO] [stdout]     |
[INFO] [stdout] 127 |         todo!();
[INFO] [stdout]     |         ------- any code following this expression is unreachable
[INFO] [stdout] 128 |         let mut x = original.x();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> chess/src/board.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let mut x = original.x();
[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]    --> chess/src/board.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let mut y = original.y();
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rel`
[INFO] [stdout]    --> chess/src/board.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let rel = match start_info {
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rel`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original`
[INFO] [stdout]    --> chess/src/board.rs:126:41
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn absolute_coord_to_rel(&self, original: Coord, start_info: StartInfo) -> Coord {
[INFO] [stdout]     |                                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_info`
[INFO] [stdout]    --> chess/src/board.rs:126:58
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn absolute_coord_to_rel(&self, original: Coord, start_info: StartInfo) -> Coord {
[INFO] [stdout]     |                                                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> chess/src/board.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let mut x = original.x();
[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]    --> chess/src/board.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let mut y = original.y();
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rel`
[INFO] [stdout]    --> chess/src/board.rs:131:13
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let rel = match start_info {
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rel`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original`
[INFO] [stdout]    --> chess/src/board.rs:126:41
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn absolute_coord_to_rel(&self, original: Coord, start_info: StartInfo) -> Coord {
[INFO] [stdout]     |                                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `start_info`
[INFO] [stdout]    --> chess/src/board.rs:126:58
[INFO] [stdout]     |
[INFO] [stdout] 126 |     pub fn absolute_coord_to_rel(&self, original: Coord, start_info: StartInfo) -> Coord {
[INFO] [stdout]     |                                                          ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `translation`
[INFO] [stdout]    --> chess/src/game.rs:160:31
[INFO] [stdout]     |
[INFO] [stdout] 160 |             MoveRules::Jump { translation } => {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: try ignoring the field: `translation: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_info`
[INFO] [stdout]    --> chess/src/game.rs:163:35
[INFO] [stdout]     |
[INFO] [stdout] 163 |             MoveRules::LineJump { move_info } => {
[INFO] [stdout]     |                                   ^^^^^^^^^ help: try ignoring the field: `move_info: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_info`
[INFO] [stdout]    --> chess/src/game.rs:166:33
[INFO] [stdout]     |
[INFO] [stdout] 166 |             MoveRules::Pierce { move_info, max_points } => {
[INFO] [stdout]     |                                 ^^^^^^^^^ help: try ignoring the field: `move_info: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_points`
[INFO] [stdout]    --> chess/src/game.rs:166:44
[INFO] [stdout]     |
[INFO] [stdout] 166 |             MoveRules::Pierce { move_info, max_points } => {
[INFO] [stdout]     |                                            ^^^^^^^^^^ help: try ignoring the field: `max_points: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tiles`
[INFO] [stdout]    --> chess/src/game.rs:266:33
[INFO] [stdout]     |
[INFO] [stdout] 266 |             MoveRules::Radius { tiles } => {
[INFO] [stdout]     |                                 ^^^^^ help: try ignoring the field: `tiles: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radius`
[INFO] [stdout]    --> chess/src/game.rs:269:37
[INFO] [stdout]     |
[INFO] [stdout] 269 |             MoveRules::KnightJump { radius, offset } => {
[INFO] [stdout]     |                                     ^^^^^^ help: try ignoring the field: `radius: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]    --> chess/src/game.rs:269:45
[INFO] [stdout]     |
[INFO] [stdout] 269 |             MoveRules::KnightJump { radius, offset } => {
[INFO] [stdout]     |                                             ^^^^^^ help: try ignoring the field: `offset: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `translation`
[INFO] [stdout]    --> chess/src/game.rs:160:31
[INFO] [stdout]     |
[INFO] [stdout] 160 |             MoveRules::Jump { translation } => {
[INFO] [stdout]     |                               ^^^^^^^^^^^ help: try ignoring the field: `translation: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_to_execute`
[INFO] [stdout]    --> chess/src/game.rs:275:36
[INFO] [stdout]     |
[INFO] [stdout] 275 |     pub fn execute_move(&mut self, move_to_execute: &Move) {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_to_execute`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_info`
[INFO] [stdout]    --> chess/src/game.rs:163:35
[INFO] [stdout]     |
[INFO] [stdout] 163 |             MoveRules::LineJump { move_info } => {
[INFO] [stdout]     |                                   ^^^^^^^^^ help: try ignoring the field: `move_info: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_info`
[INFO] [stdout]    --> chess/src/game.rs:166:33
[INFO] [stdout]     |
[INFO] [stdout] 166 |             MoveRules::Pierce { move_info, max_points } => {
[INFO] [stdout]     |                                 ^^^^^^^^^ help: try ignoring the field: `move_info: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_points`
[INFO] [stdout]    --> chess/src/game.rs:166:44
[INFO] [stdout]     |
[INFO] [stdout] 166 |             MoveRules::Pierce { move_info, max_points } => {
[INFO] [stdout]     |                                            ^^^^^^^^^^ help: try ignoring the field: `max_points: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tiles`
[INFO] [stdout]    --> chess/src/game.rs:266:33
[INFO] [stdout]     |
[INFO] [stdout] 266 |             MoveRules::Radius { tiles } => {
[INFO] [stdout]     |                                 ^^^^^ help: try ignoring the field: `tiles: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `radius`
[INFO] [stdout]    --> chess/src/game.rs:269:37
[INFO] [stdout]     |
[INFO] [stdout] 269 |             MoveRules::KnightJump { radius, offset } => {
[INFO] [stdout]     |                                     ^^^^^^ help: try ignoring the field: `radius: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `offset`
[INFO] [stdout]    --> chess/src/game.rs:269:45
[INFO] [stdout]     |
[INFO] [stdout] 269 |             MoveRules::KnightJump { radius, offset } => {
[INFO] [stdout]     |                                             ^^^^^^ help: try ignoring the field: `offset: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_to_execute`
[INFO] [stdout]    --> chess/src/game.rs:275:36
[INFO] [stdout]     |
[INFO] [stdout] 275 |     pub fn execute_move(&mut self, move_to_execute: &Move) {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_to_execute`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> chess/src/piece.rs:210:18
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn build(mut self) -> Result<Piece> {
[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]    --> chess/src/piece.rs:210:18
[INFO] [stdout]     |
[INFO] [stdout] 210 |     pub fn build(mut self) -> Result<Piece> {
[INFO] [stdout]     |                  ----^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_jump`
[INFO] [stdout]    --> chess/src/piece_rules.rs:183:31
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn radius(tiles: u32, can_jump: bool) -> MoveRules {
[INFO] [stdout]     |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_jump`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `repeating`
[INFO] [stdout]    --> chess/src/piece_rules.rs:205:59
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn new(move_rules: Vec<MoveRules>, nth_move: u32, repeating: bool) -> Self {
[INFO] [stdout]     |                                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_repeating`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_jump`
[INFO] [stdout]    --> chess/src/piece_rules.rs:183:31
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn radius(tiles: u32, can_jump: bool) -> MoveRules {
[INFO] [stdout]     |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_jump`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `repeating`
[INFO] [stdout]    --> chess/src/piece_rules.rs:205:59
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub fn new(move_rules: Vec<MoveRules>, nth_move: u32, repeating: bool) -> Self {
[INFO] [stdout]     |                                                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_repeating`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from` and `to` are never read
[INFO] [stdout]    --> chess/src/move.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct MoveLog {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 145 |     from: Coord,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 146 |     to: Coord,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `from` and `to` are never read
[INFO] [stdout]    --> chess/src/move.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct MoveLog {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 145 |     from: Coord,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 146 |     to: Coord,
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> chess/src/move.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         lock.move_contained_piece(self.moved_from);
[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] 163 |         let _ = lock.move_contained_piece(self.moved_from);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> chess/src/tile.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         self.remove_piece();
[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] 75 |         let _ = self.remove_piece();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]    --> chess/src/move.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |         lock.move_contained_piece(self.moved_from);
[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] 163 |         let _ = lock.move_contained_piece(self.moved_from);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `std::result::Result` that must be used
[INFO] [stdout]   --> chess/src/tile.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         self.remove_piece();
[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] 75 |         let _ = self.remove_piece();
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking app v0.1.0 (/opt/rustwide/workdir/app)
[INFO] [stdout] warning: unused imports: `sync::Arc` and `time::Duration`
[INFO] [stdout]  --> app/src/main.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{sync::Arc, time::Duration, collections::HashMap};
[INFO] [stdout]   |           ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `board::Board` and `self`
[INFO] [stdout]  --> app/src/main.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chess::{self, board::Board, game::{Game, self}, piece};
[INFO] [stdout]   |                   ^^^^^^^^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `event::Event`, `keyboard::Keycode`, and `pixels::Color`
[INFO] [stdout]  --> app/src/main.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sdl2::{pixels::Color, event::Event, keyboard::Keycode, render::Texture, image::{InitFlag, LoadTexture}};
[INFO] [stdout]   |            ^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InitFlag` and `LoadTexture`
[INFO] [stdout]  --> app/src/debug_app.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | use sdl2::image::{LoadTexture, InitFlag};
[INFO] [stdout]   |                   ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> app/src/debug_app.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> app/src/main.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |         for y in (0..board.height()) {
[INFO] [stdout]    |                  ^                 ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 33 -         for y in (0..board.height()) {
[INFO] [stdout] 33 +         for y in 0..board.height() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]   --> app/src/main.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     'mainapp: while app.running {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_labels)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `sync::Arc` and `time::Duration`
[INFO] [stdout]  --> app/src/main.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{sync::Arc, time::Duration, collections::HashMap};
[INFO] [stdout]   |           ^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `board::Board` and `self`
[INFO] [stdout]  --> app/src/main.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use chess::{self, board::Board, game::{Game, self}, piece};
[INFO] [stdout]   |                   ^^^^^^^^^^^^               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `event::Event`, `keyboard::Keycode`, and `pixels::Color`
[INFO] [stdout]  --> app/src/main.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sdl2::{pixels::Color, event::Event, keyboard::Keycode, render::Texture, image::{InitFlag, LoadTexture}};
[INFO] [stdout]   |            ^^^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `InitFlag` and `LoadTexture`
[INFO] [stdout]  --> app/src/debug_app.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | use sdl2::image::{LoadTexture, InitFlag};
[INFO] [stdout]   |                   ^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]   --> app/src/debug_app.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::Duration;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> app/src/main.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |         for y in (0..board.height()) {
[INFO] [stdout]    |                  ^                 ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 33 -         for y in (0..board.height()) {
[INFO] [stdout] 33 +         for y in 0..board.height() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]   --> app/src/main.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 61 |     'mainapp: while app.running {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_labels)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `texture_creator`
[INFO] [stdout]   --> app/src/debug_app.rs:40:39
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn init_texturemap(&mut self, texture_creator: &mut TextureCreator<WindowContext>, texture_map: &mut HashMap<String, Texture>) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_texture_creator`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `texture_map`
[INFO] [stdout]   --> app/src/debug_app.rs:40:92
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn init_texturemap(&mut self, texture_creator: &mut TextureCreator<WindowContext>, texture_map: &mut HashMap<String, Texture>) {
[INFO] [stdout]    |                                                                                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_texture_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `texture_creator`
[INFO] [stdout]   --> app/src/debug_app.rs:40:39
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn init_texturemap(&mut self, texture_creator: &mut TextureCreator<WindowContext>, texture_map: &mut HashMap<String, Texture>) {
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_texture_creator`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `texture_map`
[INFO] [stdout]   --> app/src/debug_app.rs:40:92
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub fn init_texturemap(&mut self, texture_creator: &mut TextureCreator<WindowContext>, texture_map: &mut HashMap<String, Texture>) {
[INFO] [stdout]    |                                                                                            ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_texture_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image`
[INFO] [stdout]   --> app/src/main.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let image = sdl2::image::init(InitFlag::all())?;
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `running`
[INFO] [stdout]   --> app/src/main.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let running = true;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_running`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `image`
[INFO] [stdout]   --> app/src/main.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let image = sdl2::image::init(InitFlag::all())?;
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_image`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `running`
[INFO] [stdout]   --> app/src/main.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let running = true;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_running`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `init_texturemap` is never used
[INFO] [stdout]   --> app/src/debug_app.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl App {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn init_texturemap(&mut self, texture_creator: &mut TextureCreator<WindowContext>, texture_map: &mut HashMap<String, Texture>) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `init_texturemap` is never used
[INFO] [stdout]   --> app/src/debug_app.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl App {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn init_texturemap(&mut self, texture_creator: &mut TextureCreator<WindowContext>, texture_map: &mut HashMap<String, Texture>) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 56s
[INFO] running `Command { std: "docker" "inspect" "97c1a2042aaa7c2b188c6f5b9c6b62840af122c6c564267b6b502d13746b8418", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "97c1a2042aaa7c2b188c6f5b9c6b62840af122c6c564267b6b502d13746b8418", kill_on_drop: false }`
[INFO] [stdout] 97c1a2042aaa7c2b188c6f5b9c6b62840af122c6c564267b6b502d13746b8418
