[INFO] fetching crate monster_chess 0.0.18...
[INFO] testing monster_chess-0.0.18 against beta-2023-04-20 for beta-1.70-1
[INFO] extracting crate monster_chess 0.0.18 into /workspace/builds/worker-4-tc2/source
[INFO] validating manifest of crates.io crate monster_chess 0.0.18 on toolchain beta-2023-04-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate monster_chess 0.0.18
[INFO] finished tweaking crates.io crate monster_chess 0.0.18
[INFO] tweaked toml for crates.io crate monster_chess 0.0.18 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-04-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e700c4228b950b7974ea586b9d5c667adc918d31efbe46513cf4d0f58a2d4253
[INFO] running `Command { std: "docker" "start" "-a" "e700c4228b950b7974ea586b9d5c667adc918d31efbe46513cf4d0f58a2d4253", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e700c4228b950b7974ea586b9d5c667adc918d31efbe46513cf4d0f58a2d4253", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e700c4228b950b7974ea586b9d5c667adc918d31efbe46513cf4d0f58a2d4253", kill_on_drop: false }`
[INFO] [stdout] e700c4228b950b7974ea586b9d5c667adc918d31efbe46513cf4d0f58a2d4253
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ac44c6dc3fc0201bf4a18ddc039a50dcfd072413ffe7b325d99596d3ea3709f9
[INFO] running `Command { std: "docker" "start" "-a" "ac44c6dc3fc0201bf4a18ddc039a50dcfd072413ffe7b325d99596d3ea3709f9", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver v1.0.17
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling shell-words v1.1.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling hash32 v0.2.1
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling heapless v0.7.16
[INFO] [stderr]    Compiling monster_chess v0.0.18 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Action`, `Board`, `HistoryMove`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/edges.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/board/edges.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 |         left |= (left << (cols));
[INFO] [stdout]    |                 ^              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 27 -         left |= (left << (cols));
[INFO] [stdout] 27 +         left |= left << (cols);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/args.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/init.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/options.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 |         actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 6 |         game::Game,
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 7 |         pieces::Piece,
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout] 8 |         Board, Cols, Rows,
[INFO] [stdout]   |                ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`
[INFO] [stdout]  --> src/board/fen/state.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`
[INFO] [stdout]  --> src/board/perft.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 3 |     edges::Edges,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 4 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cols`, `Rows`, `UndoMoveError`
[INFO] [stdout]   --> src/board/pieces/mod.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  |         UndoMoveError, Move, ActionInfo, TurnInfo,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     AttackDirections, AttackLookup, Board, BoardState, Cols, PieceType, Rows, update_turns, reverse_turns,
[INFO] [stdout]    |                                                        ^^^^             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/positions.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 |     actions::{Action, HistoryMove, UndoMoveError, Move},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 3 |     edges::Edges,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 4 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 5 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `game::Game`
[INFO] [stdout]  --> src/board/zobrist.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{Board, game::Game};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/board/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrand`
[INFO] [stdout]  --> src/board/util.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use fastrand;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `UndoMoveError`, `zobrist::ZobristHashTable`
[INFO] [stdout]   --> src/board/util.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     actions::{Action, HistoryMove, UndoMoveError, HistoryState},
[INFO] [stdout]    |               ^^^^^^               ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `AttackDirections`, `BitBoard`, `Board`, `Cols`, `Direction`, `FenArgument`, `FenDecodeError`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stdout]   --> src/games/chess/game.rs:2:16
[INFO] [stdout]    |
[INFO] [stdout] 2  |     bitboard::{Direction, BitBoard},
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 3  |     board::{
[INFO] [stdout] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stdout]    |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5  |         edges::Edges,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 6  |         fen::{
[INFO] [stdout] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 8  |             FenTeamArgument, PostProcess,
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 9  |         },
[INFO] [stdout] 10 |         game::{Game, MoveController, DefaultZobristController},
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 12 |         AttackDirections, Board, Cols, PieceType, zobrist::ZobristHashTable,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^  ^^^^^  ^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `down`, `up`
[INFO] [stdout]   --> src/games/chess/game.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     down, up, BishopPiece, KingPiece, KnightPiece, PawnPiece, QueenPiece, RookPiece,
[INFO] [stdout]    |     ^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GameResults`, `NORMAL_MODE`
[INFO] [stdout]   --> src/games/chess/game.rs:66:30
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use crate::board::game::{GameResults, NORMAL_MODE};
[INFO] [stdout]    |                              ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ATTACKS_MODE`, `Chess`
[INFO] [stdout]   --> src/games/chess/game.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |     use super::{Chess, ATTACKS_MODE};
[INFO] [stdout]    |                 ^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttackDirections`, `Cols`, `FenFullMoves`, `FenOptions`, `FenState`, `FenSubMoves`, `FenTeamArgument`, `Game`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `Piece`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stdout]   --> src/games/chess/args.rs:4:27
[INFO] [stdout]    |
[INFO] [stdout] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard, Move},
[INFO] [stdout]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5  |         edges::Edges,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 6  |         fen::{
[INFO] [stdout] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stdout]    |                                          ^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 8  |             FenTeamArgument, PostProcess,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 9  |         },
[INFO] [stdout] 10 |         game::{Game, MoveController},
[INFO] [stdout]    |                ^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stdout]    |                  ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 12 |         AttackDirections, Board, Cols, PieceType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^         ^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stdout]  --> src/games/chess/process.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stdout]  --> src/games/chess/controller.rs:1:91
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{game::{MoveController, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, TheoreticalMov...
[INFO] [stdout]   |                                                                                           ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering`
[INFO] [stdout]  --> src/games/chess/resolution.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::Ordering;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/games/chess/resolution.rs:3:70
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stdout]   |                                                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/games/chess/suite.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tests::run_tests`
[INFO] [stdout]  --> src/games/chess/suite.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{tests::run_tests};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Chess`
[INFO] [stdout]  --> src/games/chess/suite.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::Chess;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Direction`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `PreviousBoard`, `games::chess::game::ATTACKS_MODE`
[INFO] [stdout]  --> src/games/chess/pieces/knight.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] 3 |     board::{
[INFO] [stdout] 4 |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     games::chess::game::ATTACKS_MODE,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Direction`, `edges::Edges`
[INFO] [stdout]  --> src/games/chess/pieces/pawn.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |         edges::Edges,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttackDirections`, `PieceSymbol`, `PieceType`, `Piece`
[INFO] [stdout]  --> src/games/chess/pieces/sliders/util.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 |     pieces::{Piece, PieceSymbol},
[INFO] [stdout]   |              ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 3 |     AttackDirections, AttackLookup, Board, PieceType,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stdout]  --> src/games/ataxx/process.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stdout]  --> src/games/ataxx/controller.rs:3:104
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::{game::{MoveController, NORMAL_MODE, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, T...
[INFO] [stdout]   |                                                                                                        ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/games/ataxx/resolution.rs:3:70
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stdout]   |                                                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AttackLookup`
[INFO] [stdout]  --> src/games/ataxx/pieces/mod.rs:3:58
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::{pieces::{Piece, PieceSymbol}, Board, AttackLookup, AttackDirections, actions::{Action, PreviousBoard, HistoryMove, Hi...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/games/ataxx/suite.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tests::run_tests`
[INFO] [stdout]  --> src/games/ataxx/suite.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{tests::run_tests};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Ataxx`
[INFO] [stdout]  --> src/games/ataxx/suite.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::Ataxx;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/state.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]   --> src/board/util.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]  --> src/board/perft.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/game.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actions`
[INFO] [stdout]   --> src/board/game.rs:44:43
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stdout]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/game.rs:45:30
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/board/game.rs:45:52
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/board/game.rs:95:22
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/board/game.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash`
[INFO] [stdout]    --> src/board/game.rs:120:21
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `zobrist`
[INFO] [stdout]    --> src/board/game.rs:120:37
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_zobrist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/board/game.rs:120:72
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]  --> src/board/lookups.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     rows: Rows,
[INFO] [stdout]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]  --> src/board/lookups.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     cols: Cols,
[INFO] [stdout]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/pieces/mod.rs:24:27
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]   --> src/board/pieces/mod.rs:24:45
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stdout]    |                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/pieces/mod.rs:27:26
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stdout]    |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]   --> src/board/pieces/mod.rs:27:44
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stdout]    |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_bit`
[INFO] [stdout]   --> src/board/pieces/mod.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         from_bit: u16,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_bit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]   --> src/board/pieces/mod.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         to: BitBoard<T>,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]    --> src/board/util.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let team = self.state.moving_team;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/board/util.rs:278:39
[INFO] [stdout]     |
[INFO] [stdout] 278 |     pub fn generate_drop_moves(&self, mode: u16) -> Vec<Move> {
[INFO] [stdout]     |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actions`
[INFO] [stdout]  --> src/games/chess/controller.rs:9:64
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stdout]   |                                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         from: BitBoard<T>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         team: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         mode: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         to: BitBoard<T>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:251:13
[INFO] [stdout]     |
[INFO] [stdout] 251 |         let rows = board.state.rows;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         from: BitBoard<T>,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |         to: BitBoard<T>,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         from: BitBoard<T>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         mode: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 174 |         to: BitBoard<T>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edges`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:188:13
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let edges = &board.state.edges[0];
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/bishop.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/bishop.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/queen.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/queen.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/rook.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/rook.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]  --> src/games/ataxx/process.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn apply(&self, board: &mut Board<T>) {}
[INFO] [stdout]   |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stdout]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stdout]    |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:18:53
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stdout]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:88:37
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard/util.rs:124:26
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn iter_set_bits(mut self, end: u16) -> BitIterator<T> {
[INFO] [stdout]     |                          ----^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:106:55
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stdout]     |                                                       ----^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:42:55
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stdout]    |                                                       ----^^^^
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_STR` is never used
[INFO] [stdout]  --> src/games/chess/suite.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const TEST_STR: &str = r#"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1 ;D1 20 ;D2 400 ;D3 8902 ;D4 197281 ;D5 4865609 ;D6 119...
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_STR` is never used
[INFO] [stdout]  --> src/games/ataxx/suite.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const TEST_STR: &str = r#"7/7/7/7/7/7/7 x 0 1; D1 0; D2 0; D3 0; D4 0
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAPPED_TESTS` is never used
[INFO] [stdout]   --> src/games/ataxx/suite.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const GAPPED_TESTS: &str = r#"7/7/7/7/-------/-------/x5o x 0 1; D1 2; D2 4; D3 13; D4 30; D5 73; D6 174
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 153 |         lookup.push(new_val);
[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] 153 |         let _ = lookup.push(new_val);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         lookup.push(new_val as u16);
[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] 166 |         let _ = lookup.push(new_val as u16);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:340:9
[INFO] [stdout]     |
[INFO] [stdout] 340 |         self.history.push_back(action);
[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] 340 |         let _ = self.history.push_back(action);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:356:13
[INFO] [stdout]     |
[INFO] [stdout] 356 |             self.history.push_front(first_history_move);
[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] 356 |             let _ = self.history.push_front(first_history_move);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/games/chess/args.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |         board.history.push_back(Move::Action(action));
[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] 157 |         let _ = board.history.push_back(Move::Action(action));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 95 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4.83s
[INFO] running `Command { std: "docker" "inspect" "ac44c6dc3fc0201bf4a18ddc039a50dcfd072413ffe7b325d99596d3ea3709f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ac44c6dc3fc0201bf4a18ddc039a50dcfd072413ffe7b325d99596d3ea3709f9", kill_on_drop: false }`
[INFO] [stdout] ac44c6dc3fc0201bf4a18ddc039a50dcfd072413ffe7b325d99596d3ea3709f9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b22788b0af766eac896d2cd90faf5bf4445a2999f17d1523b899c4e60842bae4
[INFO] running `Command { std: "docker" "start" "-a" "b22788b0af766eac896d2cd90faf5bf4445a2999f17d1523b899c4e60842bae4", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.142
[INFO] [stderr]    Compiling serde v1.0.160
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling serde_json v1.0.96
[INFO] [stderr]    Compiling crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling ciborium-io v0.2.0
[INFO] [stderr]    Compiling plotters-backend v0.3.4
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.0
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling plotters-svg v0.3.3
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling oorandom v11.1.3
[INFO] [stderr]    Compiling plotters v0.3.4
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stdout] warning: unused imports: `Action`, `Board`, `HistoryMove`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/edges.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/board/edges.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 |         left |= (left << (cols));
[INFO] [stdout]    |                 ^              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 27 -         left |= (left << (cols));
[INFO] [stdout] 27 +         left |= left << (cols);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/args.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/init.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/options.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 |         actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 6 |         game::Game,
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 7 |         pieces::Piece,
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout] 8 |         Board, Cols, Rows,
[INFO] [stdout]   |                ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`
[INFO] [stdout]  --> src/board/fen/state.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`
[INFO] [stdout]  --> src/board/perft.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 3 |     edges::Edges,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 4 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cols`, `Rows`, `UndoMoveError`
[INFO] [stdout]   --> src/board/pieces/mod.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  |         UndoMoveError, Move, ActionInfo, TurnInfo,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     AttackDirections, AttackLookup, Board, BoardState, Cols, PieceType, Rows, update_turns, reverse_turns,
[INFO] [stdout]    |                                                        ^^^^             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/positions.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 |     actions::{Action, HistoryMove, UndoMoveError, Move},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 3 |     edges::Edges,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 4 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 5 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `game::Game`
[INFO] [stdout]  --> src/board/zobrist.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{Board, game::Game};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/board/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrand`
[INFO] [stdout]  --> src/board/util.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use fastrand;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `UndoMoveError`, `zobrist::ZobristHashTable`
[INFO] [stdout]   --> src/board/util.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     actions::{Action, HistoryMove, UndoMoveError, HistoryState},
[INFO] [stdout]    |               ^^^^^^               ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `AttackDirections`, `BitBoard`, `Board`, `Cols`, `Direction`, `FenArgument`, `FenDecodeError`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stdout]   --> src/games/chess/game.rs:2:16
[INFO] [stdout]    |
[INFO] [stdout] 2  |     bitboard::{Direction, BitBoard},
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 3  |     board::{
[INFO] [stdout] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stdout]    |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5  |         edges::Edges,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 6  |         fen::{
[INFO] [stdout] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 8  |             FenTeamArgument, PostProcess,
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 9  |         },
[INFO] [stdout] 10 |         game::{Game, MoveController, DefaultZobristController},
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 12 |         AttackDirections, Board, Cols, PieceType, zobrist::ZobristHashTable,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^  ^^^^^  ^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `down`, `up`
[INFO] [stdout]   --> src/games/chess/game.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     down, up, BishopPiece, KingPiece, KnightPiece, PawnPiece, QueenPiece, RookPiece,
[INFO] [stdout]    |     ^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GameResults`, `NORMAL_MODE`
[INFO] [stdout]   --> src/games/chess/game.rs:66:30
[INFO] [stdout]    |
[INFO] [stdout] 66 |     use crate::board::game::{GameResults, NORMAL_MODE};
[INFO] [stdout]    |                              ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ATTACKS_MODE`, `Chess`
[INFO] [stdout]   --> src/games/chess/game.rs:68:17
[INFO] [stdout]    |
[INFO] [stdout] 68 |     use super::{Chess, ATTACKS_MODE};
[INFO] [stdout]    |                 ^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttackDirections`, `Cols`, `FenFullMoves`, `FenOptions`, `FenState`, `FenSubMoves`, `FenTeamArgument`, `Game`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `Piece`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stdout]   --> src/games/chess/args.rs:4:27
[INFO] [stdout]    |
[INFO] [stdout] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard, Move},
[INFO] [stdout]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5  |         edges::Edges,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 6  |         fen::{
[INFO] [stdout] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stdout]    |                                          ^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 8  |             FenTeamArgument, PostProcess,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 9  |         },
[INFO] [stdout] 10 |         game::{Game, MoveController},
[INFO] [stdout]    |                ^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stdout]    |                  ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 12 |         AttackDirections, Board, Cols, PieceType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^         ^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stdout]  --> src/games/chess/process.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stdout]  --> src/games/chess/controller.rs:1:91
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{game::{MoveController, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, TheoreticalMov...
[INFO] [stdout]   |                                                                                           ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering`
[INFO] [stdout]  --> src/games/chess/resolution.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::Ordering;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/games/chess/resolution.rs:3:70
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stdout]   |                                                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/games/chess/suite.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tests::run_tests`
[INFO] [stdout]  --> src/games/chess/suite.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{tests::run_tests};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Chess`
[INFO] [stdout]  --> src/games/chess/suite.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::Chess;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Direction`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `PreviousBoard`, `games::chess::game::ATTACKS_MODE`
[INFO] [stdout]  --> src/games/chess/pieces/knight.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] 3 |     board::{
[INFO] [stdout] 4 |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     games::chess::game::ATTACKS_MODE,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Direction`, `edges::Edges`
[INFO] [stdout]  --> src/games/chess/pieces/pawn.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |         edges::Edges,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttackDirections`, `PieceSymbol`, `PieceType`, `Piece`
[INFO] [stdout]  --> src/games/chess/pieces/sliders/util.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 |     pieces::{Piece, PieceSymbol},
[INFO] [stdout]   |              ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 3 |     AttackDirections, AttackLookup, Board, PieceType,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stdout]  --> src/games/ataxx/process.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stdout]  --> src/games/ataxx/controller.rs:3:104
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::{game::{MoveController, NORMAL_MODE, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, T...
[INFO] [stdout]   |                                                                                                        ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/games/ataxx/resolution.rs:3:70
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stdout]   |                                                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AttackLookup`
[INFO] [stdout]  --> src/games/ataxx/pieces/mod.rs:3:58
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::{pieces::{Piece, PieceSymbol}, Board, AttackLookup, AttackDirections, actions::{Action, PreviousBoard, HistoryMove, Hi...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/games/ataxx/suite.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tests::run_tests`
[INFO] [stdout]  --> src/games/ataxx/suite.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{tests::run_tests};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::Ataxx`
[INFO] [stdout]  --> src/games/ataxx/suite.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use super::Ataxx;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/state.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]   --> src/board/util.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]  --> src/board/perft.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/game.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actions`
[INFO] [stdout]   --> src/board/game.rs:44:43
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stdout]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/game.rs:45:30
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/board/game.rs:45:52
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/board/game.rs:95:22
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/board/game.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash`
[INFO] [stdout]    --> src/board/game.rs:120:21
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `zobrist`
[INFO] [stdout]    --> src/board/game.rs:120:37
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_zobrist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/board/game.rs:120:72
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]  --> src/board/lookups.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     rows: Rows,
[INFO] [stdout]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]  --> src/board/lookups.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     cols: Cols,
[INFO] [stdout]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/pieces/mod.rs:24:27
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]   --> src/board/pieces/mod.rs:24:45
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stdout]    |                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/pieces/mod.rs:27:26
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stdout]    |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]   --> src/board/pieces/mod.rs:27:44
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stdout]    |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_bit`
[INFO] [stdout]   --> src/board/pieces/mod.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         from_bit: u16,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_bit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]   --> src/board/pieces/mod.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         to: BitBoard<T>,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]    --> src/board/util.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let team = self.state.moving_team;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/board/util.rs:278:39
[INFO] [stdout]     |
[INFO] [stdout] 278 |     pub fn generate_drop_moves(&self, mode: u16) -> Vec<Move> {
[INFO] [stdout]     |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actions`
[INFO] [stdout]  --> src/games/chess/controller.rs:9:64
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stdout]   |                                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         from: BitBoard<T>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         team: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         mode: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         to: BitBoard<T>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:251:13
[INFO] [stdout]     |
[INFO] [stdout] 251 |         let rows = board.state.rows;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         from: BitBoard<T>,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |         to: BitBoard<T>,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         from: BitBoard<T>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         mode: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 174 |         to: BitBoard<T>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edges`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:188:13
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let edges = &board.state.edges[0];
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/bishop.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/bishop.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/queen.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/queen.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/rook.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/rook.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]  --> src/games/ataxx/process.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn apply(&self, board: &mut Board<T>) {}
[INFO] [stdout]   |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stdout]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stdout]    |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:18:53
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stdout]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:88:37
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard/util.rs:124:26
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn iter_set_bits(mut self, end: u16) -> BitIterator<T> {
[INFO] [stdout]     |                          ----^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:106:55
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stdout]     |                                                       ----^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:42:55
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stdout]    |                                                       ----^^^^
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_STR` is never used
[INFO] [stdout]  --> src/games/chess/suite.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const TEST_STR: &str = r#"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1 ;D1 20 ;D2 400 ;D3 8902 ;D4 197281 ;D5 4865609 ;D6 119...
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TEST_STR` is never used
[INFO] [stdout]  --> src/games/ataxx/suite.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const TEST_STR: &str = r#"7/7/7/7/7/7/7 x 0 1; D1 0; D2 0; D3 0; D4 0
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAPPED_TESTS` is never used
[INFO] [stdout]   --> src/games/ataxx/suite.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const GAPPED_TESTS: &str = r#"7/7/7/7/-------/-------/x5o x 0 1; D1 2; D2 4; D3 13; D4 30; D5 73; D6 174
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 153 |         lookup.push(new_val);
[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] 153 |         let _ = lookup.push(new_val);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         lookup.push(new_val as u16);
[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] 166 |         let _ = lookup.push(new_val as u16);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:340:9
[INFO] [stdout]     |
[INFO] [stdout] 340 |         self.history.push_back(action);
[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] 340 |         let _ = self.history.push_back(action);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:356:13
[INFO] [stdout]     |
[INFO] [stdout] 356 |             self.history.push_front(first_history_move);
[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] 356 |             let _ = self.history.push_front(first_history_move);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/games/chess/args.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |         board.history.push_back(Move::Action(action));
[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] 157 |         let _ = board.history.push_back(Move::Action(action));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 95 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling num_cpus v1.15.0
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling rayon v1.7.0
[INFO] [stderr]    Compiling ciborium v0.2.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.4.0
[INFO] [stderr]    Compiling monster_chess v0.0.18 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Action`, `Board`, `HistoryMove`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/edges.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/board/edges.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 |         left |= (left << (cols));
[INFO] [stdout]    |                 ^              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 27 -         left |= (left << (cols));
[INFO] [stdout] 27 +         left |= left << (cols);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/args.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/init.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5 |     game::Game,
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 7 |     Board, Cols, Rows,
[INFO] [stdout]   |            ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/options.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 |         actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 6 |         game::Game,
[INFO] [stdout]   |         ^^^^^^^^^^
[INFO] [stdout] 7 |         pieces::Piece,
[INFO] [stdout]   |         ^^^^^^^^^^^^^
[INFO] [stdout] 8 |         Board, Cols, Rows,
[INFO] [stdout]   |                ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`
[INFO] [stdout]  --> src/board/fen/state.rs:4:15
[INFO] [stdout]   |
[INFO] [stdout] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`
[INFO] [stdout]  --> src/board/perft.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 3 |     edges::Edges,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 4 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Cols`, `Rows`, `UndoMoveError`
[INFO] [stdout]   --> src/board/pieces/mod.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 8  |         UndoMoveError, Move, ActionInfo, TurnInfo,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 11 |     AttackDirections, AttackLookup, Board, BoardState, Cols, PieceType, Rows, update_turns, reverse_turns,
[INFO] [stdout]    |                                                        ^^^^             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`, `pieces::Piece`
[INFO] [stdout]  --> src/board/positions.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 |     actions::{Action, HistoryMove, UndoMoveError, Move},
[INFO] [stdout]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 3 |     edges::Edges,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 4 |     game::Game,
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 5 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `game::Game`
[INFO] [stdout]  --> src/board/zobrist.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::{Board, game::Game};
[INFO] [stdout]   |                    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrand::u64`
[INFO] [stdout]   --> src/board/zobrist.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     use fastrand::u64;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::ZobristHashTable`
[INFO] [stdout]   --> src/board/zobrist.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |     use super::ZobristHashTable;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> src/board/util.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fastrand`
[INFO] [stdout]  --> src/board/util.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use fastrand;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `UndoMoveError`, `zobrist::ZobristHashTable`
[INFO] [stdout]   --> src/board/util.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 14 |     actions::{Action, HistoryMove, UndoMoveError, HistoryState},
[INFO] [stdout]    |               ^^^^^^               ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `AttackDirections`, `BitBoard`, `Board`, `Cols`, `Direction`, `FenArgument`, `FenDecodeError`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stdout]   --> src/games/chess/game.rs:2:16
[INFO] [stdout]    |
[INFO] [stdout] 2  |     bitboard::{Direction, BitBoard},
[INFO] [stdout]    |                ^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 3  |     board::{
[INFO] [stdout] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stdout]    |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5  |         edges::Edges,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 6  |         fen::{
[INFO] [stdout] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 8  |             FenTeamArgument, PostProcess,
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 9  |         },
[INFO] [stdout] 10 |         game::{Game, MoveController, DefaultZobristController},
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stdout]    |                         ^^^^^^^^^^^
[INFO] [stdout] 12 |         AttackDirections, Board, Cols, PieceType, zobrist::ZobristHashTable,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^  ^^^^^  ^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `down`, `up`
[INFO] [stdout]   --> src/games/chess/game.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     down, up, BishopPiece, KingPiece, KnightPiece, PawnPiece, QueenPiece, RookPiece,
[INFO] [stdout]    |     ^^^^  ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ATTACKS_MODE`
[INFO] [stdout]   --> src/games/chess/game.rs:68:24
[INFO] [stdout]    |
[INFO] [stdout] 68 |     use super::{Chess, ATTACKS_MODE};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttackDirections`, `Cols`, `FenFullMoves`, `FenOptions`, `FenState`, `FenSubMoves`, `FenTeamArgument`, `Game`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `Piece`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stdout]   --> src/games/chess/args.rs:4:27
[INFO] [stdout]    |
[INFO] [stdout] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard, Move},
[INFO] [stdout]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 5  |         edges::Edges,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 6  |         fen::{
[INFO] [stdout] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stdout]    |                                          ^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 8  |             FenTeamArgument, PostProcess,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 9  |         },
[INFO] [stdout] 10 |         game::{Game, MoveController},
[INFO] [stdout]    |                ^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stdout]    |                  ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 12 |         AttackDirections, Board, Cols, PieceType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^         ^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stdout]  --> src/games/chess/process.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stdout]  --> src/games/chess/controller.rs:1:91
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{game::{MoveController, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, TheoreticalMov...
[INFO] [stdout]   |                                                                                           ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Ordering`
[INFO] [stdout]  --> src/games/chess/resolution.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cmp::Ordering;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/games/chess/resolution.rs:3:70
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stdout]   |                                                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/games/chess/suite.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Direction`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `PreviousBoard`, `games::chess::game::ATTACKS_MODE`
[INFO] [stdout]  --> src/games/chess/pieces/knight.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] 3 |     board::{
[INFO] [stdout] 4 |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9 |     games::chess::game::ATTACKS_MODE,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Direction`, `edges::Edges`
[INFO] [stdout]  --> src/games/chess/pieces/pawn.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stdout]   |                ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 7 |         edges::Edges,
[INFO] [stdout]   |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AttackDirections`, `PieceSymbol`, `PieceType`, `Piece`
[INFO] [stdout]  --> src/games/chess/pieces/sliders/util.rs:2:14
[INFO] [stdout]   |
[INFO] [stdout] 2 |     pieces::{Piece, PieceSymbol},
[INFO] [stdout]   |              ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 3 |     AttackDirections, AttackLookup, Board, PieceType,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stdout]  --> src/games/ataxx/process.rs:1:46
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stdout]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stdout]  --> src/games/ataxx/controller.rs:3:104
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::{game::{MoveController, NORMAL_MODE, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, T...
[INFO] [stdout]   |                                                                                                        ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]  --> src/games/ataxx/resolution.rs:3:70
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stdout]   |                                                                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AttackLookup`
[INFO] [stdout]  --> src/games/ataxx/pieces/mod.rs:3:58
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{board::{pieces::{Piece, PieceSymbol}, Board, AttackLookup, AttackDirections, actions::{Action, PreviousBoard, HistoryMove, Hi...
[INFO] [stdout]   |                                                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stdout]  --> src/games/ataxx/suite.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]  --> src/board/fen/state.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]   --> src/board/util.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pieces::Piece`
[INFO] [stdout]  --> src/board/perft.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pieces::Piece,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/game.rs:44:25
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actions`
[INFO] [stdout]   --> src/board/game.rs:44:43
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stdout]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/game.rs:45:30
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/board/game.rs:45:52
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stdout]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/board/game.rs:95:22
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/board/game.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hash`
[INFO] [stdout]    --> src/board/game.rs:120:21
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_hash`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `zobrist`
[INFO] [stdout]    --> src/board/game.rs:120:37
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_zobrist`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]    --> src/board/game.rs:120:72
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout]     |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]  --> src/board/lookups.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     rows: Rows,
[INFO] [stdout]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]  --> src/board/lookups.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     cols: Cols,
[INFO] [stdout]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/pieces/mod.rs:24:27
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stdout]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]   --> src/board/pieces/mod.rs:24:45
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stdout]    |                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/board/pieces/mod.rs:27:26
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stdout]    |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `info`
[INFO] [stdout]   --> src/board/pieces/mod.rs:27:44
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stdout]    |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from_bit`
[INFO] [stdout]   --> src/board/pieces/mod.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |         from_bit: u16,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_bit`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]   --> src/board/pieces/mod.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         to: BitBoard<T>,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]    --> src/board/util.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |         let team = self.state.moving_team;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/board/util.rs:278:39
[INFO] [stdout]     |
[INFO] [stdout] 278 |     pub fn generate_drop_moves(&self, mode: u16) -> Vec<Move> {
[INFO] [stdout]     |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actions`
[INFO] [stdout]  --> src/games/chess/controller.rs:9:64
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stdout]   |                                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         from: BitBoard<T>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         team: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         mode: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |         to: BitBoard<T>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/games/chess/pieces/king.rs:251:13
[INFO] [stdout]     |
[INFO] [stdout] 251 |         let rows = board.state.rows;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         from: BitBoard<T>,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]   --> src/games/chess/pieces/knight.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |         to: BitBoard<T>,
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |         from: BitBoard<T>,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         mode: u16,
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 174 |         to: BitBoard<T>,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edges`
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:188:13
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let edges = &board.state.edges[0];
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_edges`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/bishop.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/bishop.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/queen.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/queen.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/rook.rs:54:9
[INFO] [stdout]    |
[INFO] [stdout] 54 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/chess/pieces/sliders/rook.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]  --> src/games/ataxx/process.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn apply(&self, board: &mut Board<T>) {}
[INFO] [stdout]   |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `board`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stdout]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `action`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stdout]    |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:18:53
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stdout]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]   --> src/games/ataxx/controller.rs:88:37
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stdout]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `team`
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         team: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mode`
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |         mode: u16,
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bitboard/util.rs:124:26
[INFO] [stdout]     |
[INFO] [stdout] 124 |     pub fn iter_set_bits(mut self, end: u16) -> BitIterator<T> {
[INFO] [stdout]     |                          ----^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/games/chess/pieces/pawn.rs:106:55
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stdout]     |                                                       ----^^^^
[INFO] [stdout]     |                                                       |
[INFO] [stdout]     |                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/games/ataxx/pieces/mod.rs:42:55
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stdout]    |                                                       ----^^^^
[INFO] [stdout]    |                                                       |
[INFO] [stdout]    |                                                       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:153:9
[INFO] [stdout]     |
[INFO] [stdout] 153 |         lookup.push(new_val);
[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] 153 |         let _ = lookup.push(new_val);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         lookup.push(new_val as u16);
[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] 166 |         let _ = lookup.push(new_val as u16);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:340:9
[INFO] [stdout]     |
[INFO] [stdout] 340 |         self.history.push_back(action);
[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] 340 |         let _ = self.history.push_back(action);
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/board/util.rs:356:13
[INFO] [stdout]     |
[INFO] [stdout] 356 |             self.history.push_front(first_history_move);
[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] 356 |             let _ = self.history.push_front(first_history_move);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/games/chess/args.rs:157:9
[INFO] [stdout]     |
[INFO] [stdout] 157 |         board.history.push_back(Move::Action(action));
[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] 157 |         let _ = board.history.push_back(Move::Action(action));
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 89 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 25.24s
[INFO] running `Command { std: "docker" "inspect" "b22788b0af766eac896d2cd90faf5bf4445a2999f17d1523b899c4e60842bae4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b22788b0af766eac896d2cd90faf5bf4445a2999f17d1523b899c4e60842bae4", kill_on_drop: false }`
[INFO] [stdout] b22788b0af766eac896d2cd90faf5bf4445a2999f17d1523b899c4e60842bae4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-04-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a90d9929781aa0db31e3469515be7a0a76420e191393d95d12b3af5d65accf9b
[INFO] running `Command { std: "docker" "start" "-a" "a90d9929781aa0db31e3469515be7a0a76420e191393d95d12b3af5d65accf9b", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] warning: unused imports: `Action`, `Board`, `HistoryMove`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stderr]  --> src/board/edges.rs:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stderr]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 5 |     game::Game,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 6 |     pieces::Piece,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 7 |     Board, Cols, Rows,
[INFO] [stderr]   |     ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/board/edges.rs:27:17
[INFO] [stderr]    |
[INFO] [stderr] 27 |         left |= (left << (cols));
[INFO] [stderr]    |                 ^              ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 27 -         left |= (left << (cols));
[INFO] [stderr] 27 +         left |= left << (cols);
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stderr]  --> src/board/fen/args.rs:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stderr]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 5 |     game::Game,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 6 |     pieces::Piece,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 7 |     Board, Cols, Rows,
[INFO] [stderr]   |            ^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `pieces::Piece`
[INFO] [stderr]  --> src/board/fen/init.rs:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stderr]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 5 |     game::Game,
[INFO] [stderr] 6 |     pieces::Piece,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 7 |     Board, Cols, Rows,
[INFO] [stderr]   |            ^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `Cols`, `HistoryMove`, `Rows`, `UndoMoveError`, `game::Game`, `pieces::Piece`
[INFO] [stderr]  --> src/board/fen/options.rs:5:19
[INFO] [stderr]   |
[INFO] [stderr] 5 |         actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stderr]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 6 |         game::Game,
[INFO] [stderr]   |         ^^^^^^^^^^
[INFO] [stderr] 7 |         pieces::Piece,
[INFO] [stderr]   |         ^^^^^^^^^^^^^
[INFO] [stderr] 8 |         Board, Cols, Rows,
[INFO] [stderr]   |                ^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`
[INFO] [stderr]  --> src/board/fen/state.rs:4:15
[INFO] [stderr]   |
[INFO] [stderr] 4 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stderr]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`
[INFO] [stderr]  --> src/board/perft.rs:2:15
[INFO] [stderr]   |
[INFO] [stderr] 2 |     actions::{Action, HistoryMove, UndoMoveError},
[INFO] [stderr]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 3 |     edges::Edges,
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 4 |     game::Game,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Cols`, `Rows`, `UndoMoveError`
[INFO] [stderr]   --> src/board/pieces/mod.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr] 8  |         UndoMoveError, Move, ActionInfo, TurnInfo,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 11 |     AttackDirections, AttackLookup, Board, BoardState, Cols, PieceType, Rows, update_turns, reverse_turns,
[INFO] [stderr]    |                                                        ^^^^             ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `HistoryMove`, `UndoMoveError`, `edges::Edges`, `game::Game`, `pieces::Piece`
[INFO] [stderr]  --> src/board/positions.rs:2:15
[INFO] [stderr]   |
[INFO] [stderr] 2 |     actions::{Action, HistoryMove, UndoMoveError, Move},
[INFO] [stderr]   |               ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 3 |     edges::Edges,
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 4 |     game::Game,
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 5 |     pieces::Piece,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `game::Game`
[INFO] [stderr]  --> src/board/zobrist.rs:1:20
[INFO] [stderr]   |
[INFO] [stderr] 1 | use super::{Board, game::Game};
[INFO] [stderr]   |                    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::VecDeque`
[INFO] [stderr]  --> src/board/util.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::collections::VecDeque;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fastrand`
[INFO] [stderr]  --> src/board/util.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use fastrand;
[INFO] [stderr]   |     ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `UndoMoveError`, `zobrist::ZobristHashTable`
[INFO] [stderr]   --> src/board/util.rs:14:15
[INFO] [stderr]    |
[INFO] [stderr] 14 |     actions::{Action, HistoryMove, UndoMoveError, HistoryState},
[INFO] [stderr]    |               ^^^^^^               ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `AttackDirections`, `BitBoard`, `Board`, `Cols`, `Direction`, `FenArgument`, `FenDecodeError`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stderr]   --> src/games/chess/game.rs:2:16
[INFO] [stderr]    |
[INFO] [stderr] 2  |     bitboard::{Direction, BitBoard},
[INFO] [stderr]    |                ^^^^^^^^^  ^^^^^^^^
[INFO] [stderr] 3  |     board::{
[INFO] [stderr] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stderr]    |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 5  |         edges::Edges,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 6  |         fen::{
[INFO] [stderr] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stderr]    |             ^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 8  |             FenTeamArgument, PostProcess,
[INFO] [stderr]    |                              ^^^^^^^^^^^
[INFO] [stderr] 9  |         },
[INFO] [stderr] 10 |         game::{Game, MoveController, DefaultZobristController},
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^
[INFO] [stderr] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stderr]    |                         ^^^^^^^^^^^
[INFO] [stderr] 12 |         AttackDirections, Board, Cols, PieceType, zobrist::ZobristHashTable,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^  ^^^^^  ^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `down`, `up`
[INFO] [stderr]   --> src/games/chess/game.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     down, up, BishopPiece, KingPiece, KnightPiece, PawnPiece, QueenPiece, RookPiece,
[INFO] [stderr]    |     ^^^^  ^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `GameResults`, `NORMAL_MODE`
[INFO] [stderr]   --> src/games/chess/game.rs:66:30
[INFO] [stderr]    |
[INFO] [stderr] 66 |     use crate::board::game::{GameResults, NORMAL_MODE};
[INFO] [stderr]    |                              ^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ATTACKS_MODE`, `Chess`
[INFO] [stderr]   --> src/games/chess/game.rs:68:17
[INFO] [stderr]    |
[INFO] [stderr] 68 |     use super::{Chess, ATTACKS_MODE};
[INFO] [stderr]    |                 ^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AttackDirections`, `Cols`, `FenFullMoves`, `FenOptions`, `FenState`, `FenSubMoves`, `FenTeamArgument`, `Game`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `MoveController`, `PieceSymbol`, `PieceType`, `Piece`, `PostProcess`, `PreviousBoard`, `edges::Edges`
[INFO] [stderr]   --> src/games/chess/args.rs:4:27
[INFO] [stderr]    |
[INFO] [stderr] 4  |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard, Move},
[INFO] [stderr]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 5  |         edges::Edges,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 6  |         fen::{
[INFO] [stderr] 7  |             FenArgument, FenDecodeError, FenFullMoves, FenOptions, FenState, FenSubMoves,
[INFO] [stderr]    |                                          ^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 8  |             FenTeamArgument, PostProcess,
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 9  |         },
[INFO] [stderr] 10 |         game::{Game, MoveController},
[INFO] [stderr]    |                ^^^^  ^^^^^^^^^^^^^^
[INFO] [stderr] 11 |         pieces::{Piece, PieceSymbol},
[INFO] [stderr]    |                  ^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 12 |         AttackDirections, Board, Cols, PieceType,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^         ^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stderr]  --> src/games/chess/process.rs:1:46
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stderr]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stderr]  --> src/games/chess/controller.rs:1:91
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{board::{game::{MoveController, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, TheoreticalMov...
[INFO] [stderr]   |                                                                                           ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cmp::Ordering`
[INFO] [stderr]  --> src/games/chess/resolution.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::cmp::Ordering;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Action`
[INFO] [stderr]  --> src/games/chess/resolution.rs:3:70
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stderr]   |                                                                      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stderr]  --> src/games/chess/suite.rs:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stderr]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tests::run_tests`
[INFO] [stderr]  --> src/games/chess/suite.rs:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::board::{tests::run_tests};
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::Chess`
[INFO] [stderr]  --> src/games/chess/suite.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use super::Chess;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `Direction`, `HistoryMove`, `HistoryState`, `IndexedPreviousBoard`, `PreviousBoard`, `games::chess::game::ATTACKS_MODE`
[INFO] [stderr]  --> src/games/chess/pieces/knight.rs:2:16
[INFO] [stderr]   |
[INFO] [stderr] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stderr]   |                ^^^^^^^^^
[INFO] [stderr] 3 |     board::{
[INFO] [stderr] 4 |         actions::{Action, HistoryMove, HistoryState, IndexedPreviousBoard, PreviousBoard},
[INFO] [stderr]   |                   ^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 9 |     games::chess::game::ATTACKS_MODE,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Direction`, `edges::Edges`
[INFO] [stderr]  --> src/games/chess/pieces/pawn.rs:2:16
[INFO] [stderr]   |
[INFO] [stderr] 2 |     bitboard::{Direction, BitBoard},
[INFO] [stderr]   |                ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 7 |         edges::Edges,
[INFO] [stderr]   |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AttackDirections`, `PieceSymbol`, `PieceType`, `Piece`
[INFO] [stderr]  --> src/games/chess/pieces/sliders/util.rs:2:14
[INFO] [stderr]   |
[INFO] [stderr] 2 |     pieces::{Piece, PieceSymbol},
[INFO] [stderr]   |              ^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 3 |     AttackDirections, AttackLookup, Board, PieceType,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `actions::Action`, `bitboard::BitBoard`
[INFO] [stderr]  --> src/games/ataxx/process.rs:1:46
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{board::{fen::PostProcess, Board, actions::Action}, bitboard::BitBoard};
[INFO] [stderr]   |                                              ^^^^^^^^^^^^^^^   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Action`, `TheoreticalAction`
[INFO] [stderr]  --> src/games/ataxx/controller.rs:3:104
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::{board::{game::{MoveController, NORMAL_MODE, get_theoretical_moves_bound}, Board, actions::{Action, TheoreticalAction, Move, T...
[INFO] [stderr]   |                                                                                                        ^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Action`
[INFO] [stderr]  --> src/games/ataxx/resolution.rs:3:70
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::board::{game::{Resolution, GameResults}, Board, actions::{Action, Move}};
[INFO] [stderr]   |                                                                      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AttackLookup`
[INFO] [stderr]  --> src/games/ataxx/pieces/mod.rs:3:58
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::{board::{pieces::{Piece, PieceSymbol}, Board, AttackLookup, AttackDirections, actions::{Action, PreviousBoard, HistoryMove, Hi...
[INFO] [stderr]   |                                                          ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `SystemTime`, `UNIX_EPOCH`
[INFO] [stderr]  --> src/games/ataxx/suite.rs:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stderr]   |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tests::run_tests`
[INFO] [stderr]  --> src/games/ataxx/suite.rs:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::board::{tests::run_tests};
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::Ataxx`
[INFO] [stderr]  --> src/games/ataxx/suite.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use super::Ataxx;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `pieces::Piece`
[INFO] [stderr]  --> src/board/fen/state.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 |     pieces::Piece,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `pieces::Piece`
[INFO] [stderr]   --> src/board/util.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 |     pieces::Piece, zobrist::ZobristHashTable,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `pieces::Piece`
[INFO] [stderr]  --> src/board/perft.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 |     pieces::Piece,
[INFO] [stderr]   |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board`
[INFO] [stderr]   --> src/board/game.rs:44:25
[INFO] [stderr]    |
[INFO] [stderr] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stderr]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `actions`
[INFO] [stderr]   --> src/board/game.rs:44:43
[INFO] [stderr]    |
[INFO] [stderr] 44 |     fn add_moves(&self, board: &Board<T>, actions: &mut Vec<Move>) {}
[INFO] [stderr]    |                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board`
[INFO] [stderr]   --> src/board/game.rs:45:30
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stderr]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `action`
[INFO] [stderr]   --> src/board/game.rs:45:52
[INFO] [stdout] 
[INFO] [stderr]    |
[INFO] [stdout] running 15 tests
[INFO] [stderr] 45 |     fn make_drop_move(&self, board: &mut Board<T>, action: &Action) -> Option<HistoryMove<T>> {
[INFO] [stderr]    |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stderr] 
[INFO] [stdout] test bitboard::bitops::tests::and ... ok
[INFO] [stderr] warning: unused variable: `action`
[INFO] [stdout] test bitboard::bitops::tests::shl ... ok
[INFO] [stderr]   --> src/board/game.rs:95:22
[INFO] [stdout] test bitboard::bitops::tests::not ... ok
[INFO] [stderr]    |
[INFO] [stdout] test bitboard::bitops::tests::or ... ok
[INFO] [stderr] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stderr]    |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `state`
[INFO] [stderr]   --> src/board/game.rs:95:37
[INFO] [stderr]    |
[INFO] [stderr] 95 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stderr]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `hash`
[INFO] [stderr]    --> src/board/game.rs:120:21
[INFO] [stderr]     |
[INFO] [stderr] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stderr]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_hash`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `zobrist`
[INFO] [stderr]    --> src/board/game.rs:120:37
[INFO] [stderr]     |
[INFO] [stderr] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stderr]     |                                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_zobrist`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board`
[INFO] [stderr]    --> src/board/game.rs:120:72
[INFO] [stderr]     |
[INFO] [stderr] 120 |     fn apply(&self, hash: &mut u64, zobrist: &mut ZobristHashTable<T>, board: &mut Board<T>) {}
[INFO] [stdout] test bitboard::bitops::tests::shr ... ok
[INFO] [stderr]     |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stdout] test bitboard::bitscan::tests::bitscan_forward ... ok
[INFO] [stderr] 
[INFO] [stdout] test bitboard::bitscan::tests::bitscan_reverse ... ok
[INFO] [stderr] warning: unused variable: `rows`
[INFO] [stdout] test bitboard::bitops::tests::xor ... ok
[INFO] [stderr]  --> src/board/lookups.rs:8:5
[INFO] [stdout] test bitboard::numops::tests::add ... ok
[INFO] [stderr]   |
[INFO] [stdout] test bitboard::numops::tests::sub ... ok
[INFO] [stderr] 8 |     rows: Rows,
[INFO] [stdout] test bitboard::ord::tests::ord ... ok
[INFO] [stderr]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] test board::zobrist::tests::chess_zobrist_test ... ok
[INFO] [stderr] 
[INFO] [stdout] test games::chess::game::tests::checkmate ... ok
[INFO] [stderr] warning: unused variable: `cols`
[INFO] [stderr]  --> src/board/lookups.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 |     cols: Cols,
[INFO] [stderr]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board`
[INFO] [stderr]   --> src/board/pieces/mod.rs:24:27
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stderr]    |                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `info`
[INFO] [stderr]   --> src/board/pieces/mod.rs:24:45
[INFO] [stderr]    |
[INFO] [stderr] 24 |     fn format_info(&self, board: &Board<T>, info: ActionInfo) -> String {
[INFO] [stderr]    |                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board`
[INFO] [stderr]   --> src/board/pieces/mod.rs:27:26
[INFO] [stderr]    |
[INFO] [stderr] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stderr]    |                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `info`
[INFO] [stderr]   --> src/board/pieces/mod.rs:27:44
[INFO] [stderr]    |
[INFO] [stderr] 27 |     fn parse_info(&self, board: &Board<T>, info: String) -> u32 {
[INFO] [stderr]    |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_info`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `from_bit`
[INFO] [stderr]   --> src/board/pieces/mod.rs:53:9
[INFO] [stderr]    |
[INFO] [stderr] 53 |         from_bit: u16,
[INFO] [stderr]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_bit`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `to`
[INFO] [stderr]   --> src/board/pieces/mod.rs:57:9
[INFO] [stderr]    |
[INFO] [stderr] 57 |         to: BitBoard<T>,
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `team`
[INFO] [stderr]    --> src/board/util.rs:279:13
[INFO] [stderr]     |
[INFO] [stderr] 279 |         let team = self.state.moving_team;
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]    --> src/board/util.rs:278:39
[INFO] [stderr]     |
[INFO] [stderr] 278 |     pub fn generate_drop_moves(&self, mode: u16) -> Vec<Move> {
[INFO] [stderr]     |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `actions`
[INFO] [stderr]  --> src/games/chess/controller.rs:9:64
[INFO] [stderr]   |
[INFO] [stderr] 9 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stderr]   |                                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actions`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `from`
[INFO] [stderr]    --> src/games/chess/pieces/king.rs:146:9
[INFO] [stderr]     |
[INFO] [stderr] 146 |         from: BitBoard<T>,
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `team`
[INFO] [stderr]    --> src/games/chess/pieces/king.rs:149:9
[INFO] [stderr]     |
[INFO] [stderr] 149 |         team: u16,
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]    --> src/games/chess/pieces/king.rs:150:9
[INFO] [stderr]     |
[INFO] [stderr] 150 |         mode: u16,
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `to`
[INFO] [stderr]    --> src/games/chess/pieces/king.rs:151:9
[INFO] [stderr]     |
[INFO] [stderr] 151 |         to: BitBoard<T>,
[INFO] [stderr]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rows`
[INFO] [stderr]    --> src/games/chess/pieces/king.rs:251:13
[INFO] [stderr]     |
[INFO] [stderr] 251 |         let rows = board.state.rows;
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `from`
[INFO] [stderr]   --> src/games/chess/pieces/knight.rs:79:9
[INFO] [stderr]    |
[INFO] [stderr] 79 |         from: BitBoard<T>,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `team`
[INFO] [stderr]   --> src/games/chess/pieces/knight.rs:82:9
[INFO] [stderr]    |
[INFO] [stderr] 82 |         team: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]   --> src/games/chess/pieces/knight.rs:83:9
[INFO] [stderr]    |
[INFO] [stderr] 83 |         mode: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `to`
[INFO] [stderr]   --> src/games/chess/pieces/knight.rs:84:9
[INFO] [stderr]    |
[INFO] [stderr] 84 |         to: BitBoard<T>,
[INFO] [stderr]    |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `from`
[INFO] [stderr]    --> src/games/chess/pieces/pawn.rs:169:9
[INFO] [stderr]     |
[INFO] [stderr] 169 |         from: BitBoard<T>,
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]    --> src/games/chess/pieces/pawn.rs:173:9
[INFO] [stderr]     |
[INFO] [stderr] 173 |         mode: u16,
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `to`
[INFO] [stderr]    --> src/games/chess/pieces/pawn.rs:174:9
[INFO] [stderr]     |
[INFO] [stderr] 174 |         to: BitBoard<T>,
[INFO] [stderr]     |         ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `edges`
[INFO] [stderr]    --> src/games/chess/pieces/pawn.rs:188:13
[INFO] [stderr]     |
[INFO] [stderr] 188 |         let edges = &board.state.edges[0];
[INFO] [stderr]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_edges`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `team`
[INFO] [stderr]   --> src/games/chess/pieces/sliders/bishop.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 58 |         team: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]   --> src/games/chess/pieces/sliders/bishop.rs:59:9
[INFO] [stderr]    |
[INFO] [stderr] 59 |         mode: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `team`
[INFO] [stderr]   --> src/games/chess/pieces/sliders/queen.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |         team: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]   --> src/games/chess/pieces/sliders/queen.rs:79:9
[INFO] [stderr]    |
[INFO] [stderr] 79 |         mode: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `team`
[INFO] [stderr]   --> src/games/chess/pieces/sliders/rook.rs:54:9
[INFO] [stderr]    |
[INFO] [stderr] 54 |         team: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]   --> src/games/chess/pieces/sliders/rook.rs:55:9
[INFO] [stderr]    |
[INFO] [stderr] 55 |         mode: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board`
[INFO] [stderr]  --> src/games/ataxx/process.rs:6:21
[INFO] [stderr]   |
[INFO] [stderr] 6 |     fn apply(&self, board: &mut Board<T>) {}
[INFO] [stderr]   |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `board`
[INFO] [stderr]   --> src/games/ataxx/controller.rs:10:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stderr]    |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `action`
[INFO] [stderr]   --> src/games/ataxx/controller.rs:10:46
[INFO] [stderr]    |
[INFO] [stderr] 10 |     fn is_legal(&self, board: &mut Board<T>, action: &Move) -> bool {
[INFO] [stderr]    |                                              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]   --> src/games/ataxx/controller.rs:18:53
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn transform_moves(&self, board: &mut Board<T>, mode: u16, actions: Vec<Move>) -> Vec<Move> {
[INFO] [stderr]    |                                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `state`
[INFO] [stderr]   --> src/games/ataxx/controller.rs:88:37
[INFO] [stderr]    |
[INFO] [stderr] 88 |     fn update(&self, action: &Move, state: &BoardState<T>) -> TurnUpdate {
[INFO] [stderr]    |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `team`
[INFO] [stderr]   --> src/games/ataxx/pieces/mod.rs:57:9
[INFO] [stderr]    |
[INFO] [stderr] 57 |         team: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_team`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mode`
[INFO] [stderr]   --> src/games/ataxx/pieces/mod.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 58 |         mode: u16,
[INFO] [stderr]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mode`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bitboard/util.rs:124:26
[INFO] [stderr]     |
[INFO] [stderr] 124 |     pub fn iter_set_bits(mut self, end: u16) -> BitIterator<T> {
[INFO] [stderr]     |                          ----^^^^
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/games/chess/pieces/pawn.rs:106:55
[INFO] [stderr]     |
[INFO] [stderr] 106 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stderr]     |                                                       ----^^^^
[INFO] [stderr]     |                                                       |
[INFO] [stderr]     |                                                       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/games/ataxx/pieces/mod.rs:42:55
[INFO] [stderr]    |
[INFO] [stderr] 42 |     fn generate_lookup_moves(&self, board: &Board<T>, mut from: BitBoard<T>) -> AttackDirections<T> {
[INFO] [stderr]    |                                                       ----^^^^
[INFO] [stderr]    |                                                       |
[INFO] [stderr]    |                                                       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TEST_STR` is never used
[INFO] [stderr]  --> src/games/chess/suite.rs:6:7
[INFO] [stderr]   |
[INFO] [stderr] 6 | const TEST_STR: &str = r#"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1 ;D1 20 ;D2 400 ;D3 8902 ;D4 197281 ;D5 4865609 ;D6 119...
[INFO] [stderr]   |       ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `TEST_STR` is never used
[INFO] [stderr]  --> src/games/ataxx/suite.rs:6:7
[INFO] [stderr]   |
[INFO] [stderr] 6 | const TEST_STR: &str = r#"7/7/7/7/7/7/7 x 0 1; D1 0; D2 0; D3 0; D4 0
[INFO] [stderr]   |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `GAPPED_TESTS` is never used
[INFO] [stderr]   --> src/games/ataxx/suite.rs:17:7
[INFO] [stderr]    |
[INFO] [stderr] 17 | const GAPPED_TESTS: &str = r#"7/7/7/7/-------/-------/x5o x 0 1; D1 2; D2 4; D3 13; D4 30; D5 73; D6 174
[INFO] [stderr]    |       ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/board/util.rs:153:9
[INFO] [stderr]     |
[INFO] [stderr] 153 |         lookup.push(new_val);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 153 |         let _ = lookup.push(new_val);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/board/util.rs:166:9
[INFO] [stderr]     |
[INFO] [stderr] 166 |         lookup.push(new_val as u16);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 166 |         let _ = lookup.push(new_val as u16);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/board/util.rs:340:9
[INFO] [stderr]     |
[INFO] [stderr] 340 |         self.history.push_back(action);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 340 |         let _ = self.history.push_back(action);
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/board/util.rs:356:13
[INFO] [stderr]     |
[INFO] [stderr] 356 |             self.history.push_front(first_history_move);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 356 |             let _ = self.history.push_front(first_history_move);
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/games/chess/args.rs:157:9
[INFO] [stderr]     |
[INFO] [stderr] 157 |         board.history.push_back(Move::Action(action));
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 157 |         let _ = board.history.push_back(Move::Action(action));
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `monster_chess` (lib) generated 95 warnings (run `cargo fix --lib -p monster_chess` to apply 84 suggestions)
[INFO] [stderr] warning: unused import: `fastrand::u64`
[INFO] [stderr]   --> src/board/zobrist.rs:80:9
[INFO] [stderr]    |
[INFO] [stderr] 80 |     use fastrand::u64;
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::ZobristHashTable`
[INFO] [stderr]   --> src/board/zobrist.rs:84:9
[INFO] [stderr]    |
[INFO] [stderr] 84 |     use super::ZobristHashTable;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ATTACKS_MODE`
[INFO] [stderr]   --> src/games/chess/game.rs:68:24
[INFO] [stderr]    |
[INFO] [stderr] 68 |     use super::{Chess, ATTACKS_MODE};
[INFO] [stderr]    |                        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `monster_chess` (lib test) generated 89 warnings (86 duplicates) (run `cargo fix --lib -p monster_chess --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/monster_chess-777db058e286f647)
[INFO] [stdout] test games::ataxx::suite::ataxx_perft_suite has been running for over 60 seconds
[INFO] [stdout] test games::chess::suite::chess_perft_suite has been running for over 60 seconds
[INFO] [stdout] test games::ataxx::suite::ataxx_perft_suite ... ok
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "a90d9929781aa0db31e3469515be7a0a76420e191393d95d12b3af5d65accf9b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a90d9929781aa0db31e3469515be7a0a76420e191393d95d12b3af5d65accf9b", kill_on_drop: false }`
[INFO] [stdout] a90d9929781aa0db31e3469515be7a0a76420e191393d95d12b3af5d65accf9b
