[INFO] cloning repository https://github.com/mohamedimrane/chess-engine
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mohamedimrane/chess-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohamedimrane%2Fchess-engine", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohamedimrane%2Fchess-engine'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6f7d37dffc1a46d91f8b60a97e5f718c1d984542
[INFO] checking mohamedimrane/chess-engine against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohamedimrane%2Fchess-engine" "/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/mohamedimrane/chess-engine
[INFO] finished tweaking git repo https://github.com/mohamedimrane/chess-engine
[INFO] tweaked toml for git repo https://github.com/mohamedimrane/chess-engine written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mohamedimrane/chess-engine on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mohamedimrane/chess-engine 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded color-print v0.3.5
[INFO] [stderr]   Downloaded color-print-proc-macro v0.3.5
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] dcea686cb9b4404662cfc3b353e87fe23b9ab82947fa9fec4df3968f43d172c0
[INFO] running `Command { std: "docker" "start" "-a" "dcea686cb9b4404662cfc3b353e87fe23b9ab82947fa9fec4df3968f43d172c0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dcea686cb9b4404662cfc3b353e87fe23b9ab82947fa9fec4df3968f43d172c0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dcea686cb9b4404662cfc3b353e87fe23b9ab82947fa9fec4df3968f43d172c0", kill_on_drop: false }`
[INFO] [stdout] dcea686cb9b4404662cfc3b353e87fe23b9ab82947fa9fec4df3968f43d172c0
[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=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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1ae10b6cade02b0fa56a136ad10058c1990de4d4ef83bd722953265559207488
[INFO] running `Command { std: "docker" "start" "-a" "1ae10b6cade02b0fa56a136ad10058c1990de4d4ef83bd722953265559207488", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.76
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling color-print-proc-macro v0.3.5
[INFO] [stderr]     Checking color-print v0.3.5
[INFO] [stderr]     Checking rust-chess-engine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `get_file_number`
[INFO] [stdout]  --> src/main.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use utils::{get_file_number, string_to_square};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_file_number`
[INFO] [stdout]  --> src/main.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | use utils::{get_file_number, string_to_square};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `en_passant_squage_seg`
[INFO] [stdout]    --> src/board.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let en_passant_squage_seg = splited_fen.get(3).copied().ok_or(FENotEnoughParts)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_en_passant_squage_seg`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halfmove_clock_seg`
[INFO] [stdout]    --> src/board.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let halfmove_clock_seg = splited_fen.get(4).copied().ok_or(FENotEnoughParts)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_halfmove_clock_seg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `en_passant_squage_seg`
[INFO] [stdout]    --> src/board.rs:112:13
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let en_passant_squage_seg = splited_fen.get(3).copied().ok_or(FENotEnoughParts)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_en_passant_squage_seg`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fullmove_number_seg`
[INFO] [stdout]    --> src/board.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let fullmove_number_seg = splited_fen.get(5).copied().ok_or(FENotEnoughParts)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fullmove_number_seg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `halfmove_clock_seg`
[INFO] [stdout]    --> src/board.rs:113:13
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let halfmove_clock_seg = splited_fen.get(4).copied().ok_or(FENotEnoughParts)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_halfmove_clock_seg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fullmove_number_seg`
[INFO] [stdout]    --> src/board.rs:114:13
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let fullmove_number_seg = splited_fen.get(5).copied().ok_or(FENotEnoughParts)?;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fullmove_number_seg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/castling_rights.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             _ => unreachable!(),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/castling_rights.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Colour::White => Self::white_rights(rights),
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] 35 |             Colour::Black => Self::black_rights(rights),
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] 36 |             _ => unreachable!(),
[INFO] [stdout]    |             ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/castling_rights.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |             _ => unreachable!(),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/castling_rights.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Colour::White => Self::white_rights(rights),
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] 35 |             Colour::Black => Self::black_rights(rights),
[INFO] [stdout]    |             ------------- matches some of the same values
[INFO] [stdout] 36 |             _ => unreachable!(),
[INFO] [stdout]    |             ^ collectively making this unreachable
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/errors.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             _ => write!(f, "error message lol"),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/errors.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             FenError::NotEnoughParts => write!(f, "not enough parts in FEN string"),
[INFO] [stdout]    |             ------------------------ matches some of the same values
[INFO] [stdout] 69 |             FenError::TooManyPieces(a) => write!(f, "too many pieces {} in FEN string", a),
[INFO] [stdout]    |             -------------------------- matches some of the same values
[INFO] [stdout] 70 |             FenError::UnknownPiece(a) => write!(f, "unknown piece {} in FEN string", a),
[INFO] [stdout]    |             ------------------------- matches some of the same values
[INFO] [stdout] 71 |             FenError::BadPlacement(a) => write!(f, "bad placement {} in FEN string", a),
[INFO] [stdout]    |             ------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 79 |             _ => write!(f, "error message lol"),
[INFO] [stdout]    |             ^ ...and 5 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/errors.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             _ => write!(f, "error message lol"),
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]   --> src/errors.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |             FenError::NotEnoughParts => write!(f, "not enough parts in FEN string"),
[INFO] [stdout]    |             ------------------------ matches some of the same values
[INFO] [stdout] 69 |             FenError::TooManyPieces(a) => write!(f, "too many pieces {} in FEN string", a),
[INFO] [stdout]    |             -------------------------- matches some of the same values
[INFO] [stdout] 70 |             FenError::UnknownPiece(a) => write!(f, "unknown piece {} in FEN string", a),
[INFO] [stdout]    |             ------------------------- matches some of the same values
[INFO] [stdout] 71 |             FenError::BadPlacement(a) => write!(f, "bad placement {} in FEN string", a),
[INFO] [stdout]    |             ------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 79 |             _ => write!(f, "error message lol"),
[INFO] [stdout]    |             ^ ...and 5 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WEST` is never used
[INFO] [stdout]   --> src/board.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const WEST: usize = 2;
[INFO] [stdout]    |       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EAST` is never used
[INFO] [stdout]   --> src/board.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const EAST: usize = 3;
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_fen` is never used
[INFO] [stdout]    --> src/board.rs:105:12
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl Board {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn from_fen(fen: &'static str) -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `WhiteCanShortCastle`, `WhiteCanLongCastle`, `BlackCanShortCastle`, `BlackCanLongCastle`, and `CanCastle` are never used
[INFO] [stdout]   --> src/castling_rights.rs:8:15
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl CastlingRights {
[INFO] [stdout]    | ------------------- associated constants in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  8 |     pub const WhiteCanShortCastle: u8 = 0b00000001;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     pub const WhiteCanLongCastle: u8 = 0b00000010;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub const BlackCanShortCastle: u8 = 0b00010000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     pub const BlackCanLongCastle: u8 = 0b00100000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |
[INFO] [stdout] 16 |     pub const CanCastle: u8 = 0b00000011;
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WEST` is never used
[INFO] [stdout]   --> src/board.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const WEST: usize = 2;
[INFO] [stdout]    |       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidRank` is never constructed
[INFO] [stdout]   --> src/errors.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum MoveError {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     InvalidRank,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MoveError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EAST` is never used
[INFO] [stdout]   --> src/board.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const EAST: usize = 3;
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FenError` is never used
[INFO] [stdout]   --> src/errors.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum FenError<'a> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/moves.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl MoveRecord {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 103 |     pub fn new(v_move: u16, piece_on_target_square: u8) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_fen` is never used
[INFO] [stdout]    --> src/board.rs:105:12
[INFO] [stdout]     |
[INFO] [stdout]  72 | impl Board {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 105 |     pub fn from_fen(fen: &'static str) -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `WhiteCanShortCastle`, `WhiteCanLongCastle`, `BlackCanShortCastle`, `BlackCanLongCastle`, and `CanCastle` are never used
[INFO] [stdout]   --> src/castling_rights.rs:8:15
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl CastlingRights {
[INFO] [stdout]    | ------------------- associated constants in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  8 |     pub const WhiteCanShortCastle: u8 = 0b00000001;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     pub const WhiteCanLongCastle: u8 = 0b00000010;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub const BlackCanShortCastle: u8 = 0b00010000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     pub const BlackCanLongCastle: u8 = 0b00100000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 15 |
[INFO] [stdout] 16 |     pub const CanCastle: u8 = 0b00000011;
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidRank` is never constructed
[INFO] [stdout]   --> src/errors.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum MoveError {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     InvalidRank,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MoveError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FenError` is never used
[INFO] [stdout]   --> src/errors.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum FenError<'a> {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/moves.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl MoveRecord {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 103 |     pub fn new(v_move: u16, piece_on_target_square: u8) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub const WhiteCanCastle: u8 = 0b00000011;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_CASTLE`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanNotCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub const WhiteCanNotCastle: u8 = 0b00000000;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_NOT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanShortCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub const WhiteCanShortCastle: u8 = 0b00000001;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_SHORT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanLongCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub const WhiteCanLongCastle: u8 = 0b00000010;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_LONG_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub const BlackCanCastle: u8 = 0b00110000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanNotCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub const BlackCanNotCastle: u8 = 0b00000000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_NOT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanShortCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub const BlackCanShortCastle: u8 = 0b00010000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_SHORT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanLongCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub const BlackCanLongCastle: u8 = 0b00100000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_LONG_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub const CanCastle: u8 = 0b00000011;
[INFO] [stdout]    |               ^^^^^^^^^ help: convert the identifier to upper case: `CAN_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanNotCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub const CanNotCastle: u8 = 0b00000000;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_NOT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanShortCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub const CanShortCastle: u8 = 0b00000001;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_SHORT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanLongCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub const CanLongCastle: u8 = 0b00000010;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_LONG_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `white_rights_mask` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:21:15
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub const white_rights_mask: u8 = 0b00001111;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_RIGHTS_MASK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `black_rights_mask` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const black_rights_mask: u8 = 0b11110000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_RIGHTS_MASK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `White` should have an upper case name
[INFO] [stdout]  --> src/colour.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub const White: bool = true;
[INFO] [stdout]   |               ^^^^^ help: convert the identifier to upper case: `WHITE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Black` should have an upper case name
[INFO] [stdout]  --> src/colour.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub const Black: bool = false;
[INFO] [stdout]   |               ^^^^^ help: convert the identifier to upper case: `BLACK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub const WhiteCanCastle: u8 = 0b00000011;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_CASTLE`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanNotCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:7:15
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pub const WhiteCanNotCastle: u8 = 0b00000000;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_NOT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanShortCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub const WhiteCanShortCastle: u8 = 0b00000001;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_SHORT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `WhiteCanLongCastle` should have an upper case name
[INFO] [stdout]  --> src/castling_rights.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub const WhiteCanLongCastle: u8 = 0b00000010;
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_LONG_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub const BlackCanCastle: u8 = 0b00110000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanNotCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub const BlackCanNotCastle: u8 = 0b00000000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_NOT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanShortCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub const BlackCanShortCastle: u8 = 0b00010000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_SHORT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `BlackCanLongCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub const BlackCanLongCastle: u8 = 0b00100000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_LONG_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:16:15
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub const CanCastle: u8 = 0b00000011;
[INFO] [stdout]    |               ^^^^^^^^^ help: convert the identifier to upper case: `CAN_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanNotCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pub const CanNotCastle: u8 = 0b00000000;
[INFO] [stdout]    |               ^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_NOT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanShortCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:18:15
[INFO] [stdout]    |
[INFO] [stdout] 18 |     pub const CanShortCastle: u8 = 0b00000001;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_SHORT_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `CanLongCastle` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub const CanLongCastle: u8 = 0b00000010;
[INFO] [stdout]    |               ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_LONG_CASTLE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `white_rights_mask` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:21:15
[INFO] [stdout]    |
[INFO] [stdout] 21 |     pub const white_rights_mask: u8 = 0b00001111;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_RIGHTS_MASK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `black_rights_mask` should have an upper case name
[INFO] [stdout]   --> src/castling_rights.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub const black_rights_mask: u8 = 0b11110000;
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_RIGHTS_MASK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `White` should have an upper case name
[INFO] [stdout]  --> src/colour.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub const White: bool = true;
[INFO] [stdout]   |               ^^^^^ help: convert the identifier to upper case: `WHITE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `Black` should have an upper case name
[INFO] [stdout]  --> src/colour.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pub const Black: bool = false;
[INFO] [stdout]   |               ^^^^^ help: convert the identifier to upper case: `BLACK`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.39s
[INFO] running `Command { std: "docker" "inspect" "1ae10b6cade02b0fa56a136ad10058c1990de4d4ef83bd722953265559207488", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1ae10b6cade02b0fa56a136ad10058c1990de4d4ef83bd722953265559207488", kill_on_drop: false }`
[INFO] [stdout] 1ae10b6cade02b0fa56a136ad10058c1990de4d4ef83bd722953265559207488
