[INFO] cloning repository https://github.com/vilhelmlindell/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/vilhelmlindell/chess-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvilhelmlindell%2Fchess-engine", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvilhelmlindell%2Fchess-engine'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e77e1d664a1d61a6f4a6312a1ea5c782896c48ad
[INFO] checking vilhelmlindell/chess-engine against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvilhelmlindell%2Fchess-engine" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  26% (93/354)
Updating files:  27% (96/354)
Updating files:  28% (100/354)
Updating files:  29% (103/354)
Updating files:  30% (107/354)
Updating files:  31% (110/354)
Updating files:  32% (114/354)
Updating files:  33% (117/354)
Updating files:  34% (121/354)
Updating files:  35% (124/354)
Updating files:  36% (128/354)
Updating files:  37% (131/354)
Updating files:  38% (135/354)
Updating files:  39% (139/354)
Updating files:  39% (140/354)
Updating files:  40% (142/354)
Updating files:  41% (146/354)
Updating files:  42% (149/354)
Updating files:  43% (153/354)
Updating files:  44% (156/354)
Updating files:  45% (160/354)
Updating files:  46% (163/354)
Updating files:  47% (167/354)
Updating files:  48% (170/354)
Updating files:  49% (174/354)
Updating files:  50% (177/354)
Updating files:  51% (181/354)
Updating files:  52% (185/354)
Updating files:  52% (186/354)
Updating files:  53% (188/354)
Updating files:  54% (192/354)
Updating files:  55% (195/354)
Updating files:  56% (199/354)
Updating files:  57% (202/354)
Updating files:  58% (206/354)
Updating files:  59% (209/354)
Updating files:  60% (213/354)
Updating files:  61% (216/354)
Updating files:  62% (220/354)
Updating files:  63% (224/354)
Updating files:  64% (227/354)
Updating files:  65% (231/354)
Updating files:  66% (234/354)
Updating files:  67% (238/354)
Updating files:  68% (241/354)
Updating files:  69% (245/354)
Updating files:  70% (248/354)
Updating files:  71% (252/354)
Updating files:  72% (255/354)
Updating files:  73% (259/354)
Updating files:  74% (262/354)
Updating files:  75% (266/354)
Updating files:  76% (270/354)
Updating files:  77% (273/354)
Updating files:  78% (277/354)
Updating files:  78% (279/354)
Updating files:  79% (280/354)
Updating files:  80% (284/354)
Updating files:  81% (287/354)
Updating files:  82% (291/354)
Updating files:  83% (294/354)
Updating files:  84% (298/354)
Updating files:  85% (301/354)
Updating files:  86% (305/354)
Updating files:  87% (308/354)
Updating files:  88% (312/354)
Updating files:  88% (314/354)
Updating files:  89% (316/354)
Updating files:  90% (319/354)
Updating files:  91% (323/354)
Updating files:  92% (326/354)
Updating files:  93% (330/354)
Updating files:  94% (333/354)
Updating files:  95% (337/354)
Updating files:  96% (340/354)
Updating files:  96% (342/354)
Updating files:  97% (344/354)
Updating files:  98% (347/354)
Updating files:  99% (351/354)
Updating files: 100% (354/354)
Updating files: 100% (354/354), done.
[INFO] started tweaking git repo https://github.com/vilhelmlindell/chess-engine
[INFO] finished tweaking git repo https://github.com/vilhelmlindell/chess-engine
[INFO] tweaked toml for git repo https://github.com/vilhelmlindell/chess-engine written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/vilhelmlindell/chess-engine on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/vilhelmlindell/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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ctor v0.3.6
[INFO] [stderr]   Downloaded ctor-proc-macro v0.0.4
[INFO] [stderr]   Downloaded pyrrhic-rs v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 989172a55fadc70338dc22128235a9d4b7ae322c8a33088b747fec438e150240
[INFO] running `Command { std: "docker" "start" "-a" "989172a55fadc70338dc22128235a9d4b7ae322c8a33088b747fec438e150240", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "989172a55fadc70338dc22128235a9d4b7ae322c8a33088b747fec438e150240", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "989172a55fadc70338dc22128235a9d4b7ae322c8a33088b747fec438e150240", kill_on_drop: false }`
[INFO] [stdout] 989172a55fadc70338dc22128235a9d4b7ae322c8a33088b747fec438e150240
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b89dfe47089b492e609d372c4da4fa43dd3257abb8c44f37400e06c027358054
[INFO] running `Command { std: "docker" "start" "-a" "b89dfe47089b492e609d372c4da4fa43dd3257abb8c44f37400e06c027358054", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling toml_datetime v0.6.8
[INFO] [stderr]    Compiling winnow v0.6.24
[INFO] [stderr]    Compiling indexmap v2.7.1
[INFO] [stderr]     Checking getrandom v0.2.10
[INFO] [stderr]     Checking memmap2 v0.9.5
[INFO] [stderr]    Compiling ctor-proc-macro v0.0.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking pyrrhic-rs v0.2.0
[INFO] [stderr]     Checking ctor v0.3.6
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling syn v2.0.96
[INFO] [stderr]    Compiling toml_edit v0.22.22
[INFO] [stderr]    Compiling proc-macro-crate v3.2.0
[INFO] [stderr]    Compiling derive_more-impl v1.0.0
[INFO] [stderr]    Compiling num_enum_derive v0.7.3
[INFO] [stderr]     Checking num_enum v0.7.3
[INFO] [stderr]     Checking derive_more v1.0.0
[INFO] [stderr]     Checking chess_engine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(portable_simd)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> src/lib.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(portable_simd)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::search::transposition_table::*`
[INFO] [stdout]  --> src/board/board.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::search::transposition_table::*;
[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: `std::sync::LazyLock`
[INFO] [stdout]  --> src/board/zobrist_hash.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::LazyLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Side`
[INFO] [stdout]  --> src/evaluation/evaluation.rs:2:27
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::board::{Board, Side, TOTAL_MATERIAL_STARTPOS};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/move_generation/attack_tables.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::board::direction::{self, Direction};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::LazyLock`
[INFO] [stdout]  --> src/move_generation/attack_tables.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::LazyLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_orthogonal_rays`
[INFO] [stdout]  --> src/perft.rs:5:62
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::move_generation::attack_tables::{get_between_ray, get_orthogonal_rays};
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Bound` and `TranspositionEntry`
[INFO] [stdout]  --> src/perft.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::search::transposition_table::{Bound, TranspositionEntry};
[INFO] [stdout]   |                                          ^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `search`
[INFO] [stdout]  --> src/bench.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::Board, search::{search, Search, SearchMode, SearchParams}};
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::search::transposition_table::*`
[INFO] [stdout]  --> src/board/board.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::search::transposition_table::*;
[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: `crate::board::bitboard::Bitboard`
[INFO] [stdout]  --> src/search/search.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::bitboard::Bitboard;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash` and `simd`
[INFO] [stdout]   --> src/search/search.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | use core::{hash, simd};
[INFO] [stdout]    |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::char::MAX`
[INFO] [stdout]   --> src/search/search.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::char::MAX;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering`
[INFO] [stdout]   --> src/search/search.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::cmp::Ordering;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]   --> src/search/search.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::ops::Deref;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `board`
[INFO] [stdout]    --> src/board/board.rs:781:17
[INFO] [stdout]     |
[INFO] [stdout] 781 |     use crate::{board, move_generation::generate_moves};
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::LazyLock`
[INFO] [stdout]  --> src/board/zobrist_hash.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::LazyLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Side`
[INFO] [stdout]  --> src/evaluation/evaluation.rs:2:27
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::board::{Board, Side, TOTAL_MATERIAL_STARTPOS};
[INFO] [stdout]   |                           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/move_generation/attack_tables.rs:2:31
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::board::direction::{self, Direction};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::LazyLock`
[INFO] [stdout]  --> src/move_generation/attack_tables.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::LazyLock;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_orthogonal_rays`
[INFO] [stdout]  --> src/perft.rs:5:62
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::move_generation::attack_tables::{get_between_ray, get_orthogonal_rays};
[INFO] [stdout]   |                                                              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Bound` and `TranspositionEntry`
[INFO] [stdout]  --> src/perft.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::search::transposition_table::{Bound, TranspositionEntry};
[INFO] [stdout]   |                                          ^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `search`
[INFO] [stdout]  --> src/bench.rs:3:36
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::Board, search::{search, Search, SearchMode, SearchParams}};
[INFO] [stdout]   |                                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::board::bitboard::Bitboard`
[INFO] [stdout]  --> src/search/search.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::bitboard::Bitboard;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `hash` and `simd`
[INFO] [stdout]   --> src/search/search.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | use core::{hash, simd};
[INFO] [stdout]    |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::char::MAX`
[INFO] [stdout]   --> src/search/search.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::char::MAX;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering`
[INFO] [stdout]   --> src/search/search.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use std::cmp::Ordering;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]   --> src/search/search.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::ops::Deref;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/search/search.rs:232:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |             unimplemented!("iterative deepening needs to be enabled");
[INFO] [stdout]     |             --------------------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] 231 |             // Non-iterative deepening: search to the maximum depth directly
[INFO] [stdout] 232 |             let eval = self.pvs::<{ NodeType::Root as u8 }, false>(board, MAX_DEPTH as u32, -MAX_EVAL, MAX_EVAL, 0);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/search/search.rs:232:13
[INFO] [stdout]     |
[INFO] [stdout] 230 |             unimplemented!("iterative deepening needs to be enabled");
[INFO] [stdout]     |             --------------------------------------------------------- any code following this expression is unreachable
[INFO] [stdout] 231 |             // Non-iterative deepening: search to the maximum depth directly
[INFO] [stdout] 232 |             let eval = self.pvs::<{ NodeType::Root as u8 }, false>(board, MAX_DEPTH as u32, -MAX_EVAL, MAX_EVAL, 0);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/board/board.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let mut board = Self::from_fen(STARTING_FEN);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/board/board.rs:151:13
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let mut board = Self::from_fen(STARTING_FEN);
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/move_generation/move_generation.rs:355:113
[INFO] [stdout]     |
[INFO] [stdout] 355 | fn add_moves_new<F: Fn(usize) -> Move>(mov: F, moves: &mut ArrayVec<Move, MAX_LEGAL_MOVES>, bitboard: Bitboard, board: &Board) {
[INFO] [stdout]     |                                                                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prev_mov`
[INFO] [stdout]   --> src/perft.rs:83:49
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn search(result: &mut PerftResult, depth: u32, prev_mov: Move, board: &mut Board) -> u64 {
[INFO] [stdout]    |                                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_mov`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/move_generation/move_generation.rs:355:113
[INFO] [stdout]     |
[INFO] [stdout] 355 | fn add_moves_new<F: Fn(usize) -> Move>(mov: F, moves: &mut ArrayVec<Move, MAX_LEGAL_MOVES>, bitboard: Bitboard, board: &Board) {
[INFO] [stdout]     |                                                                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/search/search.rs:512:13
[INFO] [stdout]     |
[INFO] [stdout] 512 |         let mut hash_move = None;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prev_mov`
[INFO] [stdout]   --> src/perft.rs:83:49
[INFO] [stdout]    |
[INFO] [stdout] 83 | fn search(result: &mut PerftResult, depth: u32, prev_mov: Move, board: &mut Board) -> u64 {
[INFO] [stdout]    |                                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prev_mov`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0554`.
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/search/search.rs:512:13
[INFO] [stdout]     |
[INFO] [stdout] 512 |         let mut hash_move = None;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `chess_engine` (lib) due to 1 previous error; 18 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0554`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `chess_engine` (lib test) due to 1 previous error; 19 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b89dfe47089b492e609d372c4da4fa43dd3257abb8c44f37400e06c027358054", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b89dfe47089b492e609d372c4da4fa43dd3257abb8c44f37400e06c027358054", kill_on_drop: false }`
[INFO] [stdout] b89dfe47089b492e609d372c4da4fa43dd3257abb8c44f37400e06c027358054
