[INFO] cloning repository https://github.com/metaember/chess [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/metaember/chess" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmetaember%2Fchess", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmetaember%2Fchess'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 5a4bf300dca2e44cbb577dc06221a591ab421faa [INFO] checking metaember/chess against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmetaember%2Fchess" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/metaember/chess on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/metaember/chess [INFO] finished tweaking git repo https://github.com/metaember/chess [INFO] tweaked toml for git repo https://github.com/metaember/chess written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/metaember/chess already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: build [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded eyre v0.6.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 786623c10b28b5e6c07afc5f0ee90b9603148a533e6a839de331a4db5da046f0 [INFO] running `Command { std: "docker" "start" "-a" "786623c10b28b5e6c07afc5f0ee90b9603148a533e6a839de331a4db5da046f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "786623c10b28b5e6c07afc5f0ee90b9603148a533e6a839de331a4db5da046f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "786623c10b28b5e6c07afc5f0ee90b9603148a533e6a839de331a4db5da046f0", kill_on_drop: false }` [INFO] [stdout] 786623c10b28b5e6c07afc5f0ee90b9603148a533e6a839de331a4db5da046f0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c83e92435c63ed4eb51cf2bc1b98b45cb538a450b36d043077a87dfd1772a935 [INFO] running `Command { std: "docker" "start" "-a" "c83e92435c63ed4eb51cf2bc1b98b45cb538a450b36d043077a87dfd1772a935", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: build [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling libc v0.2.150 [INFO] [stderr] Compiling proc-macro2 v1.0.69 [INFO] [stderr] Checking once_cell v1.18.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking either v1.9.0 [INFO] [stderr] Checking sharded-slab v0.1.7 [INFO] [stderr] Compiling serde v1.0.192 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Checking thread_local v1.1.7 [INFO] [stderr] Compiling memoffset v0.9.0 [INFO] [stderr] Compiling crossbeam-epoch v0.9.15 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Checking pin-project-lite v0.2.13 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Compiling rayon-core v1.12.0 [INFO] [stderr] Checking anstyle-parse v0.2.2 [INFO] [stderr] Checking tracing-subscriber v0.3.18 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Compiling eyre v0.6.9 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Checking crossbeam-deque v0.8.3 [INFO] [stderr] Checking anstyle-query v1.0.0 [INFO] [stderr] Compiling syn v2.0.39 [INFO] [stderr] Checking getrandom v0.2.11 [INFO] [stderr] Checking colorchoice v1.0.0 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking gimli v0.28.0 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking anstyle v1.0.4 [INFO] [stderr] Checking memchr v2.6.4 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking miniz_oxide v0.7.1 [INFO] [stderr] Checking anstream v0.6.4 [INFO] [stderr] Checking tracing-error v0.2.0 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking object v0.32.1 [INFO] [stderr] Checking indenter v0.3.3 [INFO] [stderr] Checking clap_lex v0.6.0 [INFO] [stderr] Compiling serde_json v1.0.108 [INFO] [stderr] Checking strsim v0.10.0 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Checking owo-colors v3.5.0 [INFO] [stderr] Checking rustc-demangle v0.1.23 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking clap_builder v4.4.8 [INFO] [stderr] Checking rayon v1.8.0 [INFO] [stderr] Checking ryu v1.0.15 [INFO] [stderr] Compiling backtrace v0.3.69 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Checking color-spantrace v0.2.1 [INFO] [stderr] Checking iana-time-zone v0.1.58 [INFO] [stderr] Checking half v1.8.2 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking itoa v1.0.9 [INFO] [stderr] Checking plotters-backend v0.3.5 [INFO] [stderr] Checking ciborium-io v0.2.1 [INFO] [stderr] Checking os_str_bytes v6.6.1 [INFO] [stderr] Checking plotters-svg v0.3.5 [INFO] [stderr] Checking ciborium-ll v0.2.1 [INFO] [stderr] Checking clap_lex v0.2.4 [INFO] [stderr] Checking addr2line v0.21.0 [INFO] [stderr] Checking chrono v0.4.31 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking itertools v0.12.0 [INFO] [stderr] Checking regex-automata v0.4.3 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking textwrap v0.16.0 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Checking walkdir v2.4.0 [INFO] [stderr] Checking clap v3.2.25 [INFO] [stderr] Checking plotters v0.3.5 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking anes v0.1.6 [INFO] [stderr] Checking diff v0.1.13 [INFO] [stderr] Checking yansi v0.5.1 [INFO] [stderr] Checking oorandom v11.1.3 [INFO] [stderr] Checking pretty_assertions v1.4.0 [INFO] [stderr] Checking color-eyre v0.6.2 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking regex v1.10.2 [INFO] [stderr] Compiling serde_derive v1.0.192 [INFO] [stderr] Compiling clap_derive v4.4.7 [INFO] [stderr] Checking clap v4.4.8 [INFO] [stderr] Checking rust_chess v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/board.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/search.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `piece_at_algebraic` and `display_piece_moves` are never used [INFO] [stdout] --> src/board.rs:744:8 [INFO] [stdout] | [INFO] [stdout] 576 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 744 | fn piece_at_algebraic(&self, pos: &str) -> Option<&Piece> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1946 | fn display_piece_moves(&self, piece: &Piece) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_perft_expected_node_count` is never used [INFO] [stdout] --> src/perft.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn get_perft_expected_node_count(depth: u8) -> i64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/board.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/search.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_algebraic` is never used [INFO] [stdout] --> src/board.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 190 | impl Piece { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 191 | pub fn from_algebraic(piece: char, position: &str) -> Piece { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ThreefoldRepetition`, `FiftyMoveRule`, and `InsufficientMaterial` are never constructed [INFO] [stdout] --> src/board.rs:344:5 [INFO] [stdout] | [INFO] [stdout] 341 | pub enum Status { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 344 | ThreefoldRepetition, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 345 | FiftyMoveRule, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 346 | InsufficientMaterial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Status` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_castle` is never used [INFO] [stdout] --> src/board.rs:362:12 [INFO] [stdout] | [INFO] [stdout] 361 | impl MoveFlag { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 362 | pub fn is_castle(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RaysFromPosition` is never constructed [INFO] [stdout] --> src/board.rs:489:12 [INFO] [stdout] | [INFO] [stdout] 489 | pub struct RaysFromPosition { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_from_position` is never used [INFO] [stdout] --> src/board.rs:501:12 [INFO] [stdout] | [INFO] [stdout] 500 | impl RaysFromPosition { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 501 | pub fn new_from_position(pos: Position) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RaysForBoard` is never constructed [INFO] [stdout] --> src/board.rs:523:12 [INFO] [stdout] | [INFO] [stdout] 523 | pub struct RaysForBoard { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/board.rs:529:12 [INFO] [stdout] | [INFO] [stdout] 528 | impl RaysForBoard { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 529 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/board.rs:652:12 [INFO] [stdout] | [INFO] [stdout] 576 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 652 | pub fn from_fen_no_moves(fen_string: &str) -> Board { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 656 | pub fn new() -> Board { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 744 | fn piece_at_algebraic(&self, pos: &str) -> Option<&Piece> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 754 | pub fn check_for_insufficient_material(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 797 | pub fn check_for_threefold_repetition(&self, previous_board_fens: &Vec) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 812 | pub fn check_for_fifty_move_rule(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1946 | fn display_piece_moves(&self, piece: &Piece) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `white_pawn_material`, `white_piece_material`, `black_pawn_material`, and `black_piece_material` are never read [INFO] [stdout] --> src/evaluate.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Material { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 7 | pub white_pawn_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | pub white_piece_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | pub black_pawn_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub black_piece_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_material_difference` is never used [INFO] [stdout] --> src/evaluate.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Material { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 17 | pub fn get_material_difference(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `search` is never used [INFO] [stdout] --> src/search.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn search(max_depth: u8, board: &Board) -> Move { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `minimax_no_quiescence` is never used [INFO] [stdout] --> src/search.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn minimax_no_quiescence(max_depth: u8, board: &Board) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `minimax_no_ordering` is never used [INFO] [stdout] --> src/search.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn minimax_no_ordering(max_depth: u8, board: &Board) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `minimax_no_pruning` is never used [INFO] [stdout] --> src/search.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn minimax_no_pruning(max_depth: u8, board: &Board) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `negamax_fast` is never used [INFO] [stdout] --> src/search.rs:305:8 [INFO] [stdout] | [INFO] [stdout] 305 | pub fn negamax_fast(deapth: i32, board: &Board, alpha: i32, beta: i32, quiescence: bool) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `negamax_captures_only_fast` is never used [INFO] [stdout] --> src/search.rs:337:8 [INFO] [stdout] | [INFO] [stdout] 337 | pub fn negamax_captures_only_fast(board: &Board, alpha: i32, beta: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new_from_fen_silent` and `new_silent` are never used [INFO] [stdout] --> src/game.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Game { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn new_from_fen_silent(max_depth: u8, start_fen: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn new_silent(max_depth: u8) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ciborium v0.2.1 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking criterion v0.4.0 [INFO] [stdout] warning: unused import: `minimax` [INFO] [stdout] --> benches/benchmarks.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use rust_chess::search::{minimax, negamax, negamax_fast, search, MAX_SCORE, MIN_SCORE}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Board` is imported redundantly [INFO] [stdout] --> src/perft.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 67 | use super::*; [INFO] [stdout] | -------- the item `Board` is already imported here [INFO] [stdout] 68 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/board.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/search.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/board.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/search.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eval` [INFO] [stdout] --> src/search.rs:437:13 [INFO] [stdout] | [INFO] [stdout] 437 | let eval = search_result.best_score; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_eval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `piece_at_algebraic` and `display_piece_moves` are never used [INFO] [stdout] --> src/board.rs:744:8 [INFO] [stdout] | [INFO] [stdout] 576 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 744 | fn piece_at_algebraic(&self, pos: &str) -> Option<&Piece> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1946 | fn display_piece_moves(&self, piece: &Piece) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eval` [INFO] [stdout] --> src/search.rs:437:13 [INFO] [stdout] | [INFO] [stdout] 437 | let eval = search_result.best_score; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_eval` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ThreefoldRepetition`, `FiftyMoveRule`, and `InsufficientMaterial` are never constructed [INFO] [stdout] --> src/board.rs:344:5 [INFO] [stdout] | [INFO] [stdout] 341 | pub enum Status { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 344 | ThreefoldRepetition, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 345 | FiftyMoveRule, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 346 | InsufficientMaterial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Status` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RaysFromPosition` is never constructed [INFO] [stdout] --> src/board.rs:489:12 [INFO] [stdout] | [INFO] [stdout] 489 | pub struct RaysFromPosition { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_from_position` is never used [INFO] [stdout] --> src/board.rs:501:12 [INFO] [stdout] | [INFO] [stdout] 500 | impl RaysFromPosition { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 501 | pub fn new_from_position(pos: Position) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RaysForBoard` is never constructed [INFO] [stdout] --> src/board.rs:523:12 [INFO] [stdout] | [INFO] [stdout] 523 | pub struct RaysForBoard { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/board.rs:529:12 [INFO] [stdout] | [INFO] [stdout] 528 | impl RaysForBoard { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 529 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `piece_at_algebraic`, `check_for_insufficient_material`, `check_for_threefold_repetition`, `check_for_fifty_move_rule`, and `display_piece_moves` are never used [INFO] [stdout] --> src/board.rs:744:8 [INFO] [stdout] | [INFO] [stdout] 576 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 744 | fn piece_at_algebraic(&self, pos: &str) -> Option<&Piece> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 754 | pub fn check_for_insufficient_material(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 797 | pub fn check_for_threefold_repetition(&self, previous_board_fens: &Vec) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 812 | pub fn check_for_fifty_move_rule(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1946 | fn display_piece_moves(&self, piece: &Piece) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `white_pawn_material`, `white_piece_material`, `black_pawn_material`, and `black_piece_material` are never read [INFO] [stdout] --> src/evaluate.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Material { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 7 | pub white_pawn_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | pub white_piece_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 12 | pub black_pawn_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 13 | pub black_piece_material: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_material_difference` is never used [INFO] [stdout] --> src/evaluate.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Material { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 17 | pub fn get_material_difference(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `negamax_fast` is never used [INFO] [stdout] --> src/search.rs:305:8 [INFO] [stdout] | [INFO] [stdout] 305 | pub fn negamax_fast(deapth: i32, board: &Board, alpha: i32, beta: i32, quiescence: bool) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `negamax_captures_only_fast` is never used [INFO] [stdout] --> src/search.rs:337:8 [INFO] [stdout] | [INFO] [stdout] 337 | pub fn negamax_captures_only_fast(board: &Board, alpha: i32, beta: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new_from_fen_silent` and `new_silent` are never used [INFO] [stdout] --> src/game.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Game { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn new_from_fen_silent(max_depth: u8, start_fen: String) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn new_silent(max_depth: u8) -> Self { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 59.19s [INFO] running `Command { std: "docker" "inspect" "c83e92435c63ed4eb51cf2bc1b98b45cb538a450b36d043077a87dfd1772a935", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c83e92435c63ed4eb51cf2bc1b98b45cb538a450b36d043077a87dfd1772a935", kill_on_drop: false }` [INFO] [stdout] c83e92435c63ed4eb51cf2bc1b98b45cb538a450b36d043077a87dfd1772a935