[INFO] fetching crate monster_chess 0.0.18...
[INFO] testing monster_chess-0.0.18 against 1.75.0 for beta-1.76-1
[INFO] extracting crate monster_chess 0.0.18 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate monster_chess 0.0.18 on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "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-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7424c84c1b7a4d8f2f1c8a85c57e3b4efb5abd9b01aeba04bcd6c14cbcc310c7
[INFO] running `Command { std: "docker" "start" "-a" "7424c84c1b7a4d8f2f1c8a85c57e3b4efb5abd9b01aeba04bcd6c14cbcc310c7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7424c84c1b7a4d8f2f1c8a85c57e3b4efb5abd9b01aeba04bcd6c14cbcc310c7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7424c84c1b7a4d8f2f1c8a85c57e3b4efb5abd9b01aeba04bcd6c14cbcc310c7", kill_on_drop: false }`
[INFO] [stdout] 7424c84c1b7a4d8f2f1c8a85c57e3b4efb5abd9b01aeba04bcd6c14cbcc310c7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4c1a7ff33d3b0535b218af68d1323b327dbe47b8f149ea2898849ae66a157f01
[INFO] running `Command { std: "docker" "start" "-a" "4c1a7ff33d3b0535b218af68d1323b327dbe47b8f149ea2898849ae66a157f01", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling shell-words v1.1.0
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling hash32 v0.2.1
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling heapless v0.7.17
[INFO] [stderr]    Compiling monster_chess v0.0.18 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `bitops::*`
[INFO] [stdout]  --> src/bitboard/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use bitops::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `numops::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use numops::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ord::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ord::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shifts::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use shifts::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[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] 
[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 import: `init::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use init::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stdout]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use suite::*;
[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: 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: 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: 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: 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: 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 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: 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: 102 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3.16s
[INFO] running `Command { std: "docker" "inspect" "4c1a7ff33d3b0535b218af68d1323b327dbe47b8f149ea2898849ae66a157f01", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4c1a7ff33d3b0535b218af68d1323b327dbe47b8f149ea2898849ae66a157f01", kill_on_drop: false }`
[INFO] [stdout] 4c1a7ff33d3b0535b218af68d1323b327dbe47b8f149ea2898849ae66a157f01
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3b1ec8012c419a7922a89fbb333bdd937201a0d5038242d19eb2e75e615e10ad
[INFO] running `Command { std: "docker" "start" "-a" "3b1ec8012c419a7922a89fbb333bdd937201a0d5038242d19eb2e75e615e10ad", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.18
[INFO] [stderr]    Compiling serde v1.0.194
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling serde_json v1.0.111
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling plotters-backend v0.3.5
[INFO] [stderr]    Compiling ciborium-io v0.2.1
[INFO] [stderr]    Compiling os_str_bytes v6.6.1
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling textwrap v0.16.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling oorandom v11.1.3
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stdout] warning: unused import: `bitops::*`
[INFO] [stdout]  --> src/bitboard/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use bitops::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `numops::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use numops::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ord::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ord::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shifts::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use shifts::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[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] 
[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 import: `init::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use init::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stdout]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use suite::*;
[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: 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: 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] [stderr]    Compiling ciborium-ll v0.2.1
[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: 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: 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: 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 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: 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: 102 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling plotters-svg v0.3.5
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.17
[INFO] [stderr]    Compiling crossbeam-deque v0.8.4
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling plotters v0.3.5
[INFO] [stderr]    Compiling rayon v1.8.0
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]    Compiling ciborium v0.2.1
[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 import: `bitops::*`
[INFO] [stdout]  --> src/bitboard/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use bitops::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `numops::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use numops::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ord::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ord::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shifts::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use shifts::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[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] 
[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 import: `init::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use init::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stdout]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use suite::*;
[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: 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: 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: 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: 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: 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 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: 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: 96 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 8.55s
[INFO] running `Command { std: "docker" "inspect" "3b1ec8012c419a7922a89fbb333bdd937201a0d5038242d19eb2e75e615e10ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3b1ec8012c419a7922a89fbb333bdd937201a0d5038242d19eb2e75e615e10ad", kill_on_drop: false }`
[INFO] [stdout] 3b1ec8012c419a7922a89fbb333bdd937201a0d5038242d19eb2e75e615e10ad
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 04cb7e25c7298935fe10d626a812a219add7231c79a9a86f310b895f413f8c6f
[INFO] running `Command { std: "docker" "start" "-a" "04cb7e25c7298935fe10d626a812a219add7231c79a9a86f310b895f413f8c6f", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `bitops::*`
[INFO] [stderr]  --> src/bitboard/mod.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub use bitops::*;
[INFO] [stderr]   |         ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `numops::*`
[INFO] [stderr]   --> src/bitboard/mod.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use numops::*;
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ord::*`
[INFO] [stderr]   --> src/bitboard/mod.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub use ord::*;
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `shifts::*`
[INFO] [stderr]   --> src/bitboard/mod.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub use shifts::*;
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 
[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] 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 import: `init::*`
[INFO] [stderr]  --> src/board/fen/mod.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub use init::*;
[INFO] [stderr]   |         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `state::*`
[INFO] [stderr]  --> src/board/fen/mod.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stderr]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use suite::*;
[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: 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: 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] [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: `_action`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `action`
[INFO] [stderr]   --> src/board/game.rs:95:22
[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: `_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] [stderr]     |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rows`
[INFO] [stderr]  --> src/board/lookups.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     rows: Rows,
[INFO] [stderr]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stderr] 
[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: 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: 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: 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: 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: 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 102 warnings (run `cargo fix --lib -p monster_chess` to apply 91 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 96 warnings (93 duplicates) (run `cargo fix --lib -p monster_chess --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/monster_chess-5adbab0c12924378)
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test bitboard::bitops::tests::or ... ok
[INFO] [stdout] test bitboard::bitops::tests::not ... ok
[INFO] [stdout] test bitboard::bitops::tests::and ... ok
[INFO] [stdout] test bitboard::bitops::tests::shr ... ok
[INFO] [stdout] test bitboard::bitops::tests::shl ... ok
[INFO] [stdout] test bitboard::bitscan::tests::bitscan_forward ... ok
[INFO] [stdout] test bitboard::bitops::tests::xor ... ok
[INFO] [stdout] test bitboard::bitscan::tests::bitscan_reverse ... ok
[INFO] [stdout] test bitboard::numops::tests::add ... ok
[INFO] [stdout] test bitboard::ord::tests::ord ... ok
[INFO] [stdout] test bitboard::numops::tests::sub ... ok
[INFO] [stdout] test games::chess::game::tests::checkmate ... ok
[INFO] [stdout] test board::zobrist::tests::chess_zobrist_test ... ok
[INFO] [stdout] test games::ataxx::suite::ataxx_perft_suite ... ok
[INFO] [stdout] test games::chess::suite::chess_perft_suite has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "04cb7e25c7298935fe10d626a812a219add7231c79a9a86f310b895f413f8c6f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "04cb7e25c7298935fe10d626a812a219add7231c79a9a86f310b895f413f8c6f", kill_on_drop: false }`
[INFO] [stdout] 04cb7e25c7298935fe10d626a812a219add7231c79a9a86f310b895f413f8c6f
[INFO] testing monster_chess-0.0.18 against beta-2023-12-22 for beta-1.76-1
[INFO] extracting crate monster_chess 0.0.18 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate monster_chess 0.0.18 on toolchain beta-2023-12-22
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "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-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f4a74b52f5e93ed3cbe7f457195ac5e3f1d2bd13ef6053a784add168e5e310b5
[INFO] running `Command { std: "docker" "start" "-a" "f4a74b52f5e93ed3cbe7f457195ac5e3f1d2bd13ef6053a784add168e5e310b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f4a74b52f5e93ed3cbe7f457195ac5e3f1d2bd13ef6053a784add168e5e310b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f4a74b52f5e93ed3cbe7f457195ac5e3f1d2bd13ef6053a784add168e5e310b5", kill_on_drop: false }`
[INFO] [stdout] f4a74b52f5e93ed3cbe7f457195ac5e3f1d2bd13ef6053a784add168e5e310b5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 50cf4e56e4546cf250018ed45af3550f64b253dec65510798f736786b9c9b8d9
[INFO] running `Command { std: "docker" "start" "-a" "50cf4e56e4546cf250018ed45af3550f64b253dec65510798f736786b9c9b8d9", kill_on_drop: false }`
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling shell-words v1.1.0
[INFO] [stderr]    Compiling hash32 v0.2.1
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]    Compiling heapless v0.7.17
[INFO] [stderr]    Compiling monster_chess v0.0.18 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `bitops::*`
[INFO] [stdout]  --> src/bitboard/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use bitops::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `numops::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use numops::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ord::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ord::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shifts::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use shifts::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[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] 
[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 import: `init::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use init::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stdout]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use suite::*;
[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: 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: 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: 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: 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: 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 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: 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: 102 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2.53s
[INFO] running `Command { std: "docker" "inspect" "50cf4e56e4546cf250018ed45af3550f64b253dec65510798f736786b9c9b8d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "50cf4e56e4546cf250018ed45af3550f64b253dec65510798f736786b9c9b8d9", kill_on_drop: false }`
[INFO] [stdout] 50cf4e56e4546cf250018ed45af3550f64b253dec65510798f736786b9c9b8d9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 41e7141f845cc9d052f4a95c55b04bfb8bc0bc2f92d9405d682a9a0009c5e1bf
[INFO] running `Command { std: "docker" "start" "-a" "41e7141f845cc9d052f4a95c55b04bfb8bc0bc2f92d9405d682a9a0009c5e1bf", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.18
[INFO] [stderr]    Compiling serde v1.0.194
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]    Compiling either v1.9.0
[INFO] [stderr]    Compiling serde_json v1.0.111
[INFO] [stderr]    Compiling ryu v1.0.16
[INFO] [stderr]    Compiling plotters-backend v0.3.5
[INFO] [stderr]    Compiling regex-syntax v0.8.2
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling os_str_bytes v6.6.1
[INFO] [stderr]    Compiling itoa v1.0.10
[INFO] [stderr]    Compiling ciborium-io v0.2.1
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling textwrap v0.16.0
[INFO] [stderr]    Compiling walkdir v2.4.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling oorandom v11.1.3
[INFO] [stderr]    Compiling clap_lex v0.2.4
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stdout] warning: unused import: `bitops::*`
[INFO] [stdout]  --> src/bitboard/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use bitops::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `numops::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use numops::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ord::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ord::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shifts::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use shifts::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[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] 
[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 import: `init::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use init::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stdout]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use suite::*;
[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: 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: 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: 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: 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: 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 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: 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: 102 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling plotters-svg v0.3.5
[INFO] [stderr]    Compiling ciborium-ll v0.2.1
[INFO] [stderr]    Compiling clap v3.2.25
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.17
[INFO] [stderr]    Compiling crossbeam-deque v0.8.4
[INFO] [stderr]    Compiling regex-automata v0.4.3
[INFO] [stderr]    Compiling plotters v0.3.5
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling rayon v1.8.0
[INFO] [stderr]    Compiling regex v1.10.2
[INFO] [stderr]    Compiling ciborium v0.2.1
[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 import: `bitops::*`
[INFO] [stdout]  --> src/bitboard/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use bitops::*;
[INFO] [stdout]   |         ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `numops::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use numops::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ord::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use ord::*;
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `shifts::*`
[INFO] [stdout]   --> src/bitboard/mod.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use shifts::*;
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[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] 
[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 import: `init::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub use init::*;
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `state::*`
[INFO] [stdout]  --> src/board/fen/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stdout]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use suite::*;
[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: 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: 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: 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: 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: 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 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: 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: 96 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 11.97s
[INFO] running `Command { std: "docker" "inspect" "41e7141f845cc9d052f4a95c55b04bfb8bc0bc2f92d9405d682a9a0009c5e1bf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "41e7141f845cc9d052f4a95c55b04bfb8bc0bc2f92d9405d682a9a0009c5e1bf", kill_on_drop: false }`
[INFO] [stdout] 41e7141f845cc9d052f4a95c55b04bfb8bc0bc2f92d9405d682a9a0009c5e1bf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 05504b90e42e66ec024d7f87f713f37305bdbc4faf37b3dedbc0ffef60d0eff6
[INFO] running `Command { std: "docker" "start" "-a" "05504b90e42e66ec024d7f87f713f37305bdbc4faf37b3dedbc0ffef60d0eff6", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `bitops::*`
[INFO] [stderr]  --> src/bitboard/mod.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub use bitops::*;
[INFO] [stderr]   |         ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `numops::*`
[INFO] [stderr]   --> src/bitboard/mod.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use numops::*;
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ord::*`
[INFO] [stderr]   --> src/bitboard/mod.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub use ord::*;
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `shifts::*`
[INFO] [stderr]   --> src/bitboard/mod.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub use shifts::*;
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 
[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] 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 import: `init::*`
[INFO] [stderr]  --> src/board/fen/mod.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub use init::*;
[INFO] [stderr]   |         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `state::*`
[INFO] [stderr]  --> src/board/fen/mod.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub use state::*;
[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: `suite::*`
[INFO] [stderr]   --> src/games/ataxx/mod.rs:11:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub use suite::*;
[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: 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: 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] [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: `_action`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `action`
[INFO] [stderr]   --> src/board/game.rs:95:22
[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: `_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] [stderr]     |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_board`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rows`
[INFO] [stderr]  --> src/board/lookups.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 |     rows: Rows,
[INFO] [stderr]   |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stderr] 
[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: 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: 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: 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: 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: 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 102 warnings (run `cargo fix --lib -p monster_chess` to apply 91 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 96 warnings (93 duplicates) (run `cargo fix --lib -p monster_chess --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/monster_chess-a838cb6baa0e1df5)
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test bitboard::bitops::tests::shr ... ok
[INFO] [stdout] test bitboard::bitops::tests::and ... ok
[INFO] [stdout] test bitboard::bitops::tests::not ... ok
[INFO] [stdout] test bitboard::bitops::tests::shl ... ok
[INFO] [stdout] test bitboard::bitops::tests::xor ... ok
[INFO] [stdout] test bitboard::bitscan::tests::bitscan_forward ... ok
[INFO] [stdout] test bitboard::bitops::tests::or ... ok
[INFO] [stdout] test bitboard::bitscan::tests::bitscan_reverse ... ok
[INFO] [stdout] test bitboard::numops::tests::sub ... ok
[INFO] [stdout] test board::zobrist::tests::chess_zobrist_test ... ok
[INFO] [stdout] test bitboard::ord::tests::ord ... ok
[INFO] [stdout] test games::chess::game::tests::checkmate ... ok
[INFO] [stdout] test bitboard::numops::tests::add ... ok
[INFO] [stdout] test games::ataxx::suite::ataxx_perft_suite ... ok
[INFO] [stdout] test games::chess::suite::chess_perft_suite has been running for over 60 seconds
[ERROR] error running command: no output for 300 seconds
[INFO] running `Command { std: "docker" "inspect" "05504b90e42e66ec024d7f87f713f37305bdbc4faf37b3dedbc0ffef60d0eff6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "05504b90e42e66ec024d7f87f713f37305bdbc4faf37b3dedbc0ffef60d0eff6", kill_on_drop: false }`
[INFO] [stdout] 05504b90e42e66ec024d7f87f713f37305bdbc4faf37b3dedbc0ffef60d0eff6
