[INFO] updating cached repository https://github.com/craigfay/chess-engine [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] [stderr] From https://github.com/craigfay/chess-engine [INFO] [stderr] * [new branch] github-actions-init -> github-actions-init [INFO] [stderr] e8346a2..bf8ff59 master -> master [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] bf8ff59865be685d7099a83e795110d1de1d1e23 [INFO] testing craigfay/chess-engine against 1.44.0 for beta-1.45-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcraigfay%2Fchess-engine" "/workspace/builds/worker-3/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/craigfay/chess-engine on toolchain 1.44.0 [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/craigfay/chess-engine [INFO] finished tweaking git repo https://github.com/craigfay/chess-engine [INFO] tweaked toml for git repo https://github.com/craigfay/chess-engine written to /workspace/builds/worker-3/source/Cargo.toml [INFO] crate git repo https://github.com/craigfay/chess-engine already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+1.44.0" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] e897065ffb3aec7fd3f5fff56eee84edab816635b8d6be622232e1eedc3834d9 [INFO] running `"docker" "start" "-a" "e897065ffb3aec7fd3f5fff56eee84edab816635b8d6be622232e1eedc3834d9"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling chess-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `Color` [INFO] [stderr] --> src/actions.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | Color, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `legal_actions`, `legal_next_states` [INFO] [stderr] --> src/actions.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 25 | legal_next_states, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::gamestate::GameState` [INFO] [stderr] --> src/pieces.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::gamestate::GameState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Piece` [INFO] [stderr] --> src/utilities.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `color_is_checked`, `color_threatens_square`, `diagonal_path_is_obstructed`, `is_checkmate`, `is_stalemate`, `legal_actions`, `position_delta` [INFO] [stderr] --> src/tests.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | color_threatens_square, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 4 | color_is_checked, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 5 | position_delta, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 6 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 7 | is_checkmate, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 8 | is_stalemate, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 9 | diagonal_path_is_obstructed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Action`, `Capture`, `Castle`, `EnPassant`, `Kingside`, `Move`, `Promotion`, `Queenside` [INFO] [stderr] --> src/tests.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | Action, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 14 | Move, [INFO] [stderr] | ^^^^ [INFO] [stderr] 15 | Capture, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 16 | Promotion, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 17 | Castle, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 18 | CastleDirection::{Kingside, Queenside}, [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] 19 | EnPassant, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `GameState`, `Placement` [INFO] [stderr] --> src/tests.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | GameState, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 24 | Placement, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Bishop`, `Black`, `King`, `Knight`, `Pawn`, `Piece`, `Queen`, `Rook`, `White` [INFO] [stderr] --> src/tests.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 29 | PieceName::{ [INFO] [stderr] 30 | Pawn, [INFO] [stderr] | ^^^^ [INFO] [stderr] 31 | Rook, [INFO] [stderr] | ^^^^ [INFO] [stderr] 32 | Bishop, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 33 | Knight, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 34 | Queen, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 35 | King, [INFO] [stderr] | ^^^^ [INFO] [stderr] 36 | }, [INFO] [stderr] 37 | Color::{White, Black}, [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `fen_notation`, `square_algebraic_to_index`, `square_index_to_algebraic` [INFO] [stderr] --> src/tests.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | square_index_to_algebraic, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 42 | square_algebraic_to_index, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 43 | fen_notation, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:149:14 [INFO] [stderr] | [INFO] [stderr] 149 | let (delta_x, delta_y) = position_delta(self.from, self.to); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:271:14 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_y` [INFO] [stderr] --> src/actions.rs:271:23 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_y` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:197:13 [INFO] [stderr] | [INFO] [stderr] 197 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:297:13 [INFO] [stderr] | [INFO] [stderr] 297 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:524:13 [INFO] [stderr] | [INFO] [stderr] 524 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:525:13 [INFO] [stderr] | [INFO] [stderr] 525 | let mut capture_indicator = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 19 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.11s [INFO] running `"docker" "inspect" "e897065ffb3aec7fd3f5fff56eee84edab816635b8d6be622232e1eedc3834d9"` [INFO] running `"docker" "rm" "-f" "e897065ffb3aec7fd3f5fff56eee84edab816635b8d6be622232e1eedc3834d9"` [INFO] [stdout] e897065ffb3aec7fd3f5fff56eee84edab816635b8d6be622232e1eedc3834d9 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 16a5220fe506d793a7ee7a723c18ca9543cfefa5d4c281631f93aae032697e4c [INFO] running `"docker" "start" "-a" "16a5220fe506d793a7ee7a723c18ca9543cfefa5d4c281631f93aae032697e4c"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling chess-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unused import: `Color` [INFO] [stderr] --> src/actions.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | Color, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `legal_actions`, `legal_next_states` [INFO] [stderr] --> src/actions.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 25 | legal_next_states, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::gamestate::GameState` [INFO] [stderr] --> src/pieces.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::gamestate::GameState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Piece` [INFO] [stderr] --> src/utilities.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `color_is_checked`, `color_threatens_square`, `diagonal_path_is_obstructed`, `is_checkmate`, `is_stalemate`, `legal_actions`, `position_delta` [INFO] [stderr] --> src/tests.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | color_threatens_square, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 4 | color_is_checked, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 5 | position_delta, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 6 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 7 | is_checkmate, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 8 | is_stalemate, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 9 | diagonal_path_is_obstructed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Action`, `Capture`, `Castle`, `EnPassant`, `Kingside`, `Move`, `Promotion`, `Queenside` [INFO] [stderr] --> src/tests.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | Action, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 14 | Move, [INFO] [stderr] | ^^^^ [INFO] [stderr] 15 | Capture, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 16 | Promotion, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 17 | Castle, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 18 | CastleDirection::{Kingside, Queenside}, [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] 19 | EnPassant, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `GameState`, `Placement` [INFO] [stderr] --> src/tests.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | GameState, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 24 | Placement, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Bishop`, `Black`, `King`, `Knight`, `Pawn`, `Piece`, `Queen`, `Rook`, `White` [INFO] [stderr] --> src/tests.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 29 | PieceName::{ [INFO] [stderr] 30 | Pawn, [INFO] [stderr] | ^^^^ [INFO] [stderr] 31 | Rook, [INFO] [stderr] | ^^^^ [INFO] [stderr] 32 | Bishop, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 33 | Knight, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 34 | Queen, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 35 | King, [INFO] [stderr] | ^^^^ [INFO] [stderr] 36 | }, [INFO] [stderr] 37 | Color::{White, Black}, [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `fen_notation`, `square_algebraic_to_index`, `square_index_to_algebraic` [INFO] [stderr] --> src/tests.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | square_index_to_algebraic, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 42 | square_algebraic_to_index, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 43 | fen_notation, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:149:14 [INFO] [stderr] | [INFO] [stderr] 149 | let (delta_x, delta_y) = position_delta(self.from, self.to); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:271:14 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_y` [INFO] [stderr] --> src/actions.rs:271:23 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_y` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:197:13 [INFO] [stderr] | [INFO] [stderr] 197 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:297:13 [INFO] [stderr] | [INFO] [stderr] 297 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:524:13 [INFO] [stderr] | [INFO] [stderr] 524 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:525:13 [INFO] [stderr] | [INFO] [stderr] 525 | let mut capture_indicator = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 19 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `Color` [INFO] [stderr] --> src/actions.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | Color, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `legal_actions`, `legal_next_states` [INFO] [stderr] --> src/actions.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 25 | legal_next_states, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::gamestate::GameState` [INFO] [stderr] --> src/pieces.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::gamestate::GameState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Piece` [INFO] [stderr] --> src/utilities.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Piece` [INFO] [stderr] --> src/tests.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `square_index_to_algebraic` [INFO] [stderr] --> src/tests.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | square_index_to_algebraic, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:149:14 [INFO] [stderr] | [INFO] [stderr] 149 | let (delta_x, delta_y) = position_delta(self.from, self.to); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:271:14 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_y` [INFO] [stderr] --> src/actions.rs:271:23 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `action` [INFO] [stderr] --> src/tests.rs:155:9 [INFO] [stderr] | [INFO] [stderr] 155 | let action = Move { from: 61, to: 54 }; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `action` [INFO] [stderr] --> src/tests.rs:1135:9 [INFO] [stderr] | [INFO] [stderr] 1135 | let action = Move { from: 29, to: 20 }; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:197:13 [INFO] [stderr] | [INFO] [stderr] 197 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:297:13 [INFO] [stderr] | [INFO] [stderr] 297 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:524:13 [INFO] [stderr] | [INFO] [stderr] 524 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:525:13 [INFO] [stderr] | [INFO] [stderr] 525 | let mut capture_indicator = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/tests.rs:527:9 [INFO] [stderr] | [INFO] [stderr] 527 | let mut state = GameState::with_placements(vec![ [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/tests.rs:1378:9 [INFO] [stderr] | [INFO] [stderr] 1378 | let mut state = GameState::with_placements(vec![ [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 20 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.23s [INFO] running `"docker" "inspect" "16a5220fe506d793a7ee7a723c18ca9543cfefa5d4c281631f93aae032697e4c"` [INFO] running `"docker" "rm" "-f" "16a5220fe506d793a7ee7a723c18ca9543cfefa5d4c281631f93aae032697e4c"` [INFO] [stdout] 16a5220fe506d793a7ee7a723c18ca9543cfefa5d4c281631f93aae032697e4c [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1.44.0" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] ca73e822820cd565ddee5b7ae61f736b9ff2c9e3f6f3dd2b92e6ad637ffc174e [INFO] running `"docker" "start" "-a" "ca73e822820cd565ddee5b7ae61f736b9ff2c9e3f6f3dd2b92e6ad637ffc174e"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unused import: `Color` [INFO] [stderr] --> src/actions.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | Color, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `legal_actions`, `legal_next_states` [INFO] [stderr] --> src/actions.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 25 | legal_next_states, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::gamestate::GameState` [INFO] [stderr] --> src/pieces.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::gamestate::GameState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Piece` [INFO] [stderr] --> src/utilities.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `color_is_checked`, `color_threatens_square`, `diagonal_path_is_obstructed`, `is_checkmate`, `is_stalemate`, `legal_actions`, `position_delta` [INFO] [stderr] --> src/tests.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | color_threatens_square, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 4 | color_is_checked, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 5 | position_delta, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 6 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 7 | is_checkmate, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 8 | is_stalemate, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 9 | diagonal_path_is_obstructed, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Action`, `Capture`, `Castle`, `EnPassant`, `Kingside`, `Move`, `Promotion`, `Queenside` [INFO] [stderr] --> src/tests.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | Action, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 14 | Move, [INFO] [stderr] | ^^^^ [INFO] [stderr] 15 | Capture, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 16 | Promotion, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 17 | Castle, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 18 | CastleDirection::{Kingside, Queenside}, [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] 19 | EnPassant, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `GameState`, `Placement` [INFO] [stderr] --> src/tests.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | GameState, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 24 | Placement, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Bishop`, `Black`, `King`, `Knight`, `Pawn`, `Piece`, `Queen`, `Rook`, `White` [INFO] [stderr] --> src/tests.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 29 | PieceName::{ [INFO] [stderr] 30 | Pawn, [INFO] [stderr] | ^^^^ [INFO] [stderr] 31 | Rook, [INFO] [stderr] | ^^^^ [INFO] [stderr] 32 | Bishop, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 33 | Knight, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 34 | Queen, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 35 | King, [INFO] [stderr] | ^^^^ [INFO] [stderr] 36 | }, [INFO] [stderr] 37 | Color::{White, Black}, [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `fen_notation`, `square_algebraic_to_index`, `square_index_to_algebraic` [INFO] [stderr] --> src/tests.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | square_index_to_algebraic, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 42 | square_algebraic_to_index, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 43 | fen_notation, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:149:14 [INFO] [stderr] | [INFO] [stderr] 149 | let (delta_x, delta_y) = position_delta(self.from, self.to); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:271:14 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_y` [INFO] [stderr] --> src/actions.rs:271:23 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_y` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:197:13 [INFO] [stderr] | [INFO] [stderr] 197 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:297:13 [INFO] [stderr] | [INFO] [stderr] 297 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:524:13 [INFO] [stderr] | [INFO] [stderr] 524 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:525:13 [INFO] [stderr] | [INFO] [stderr] 525 | let mut capture_indicator = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 19 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused import: `Color` [INFO] [stderr] --> src/actions.rs:17:5 [INFO] [stderr] | [INFO] [stderr] 17 | Color, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `legal_actions`, `legal_next_states` [INFO] [stderr] --> src/actions.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | legal_actions, [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 25 | legal_next_states, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::gamestate::GameState` [INFO] [stderr] --> src/pieces.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::gamestate::GameState; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Piece` [INFO] [stderr] --> src/utilities.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Piece` [INFO] [stderr] --> src/tests.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | Piece, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `square_index_to_algebraic` [INFO] [stderr] --> src/tests.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | square_index_to_algebraic, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:149:14 [INFO] [stderr] | [INFO] [stderr] 149 | let (delta_x, delta_y) = position_delta(self.from, self.to); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_x` [INFO] [stderr] --> src/actions.rs:271:14 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_x` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `delta_y` [INFO] [stderr] --> src/actions.rs:271:23 [INFO] [stderr] | [INFO] [stderr] 271 | let (delta_x, delta_y) = position_delta(self.with, self.on); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_y` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `action` [INFO] [stderr] --> src/tests.rs:155:9 [INFO] [stderr] | [INFO] [stderr] 155 | let action = Move { from: 61, to: 54 }; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `action` [INFO] [stderr] --> src/tests.rs:1135:9 [INFO] [stderr] | [INFO] [stderr] 1135 | let action = Move { from: 29, to: 20 }; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:96:13 [INFO] [stderr] | [INFO] [stderr] 96 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:197:13 [INFO] [stderr] | [INFO] [stderr] 197 | let mut origin_rank = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:198:13 [INFO] [stderr] | [INFO] [stderr] 198 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:297:13 [INFO] [stderr] | [INFO] [stderr] 297 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:524:13 [INFO] [stderr] | [INFO] [stderr] 524 | let mut origin_file = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/actions.rs:525:13 [INFO] [stderr] | [INFO] [stderr] 525 | let mut capture_indicator = &mut String::with_capacity(1); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/tests.rs:527:9 [INFO] [stderr] | [INFO] [stderr] 527 | let mut state = GameState::with_placements(vec![ [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/tests.rs:1378:9 [INFO] [stderr] | [INFO] [stderr] 1378 | let mut state = GameState::with_placements(vec![ [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: 20 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.03s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/chess_engine-99e378619ca595f6 [INFO] [stdout] [INFO] [stdout] running 154 tests [INFO] [stdout] test tests::algebraic_notation_to_index_test ... ok [INFO] [stdout] test tests::black_kingside_castle_legality_test ... ok [INFO] [stdout] test tests::black_kingside_castle_obstruction_test ... ok [INFO] [stdout] test tests::black_kingside_castle_out_of_check_test ... ok [INFO] [stdout] test tests::black_kingside_castle_through_check_test ... ok [INFO] [stdout] test tests::black_knight_can_capture_test ... ok [INFO] [stdout] test tests::black_knight_promotion_legality_test ... ok [INFO] [stdout] test tests::black_pawn_can_capture_test ... ok [INFO] [stdout] test tests::black_pawn_cant_capture_vertically_test ... ok [INFO] [stdout] test tests::black_performs_en_passant_test ... ok [INFO] [stdout] test tests::black_promotion_to_bishop_test ... ok [INFO] [stdout] test tests::black_promotion_to_knight_test ... ok [INFO] [stdout] test tests::bishop_move_algebraic_notation_test ... ok [INFO] [stdout] test tests::black_cant_move_into_check_test ... ok [INFO] [stdout] test tests::black_promotion_to_rook_test ... ok [INFO] [stdout] test tests::black_promotion_to_queen_test ... ok [INFO] [stdout] test tests::black_queen_promotion_legality_test ... ok [INFO] [stdout] test tests::black_bishop_promotion_legality_test ... ok [INFO] [stdout] test tests::bishop_capture_algebraic_notation_test ... ok [INFO] [stdout] test tests::bishop_movement_diagonal_up_right_test ... ok [INFO] [stdout] test tests::bishop_movement_diagonal_down_right_test ... ok [INFO] [stdout] test tests::bishop_movement_diagonal_right_edge_test ... ok [INFO] [stdout] test tests::black_bishop_can_capture_test ... ok [INFO] [stdout] test tests::black_queen_can_capture_test ... ok [INFO] [stdout] test tests::black_cant_promote_into_check_test ... ok [INFO] [stdout] test tests::black_king_can_capture_test ... ok [INFO] [stdout] test tests::black_kingside_castle_into_check_test ... ok [INFO] [stdout] test tests::black_kingside_castle_aftermath_test ... ok [INFO] [stdout] test tests::black_queenside_castle_aftermath_test ... ok [INFO] [stdout] test tests::bishop_movement_diagonal_up_left_test ... ok [INFO] [stdout] test tests::black_queenside_castle_into_check_test ... ok [INFO] [stdout] test tests::diagonal_obstruction_test ... ok [INFO] [stdout] test tests::black_rook_can_capture_test ... ok [INFO] [stdout] test tests::color_threatens_square_test ... ok [INFO] [stdout] test tests::en_passant_expires_after_castle_test ... ok [INFO] [stdout] test tests::capture_algebraic_notation_with_ambiguous_rank_test ... ok [INFO] [stdout] test tests::bishop_movement_diagonal_down_left_test ... ok [INFO] [stdout] test tests::fen_notation_default_state_test ... ok [INFO] [stdout] test tests::bishop_movement_diagonal_left_edge_test ... ok [INFO] [stdout] test tests::is_stalemate_test ... ok [INFO] [stdout] test tests::is_checkmate_test ... ok [INFO] [stdout] test tests::king_move_algebraic_notation_test ... ok [INFO] [stdout] test tests::king_capture_algebraic_notation_test ... ok [INFO] [stdout] test tests::king_movement_diagonal_test ... ok [INFO] [stdout] test tests::king_movement_horizontal_test ... ok [INFO] [stdout] test tests::king_movement_vertical_test ... ok [INFO] [stdout] test tests::kingside_castle_algebraic_notation_test ... ok [INFO] [stdout] test tests::knight_capture_algebraic_notation_test ... ok [INFO] [stdout] test tests::knight_move_algebraic_notation_test ... ok [INFO] [stdout] test tests::knight_movement_one_down_two_left_test ... ok [INFO] [stdout] test tests::knight_movement_one_down_two_right_test ... ok [INFO] [stdout] test tests::knight_movement_one_up_two_left_test ... ok [INFO] [stdout] test tests::knight_movement_one_up_two_right_test ... ok [INFO] [stdout] test tests::knight_movement_two_down_one_left_test ... ok [INFO] [stdout] test tests::knight_movement_two_down_one_right_test ... ok [INFO] [stdout] test tests::knight_movement_two_up_one_left_test ... ok [INFO] [stdout] test tests::knight_movement_two_up_one_right_test ... ok [INFO] [stdout] test tests::legal_actions_includes_all_legal_captures_by_black_test ... ok [INFO] [stdout] test tests::gamestate_to_string_test ... ok [INFO] [stdout] test tests::legal_actions_includes_all_legal_captures_by_white_test ... ok [INFO] [stdout] test tests::legal_actions_includes_all_legal_en_passants_by_black_test ... ok [INFO] [stdout] test tests::legal_actions_includes_all_legal_castles_by_white_test ... ok [INFO] [stdout] test tests::en_passant_expires_after_move_test ... ok [INFO] [stdout] test tests::en_passant_expires_after_promotion_test ... ok [INFO] [stdout] test tests::black_queenside_castle_through_check_test ... ok [INFO] [stdout] test tests::en_passant_expires_after_en_passant_test ... ok [INFO] [stdout] test tests::black_queenside_castle_legality_test ... ok [INFO] [stdout] test tests::en_passant_algebraic_notation_test ... ok [INFO] [stdout] test tests::black_queenside_castle_out_of_check_test ... ok [INFO] [stdout] test tests::black_queenside_castle_obstruction_test ... ok [INFO] [stdout] test tests::black_rook_promotion_legality_test ... ok [INFO] [stdout] test tests::capture_algebraic_notation_with_ambiguous_file_test ... ok [INFO] [stdout] test tests::color_is_checked_test ... ok [INFO] [stdout] test tests::cant_move_onto_another_piece_test ... ok [INFO] [stdout] test tests::legal_actions_includes_all_legal_castles_by_black_test ... ok [INFO] [stdout] test tests::legal_actions_test ... ok [INFO] [stdout] test tests::en_passant_expires_after_capture_test ... ok [INFO] [stdout] test tests::move_algebraic_notation_with_ambiguous_file_test ... ok [INFO] [stdout] test tests::legal_actions_no_kings_test ... ok [INFO] [stdout] test tests::legal_actions_includes_all_legal_en_passants_by_white_test ... ok [INFO] [stdout] test tests::move_algebraic_notation_with_ambiguous_rank_and_file_test ... ok [INFO] [stdout] test tests::moving_black_king_removes_black_castle_rights_test ... ok [INFO] [stdout] test tests::moving_black_kingside_rook_removes_black_kingside_castle_rights_test ... ok [INFO] [stdout] test tests::legal_actions_includes_promotions_test ... ok [INFO] [stdout] test tests::legal_actions_includes_moves_test ... ok [INFO] [stdout] test tests::moving_black_queenside_rook_removes_black_queenside_castle_rights_test ... ok [INFO] [stdout] test tests::moving_white_queenside_rook_removes_white_queenside_castle_rights_test ... ok [INFO] [stdout] test tests::pawn_movement_normal_test ... ok [INFO] [stdout] test tests::pawn_movement_too_far_test ... ok [INFO] [stdout] test tests::promotion_capture_legality_test ... ok [INFO] [stdout] test tests::promotion_to_knight_algebraic_notation_test ... ok [INFO] [stdout] test tests::pawn_threats_test ... ok [INFO] [stdout] test tests::position_delta_test ... ok [INFO] [stdout] test tests::promotion_to_queen_algebraic_notation_test ... ok [INFO] [stdout] test tests::promotion_to_rook_algebraic_notation_test ... ok [INFO] [stdout] test tests::promotion_with_capture_algebraic_notation_test ... ok [INFO] [stdout] test tests::queen_capture_algebraic_notation_test ... ok [INFO] [stdout] test tests::queen_move_algebraic_notation_test ... ok [INFO] [stdout] test tests::queen_movement_diagonal_test ... ok [INFO] [stdout] test tests::queen_movement_horizontal_obstruction_test ... ok [INFO] [stdout] test tests::queen_movement_horizontal_test ... ok [INFO] [stdout] test tests::queen_movement_vertical_obstruction_test ... ok [INFO] [stdout] test tests::queen_movement_vertical_test ... ok [INFO] [stdout] test tests::queenside_castle_algebraic_notation_test ... ok [INFO] [stdout] test tests::rook_capture_algebraic_notation_test ... ok [INFO] [stdout] test tests::rook_move_algebraic_notation_test ... ok [INFO] [stdout] test tests::state_after_move_test ... ok [INFO] [stdout] test tests::rook_movement_horizontal_obstruction_test ... ok [INFO] [stdout] test tests::rook_movement_horizontal_test ... ok [INFO] [stdout] test tests::rook_movement_vertical_obstruction_test ... ok [INFO] [stdout] test tests::rook_movement_vertical_test ... ok [INFO] [stdout] test tests::to_move_switches_after_castle_test ... ok [INFO] [stdout] test tests::to_move_switches_after_move_test ... ok [INFO] [stdout] test tests::to_move_switches_after_promotion_test ... ok [INFO] [stdout] test tests::white_bishop_can_capture_test ... ok [INFO] [stdout] test tests::white_bishop_promotion_legality_test ... ok [INFO] [stdout] test tests::white_cant_move_into_check_test ... ok [INFO] [stdout] test tests::white_cant_promote_into_check_test ... ok [INFO] [stdout] test tests::white_king_can_capture_test ... ok [INFO] [stdout] test tests::white_kingside_castle_aftermath_test ... ok [INFO] [stdout] test tests::white_kingside_castle_into_check_test ... ok [INFO] [stdout] test tests::white_kingside_castle_legality_test ... ok [INFO] [stdout] test tests::moving_white_king_rook_removes_white_castle_rights_test ... ok [INFO] [stdout] test tests::pawn_capture_algebraic_notation_test ... ok [INFO] [stdout] test tests::white_kingside_castle_obstruction_test ... ok [INFO] [stdout] test tests::pawn_move_algebraic_notation_test ... ok [INFO] [stdout] test tests::pawn_movement_sideways_test ... ok [INFO] [stdout] test tests::white_kingside_castle_out_of_check_test ... ok [INFO] [stdout] test tests::white_kingside_castle_through_check_test ... ok [INFO] [stdout] test tests::white_knight_can_capture_test ... ok [INFO] [stdout] test tests::white_knight_promotion_legality_test ... ok [INFO] [stdout] test tests::white_pawn_can_capture_test ... ok [INFO] [stdout] test tests::white_performs_en_passant_test ... ok [INFO] [stdout] test tests::white_promotion_to_bishop_test ... ok [INFO] [stdout] test tests::white_promotion_to_knight_test ... ok [INFO] [stdout] test tests::white_promotion_to_rook_test ... ok [INFO] [stdout] test tests::white_queen_can_capture_test ... ok [INFO] [stdout] test tests::white_queen_promotion_legality_test ... ok [INFO] [stdout] test tests::white_queenside_castle_aftermath_test ... ok [INFO] [stdout] test tests::move_algebraic_notation_with_ambiguous_rank_test ... ok [INFO] [stdout] test tests::white_queenside_castle_into_check_test ... ok [INFO] [stdout] test tests::white_queenside_castle_legality_test ... ok [INFO] [stdout] test tests::new_gamestate_test ... ok [INFO] [stdout] test tests::no_legal_actions_in_checkmate_test ... ok [INFO] [stdout] test tests::pawn_cant_move_diagonally_test ... ok [INFO] [stdout] test tests::white_queenside_castle_out_of_check_test ... ok [INFO] [stdout] test tests::white_queenside_castle_through_check_test ... ok [INFO] [stdout] test tests::white_rook_can_capture_test ... ok [INFO] [stdout] test tests::white_rook_promotion_legality_test ... ok [INFO] [stdout] test tests::white_queenside_castle_obstruction_test ... ok [INFO] [stdout] test tests::white_promotion_to_queen_test ... ok [INFO] [stdout] test tests::moving_white_kingside_rook_removes_white_kingside_castle_rights_test ... ok [INFO] [stdout] test tests::white_pawn_cant_capture_vertically_test ... ok [INFO] [stdout] test tests::promotion_to_bishop_algebraic_notation_test ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 154 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests chess-engine [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "ca73e822820cd565ddee5b7ae61f736b9ff2c9e3f6f3dd2b92e6ad637ffc174e"` [INFO] running `"docker" "rm" "-f" "ca73e822820cd565ddee5b7ae61f736b9ff2c9e3f6f3dd2b92e6ad637ffc174e"` [INFO] [stdout] ca73e822820cd565ddee5b7ae61f736b9ff2c9e3f6f3dd2b92e6ad637ffc174e