[INFO] fetching crate chess-move-gen 0.9.0... [INFO] testing chess-move-gen-0.9.0 against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] extracting crate chess-move-gen 0.9.0 into /workspace/builds/worker-1-tc2/source [INFO] started tweaking crates.io crate chess-move-gen 0.9.0 [INFO] finished tweaking crates.io crate chess-move-gen 0.9.0 [INFO] tweaked toml for crates.io crate chess-move-gen 0.9.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate chess-move-gen 0.9.0 on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate chess-move-gen 0.9.0 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" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d327418f32e96951e924786424119078b78607e6ba79664695855d08d8fd404e [INFO] running `Command { std: "docker" "start" "-a" "d327418f32e96951e924786424119078b78607e6ba79664695855d08d8fd404e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d327418f32e96951e924786424119078b78607e6ba79664695855d08d8fd404e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d327418f32e96951e924786424119078b78607e6ba79664695855d08d8fd404e", kill_on_drop: false }` [INFO] [stdout] d327418f32e96951e924786424119078b78607e6ba79664695855d08d8fd404e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 20010ca56b647952e547635ca0fa87a47c1868d5d17054cfbe71b80d3d92d792 [INFO] running `Command { std: "docker" "start" "-a" "20010ca56b647952e547635ca0fa87a47c1868d5d17054cfbe71b80d3d92d792", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.92 [INFO] [stderr] Compiling unicode-ident v1.0.14 [INFO] [stderr] Compiling libc v0.2.169 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Compiling syn v2.0.93 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling threadpool v1.8.1 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling chess-move-gen v0.9.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mv_list/mv_vec.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter<'_, Move> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mv_list/mv_vec.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter<'_, Move> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [optimized + debuginfo] target(s) in 14.95s [INFO] running `Command { std: "docker" "inspect" "20010ca56b647952e547635ca0fa87a47c1868d5d17054cfbe71b80d3d92d792", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "20010ca56b647952e547635ca0fa87a47c1868d5d17054cfbe71b80d3d92d792", kill_on_drop: false }` [INFO] [stdout] 20010ca56b647952e547635ca0fa87a47c1868d5d17054cfbe71b80d3d92d792 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 70e519208e521bd4200afa0a194f8584a52b122d09c96c346089f39d32bf8941 [INFO] running `Command { std: "docker" "start" "-a" "70e519208e521bd4200afa0a194f8584a52b122d09c96c346089f39d32bf8941", kill_on_drop: false }` [INFO] [stderr] Compiling unindent v0.2.3 [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mv_list/mv_vec.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter<'_, Move> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling chess-move-gen v0.9.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mv_list/mv_vec.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter<'_, Move> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/mv_list/mv_vec.rs:84:17 [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 84 | pub fn iter(&self) -> std::slice::Iter<'_, Move> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 6.69s [INFO] running `Command { std: "docker" "inspect" "70e519208e521bd4200afa0a194f8584a52b122d09c96c346089f39d32bf8941", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "70e519208e521bd4200afa0a194f8584a52b122d09c96c346089f39d32bf8941", kill_on_drop: false }` [INFO] [stdout] 70e519208e521bd4200afa0a194f8584a52b122d09c96c346089f39d32bf8941 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 4d01d1f8366555a885760fe70f1074c4e21d046fc06e77ab56c3c38b2910cb5c [INFO] running `Command { std: "docker" "start" "-a" "4d01d1f8366555a885760fe70f1074c4e21d046fc06e77ab56c3c38b2910cb5c", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/mv_list/mv_vec.rs:84:17 [INFO] [stderr] | [INFO] [stderr] 84 | pub fn iter(&self) -> std::slice::Iter { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 84 | pub fn iter(&self) -> std::slice::Iter<'_, Move> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `chess-move-gen` (lib) generated 1 warning (run `cargo fix --lib -p chess-move-gen` to apply 1 suggestion) [INFO] [stderr] warning: `chess-move-gen` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] warning: `chess-move-gen` (bin "chess-move-gen" test) generated 1 warning (1 duplicate) [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 0.03s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/chess_move_gen-f099c4e1bdc9a2da) [INFO] [stdout] [INFO] [stdout] running 191 tests [INFO] [stdout] test bb::test::consts_1 ... ok [INFO] [stdout] test basic_functionality ... ok [INFO] [stdout] test bb::test::test_east_attacks ... ok [INFO] [stdout] test bb::test::test_occluded_east_fill ... ok [INFO] [stdout] test bb::test::consts_4 ... ok [INFO] [stdout] test board::test::test_key ... ok [INFO] [stdout] test castle::test::test_castle_squares ... ok [INFO] [stdout] test castling_rights::test::any ... ok [INFO] [stdout] test castling_rights::test::can_1 ... ok [INFO] [stdout] test castling_rights::test::can_2 ... ok [INFO] [stdout] test castling_rights::test::can_4 ... ok [INFO] [stdout] test castling_rights::test::can_3 ... ok [INFO] [stdout] test castling_rights::test::can_5 ... ok [INFO] [stdout] test castling_rights::test::can_6 ... ok [INFO] [stdout] test castling_rights::test::can_7 ... ok [INFO] [stdout] test castling_rights::test::char_1 ... ok [INFO] [stdout] test castling_rights::test::char_2 ... ok [INFO] [stdout] test castling_rights::test::char_3 ... ok [INFO] [stdout] test castling_rights::test::char_4 ... ok [INFO] [stdout] test castling_rights::test::side_can_2 ... ok [INFO] [stdout] test generation::attacks::test::test_checks_to_sq ... ok [INFO] [stdout] test generation::attacks::test::test_slider_rays_to_square ... ok [INFO] [stdout] test generation::castle::test::can_castle ... ok [INFO] [stdout] test generation::castle::test::can_castle_when_rook_passes_through_attack ... ok [INFO] [stdout] test generation::castle::test::cant_castle_when_blocked ... ok [INFO] [stdout] test generation::castle::test::cant_castle_when_king_passes_through_attack_1 ... ok [INFO] [stdout] test generation::castle::test::cant_castle_when_king_passes_through_attack_2 ... ok [INFO] [stdout] test generation::castle::test::no_castles ... ok [INFO] [stdout] test generation::lookup::test::king_moves_with_mask ... ok [INFO] [stdout] test generation::lookup::test::king_pushes ... ok [INFO] [stdout] test generation::lookup::test::knight_captures ... ok [INFO] [stdout] test generation::lookup::test::king_captures ... ok [INFO] [stdout] test generation::lookup::test::test_knight_moves_from_bb ... ok [INFO] [stdout] test generation::pawn::test::captures ... ok [INFO] [stdout] test generation::pawn::test::double_pushes ... ok [INFO] [stdout] test generation::pawn::test::ep_captures ... ok [INFO] [stdout] test generation::pawn::test::illegal_ep_captures ... ok [INFO] [stdout] test generation::pawn::test::promotion_captures ... ok [INFO] [stdout] test generation::lookup::test::knight_pushes ... ok [INFO] [stdout] test generation::pawn::test::promotions ... ok [INFO] [stdout] test generation::pinned::test::test_pawn_pin_ray_moves ... ok [INFO] [stdout] test generation::pinned::test::test_pawn_pin_ray_moves_2 ... ok [INFO] [stdout] test generation::pinned::test::test_pawn_pin_ray_moves_3 ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::pawn::test::single_pushes ... ok [INFO] [stdout] test castling_rights::test::side_can_1 ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::t_rook_attacks ... ok [INFO] [stdout] test bb::test::consts_2 ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::t_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::t_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::t_rook_attacks ... ok [INFO] [stdout] test generation::slider::test::test_bishop_moves ... ok [INFO] [stdout] test generation::slider::test::test_queen_moves ... ok [INFO] [stdout] test generation::slider::test::test_rook_moves ... ok [INFO] [stdout] test generation::test::legal_moves_1 ... ok [INFO] [stdout] test generation::test::legal_moves_10 ... ok [INFO] [stdout] test generation::test::legal_moves_11 ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::test::legal_moves_12 ... ok [INFO] [stdout] test generation::test::legal_moves_13 ... ok [INFO] [stdout] test generation::test::legal_moves_14 ... ok [INFO] [stdout] test generation::test::legal_moves_3 ... ok [INFO] [stdout] test generation::test::legal_moves_15 ... ok [INFO] [stdout] test generation::test::legal_moves_4 ... ok [INFO] [stdout] test generation::test::legal_moves_5 ... ok [INFO] [stdout] test generation::test::legal_moves_7 ... ok [INFO] [stdout] test generation::test::legal_moves_8 ... ok [INFO] [stdout] test generation::test::legal_moves_2 ... ok [INFO] [stdout] test generation::test::legal_moves_starting_position ... ok [INFO] [stdout] test generation::test::loud_legal_moves_2 ... ok [INFO] [stdout] test hash::test::test_castle ... ok [INFO] [stdout] test generation::test::loud_legal_moves_3 ... ok [INFO] [stdout] test integrity::test::checks_bishops_count_2 ... ok [INFO] [stdout] test generation::test::legal_moves_6 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_2 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_3 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_4 ... ok [INFO] [stdout] test generation::test::loud_legal_moves_1 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_no_target_1 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_king_position_2 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_1 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_no_target_2 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_1 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_2 ... ok [INFO] [stdout] test integrity::test::checks_king_count_1 ... ok [INFO] [stdout] test integrity::test::checks_king_count_2 ... ok [INFO] [stdout] test generation::test::legal_moves_9 ... ok [INFO] [stdout] test integrity::test::checks_queen_count_1 ... ok [INFO] [stdout] test integrity::test::checks_ok ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_4 ... ok [INFO] [stdout] test integrity::test::checks_pawn_invalid_rows_2 ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test integrity::test::checks_pawn_count ... ok [INFO] [stdout] test integrity::test::checks_rooks_count_2 ... ok [INFO] [stdout] test integrity::test::checks_pawn_invalid_rows_1 ... ok [INFO] [stdout] test integrity::test::checks_queen_count_2 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_3 ... ok [INFO] [stdout] test integrity::test::checks_knights_count_2 ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test mv::test::capture ... ok [INFO] [stdout] test mv::test::capture_promotion ... ok [INFO] [stdout] test mv::test::castle_king_side ... ok [INFO] [stdout] test mv::test::new_ep_capture ... ok [INFO] [stdout] test mv::test::promotion ... ok [INFO] [stdout] test mv::test::push ... ok [INFO] [stdout] test mv::test::test_packed ... ok [INFO] [stdout] test mv::test::to_string ... ok [INFO] [stdout] test mv_list::mv_counter::test::test_move_counter ... ok [INFO] [stdout] test mv::test::castle_queen_side ... ok [INFO] [stdout] test mv_list::mv_vec::test::test_move_vec ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_capture_scoring ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_king_position_1 ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_integrity ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_push_scoring ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_scored_move_vec ... ok [INFO] [stdout] test perft::test::perft_bench_starting_position ... ok [INFO] [stdout] test perft::test::perft_debug_1 ... ok [INFO] [stdout] test perft::test::perft_test_3 ... ok [INFO] [stdout] test perft::test::perft_with_cache_test_3 ... ok [INFO] [stdout] test piece::test::to_char ... ok [INFO] [stdout] test piece::test::to_usize ... ok [INFO] [stdout] test position::fen::test::parse_convert_to_fen_3 ... ok [INFO] [stdout] test perft::test::perft_position_5_depth_3 ... ok [INFO] [stdout] test piece::test::kind ... ok [INFO] [stdout] test position::fen::test::parse_convert_to_fen_2 ... ok [INFO] [stdout] test perft::test::perft_detailed_position_2_depth_3 ... ok [INFO] [stdout] test perft::test::perft_test_4 ... ok [INFO] [stdout] test position::fen::test::parse_convert_to_fen_1 ... ok [INFO] [stdout] test piece::test::side ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_3 ... ok [INFO] [stdout] test position::fen::test::parse_with_default_state ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_4 ... ok [INFO] [stdout] test position::fen::test::parse_with_ep_square_2 ... ok [INFO] [stdout] test position::fen::test::parse_with_full_move_number_2 ... ok [INFO] [stdout] test position::fen::test::parse_with_full_move_number_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_half_move_clock_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_half_move_clock_2 ... ok [INFO] [stdout] test position::fen::test::parse_parse_with_starting_fen ... ok [INFO] [stdout] test perft::test::perft_with_cache_test_4 ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_2 ... ok [INFO] [stdout] test position::fen::test::parse_with_ep_square_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_stm_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_stm_2 ... ok [INFO] [stdout] test position::make::test::test_hash ... ok [INFO] [stdout] test position::make::test::test_hmc_incremented_by_non_pawn_non_capture ... ok [INFO] [stdout] test position::make::test::test_hmc_reset_by_non_pawn_capture ... ok [INFO] [stdout] test position::make::test::test_hmc_reset_by_pawn_non_capture ... ok [INFO] [stdout] test position::make::test::test_make_unmake_capture ... ok [INFO] [stdout] test position::make::test::test_make_unmake_capture_promotion ... ok [INFO] [stdout] test position::make::test::test_make_unmake_castle ... ok [INFO] [stdout] test position::make::test::test_make_unmake_double_pawn_push ... ok [INFO] [stdout] test position::make::test::test_make_unmake_double_push ... ok [INFO] [stdout] test position::make::test::test_make_unmake_ep_capture ... ok [INFO] [stdout] test position::make::test::test_make_unmake_promotion ... ok [INFO] [stdout] test position::make::test::test_make_unmake_push_with_castle_invalidation ... ok [INFO] [stdout] test position::make::test::test_make_unmake_simple_push ... ok [INFO] [stdout] test position::test::test_is_not_too_big ... ok [INFO] [stdout] test position::fen::test::parse_parse_with_random_fen ... ok [INFO] [stdout] test position::test::test_to_string ... ok [INFO] [stdout] test perft::test::perft_position_4_depth_4 ... ok [INFO] [stdout] test side::test::char ... ok [INFO] [stdout] test side::test::flip ... ok [INFO] [stdout] test square::test::along_row_with_col ... ok [INFO] [stdout] test square::test::col ... ok [INFO] [stdout] test square::test::flip ... ok [INFO] [stdout] test square::test::raw ... ok [INFO] [stdout] test square::test::rotate_left ... ok [INFO] [stdout] test square::test::row ... ok [INFO] [stdout] test square::test::to_string ... ok [INFO] [stdout] test perft::test::perft_detailed_position_2_depth_4 ... ok [INFO] [stdout] test perft::test::perft_position_3_depth_5 ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_pawn_push_scoring ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 191 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/chess_move_gen-679982c82d6eb09b) [INFO] [stdout] [INFO] [stdout] running 190 tests [INFO] [stdout] test bb::test::consts_2 ... ok [INFO] [stdout] test bb::test::consts_4 ... ok [INFO] [stdout] test bb::test::test_east_attacks ... ok [INFO] [stdout] test bb::test::consts_1 ... ok [INFO] [stdout] test bb::test::test_occluded_east_fill ... ok [INFO] [stdout] test board::test::test_key ... ok [INFO] [stdout] test castling_rights::test::any ... ok [INFO] [stdout] test castle::test::test_castle_squares ... ok [INFO] [stdout] test castling_rights::test::can_1 ... ok [INFO] [stdout] test castling_rights::test::can_2 ... ok [INFO] [stdout] test castling_rights::test::can_3 ... ok [INFO] [stdout] test castling_rights::test::can_4 ... ok [INFO] [stdout] test castling_rights::test::can_5 ... ok [INFO] [stdout] test castling_rights::test::char_1 ... ok [INFO] [stdout] test castling_rights::test::char_2 ... ok [INFO] [stdout] test castling_rights::test::char_3 ... ok [INFO] [stdout] test castling_rights::test::can_7 ... ok [INFO] [stdout] test castling_rights::test::char_4 ... ok [INFO] [stdout] test castling_rights::test::side_can_1 ... ok [INFO] [stdout] test generation::attacks::test::test_checks_to_sq ... ok [INFO] [stdout] test castling_rights::test::side_can_2 ... ok [INFO] [stdout] test generation::castle::test::cant_castle_when_blocked ... ok [INFO] [stdout] test generation::attacks::test::test_slider_rays_to_square ... ok [INFO] [stdout] test generation::castle::test::cant_castle_when_king_passes_through_attack_1 ... ok [INFO] [stdout] test castling_rights::test::can_6 ... ok [INFO] [stdout] test generation::castle::test::cant_castle_when_king_passes_through_attack_2 ... ok [INFO] [stdout] test generation::castle::test::no_castles ... ok [INFO] [stdout] test generation::castle::test::can_castle ... ok [INFO] [stdout] test generation::castle::test::can_castle_when_rook_passes_through_attack ... ok [INFO] [stdout] test generation::lookup::test::knight_captures ... ok [INFO] [stdout] test generation::lookup::test::king_captures ... ok [INFO] [stdout] test generation::lookup::test::knight_pushes ... ok [INFO] [stdout] test generation::pinned::test::test_pawn_pin_ray_moves ... ok [INFO] [stdout] test generation::lookup::test::test_knight_moves_from_bb ... ok [INFO] [stdout] test generation::pinned::test::test_pawn_pin_ray_moves_2 ... ok [INFO] [stdout] test generation::pinned::test::test_pawn_pin_ray_moves_3 ... ok [INFO] [stdout] test generation::pawn::test::captures ... ok [INFO] [stdout] test generation::pawn::test::double_pushes ... ok [INFO] [stdout] test generation::pawn::test::illegal_ep_captures ... ok [INFO] [stdout] test generation::pawn::test::promotion_captures ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::lookup::test::king_moves_with_mask ... ok [INFO] [stdout] test generation::pawn::test::ep_captures ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::t_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test generation::pawn::test::promotions ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_hyperbola::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test generation::pawn::test::single_pushes ... ok [INFO] [stdout] test generation::lookup::test::king_pushes ... ok [INFO] [stdout] test generation::slider::ray_kogge_stone::test::t_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::t_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_multiple_rook_attacks ... ok [INFO] [stdout] test generation::slider::ray_magic::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_multiple_bishop_attacks ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_naive::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::bench_rook_attacks_from_sq ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::t_bishop_attacks ... ok [INFO] [stdout] test generation::slider::test::test_bishop_moves ... ok [INFO] [stdout] test generation::test::legal_moves_10 ... ok [INFO] [stdout] test generation::slider::test::test_queen_moves ... ok [INFO] [stdout] test generation::test::legal_moves_1 ... ok [INFO] [stdout] test generation::test::legal_moves_11 ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::t_rook_attacks ... ok [INFO] [stdout] test generation::slider::test::test_rook_moves ... ok [INFO] [stdout] test generation::test::legal_moves_12 ... ok [INFO] [stdout] test generation::slider::ray_subtract::test::bench_bishop_attacks_from_sq ... ok [INFO] [stdout] test generation::test::legal_moves_13 ... ok [INFO] [stdout] test generation::test::legal_moves_14 ... ok [INFO] [stdout] test generation::test::legal_moves_15 ... ok [INFO] [stdout] test generation::test::legal_moves_2 ... ok [INFO] [stdout] test generation::test::legal_moves_3 ... ok [INFO] [stdout] test generation::test::legal_moves_4 ... ok [INFO] [stdout] test generation::test::legal_moves_5 ... ok [INFO] [stdout] test generation::test::legal_moves_8 ... ok [INFO] [stdout] test generation::test::legal_moves_starting_position ... ok [INFO] [stdout] test generation::test::loud_legal_moves_1 ... ok [INFO] [stdout] test generation::test::loud_legal_moves_3 ... ok [INFO] [stdout] test generation::test::loud_legal_moves_2 ... ok [INFO] [stdout] test hash::test::test_castle ... ok [INFO] [stdout] test integrity::test::checks_bishops_count_2 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_king_position_1 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_king_position_2 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_1 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_2 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_3 ... ok [INFO] [stdout] test integrity::test::checks_castling_rights_rook_position_4 ... ok [INFO] [stdout] test generation::test::legal_moves_7 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_no_target_1 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_no_target_2 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_1 ... ok [INFO] [stdout] test generation::test::legal_moves_6 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_2 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_4 ... ok [INFO] [stdout] test integrity::test::checks_ep_square_wrong_attacking_side_3 ... ok [INFO] [stdout] test integrity::test::checks_king_count_1 ... ok [INFO] [stdout] test generation::test::legal_moves_9 ... ok [INFO] [stdout] test integrity::test::checks_king_count_2 ... ok [INFO] [stdout] test integrity::test::checks_knights_count_2 ... ok [INFO] [stdout] test integrity::test::checks_ok ... ok [INFO] [stdout] test integrity::test::checks_pawn_count ... ok [INFO] [stdout] test integrity::test::checks_pawn_invalid_rows_1 ... ok [INFO] [stdout] test integrity::test::checks_queen_count_1 ... ok [INFO] [stdout] test integrity::test::checks_pawn_invalid_rows_2 ... ok [INFO] [stdout] test integrity::test::checks_queen_count_2 ... ok [INFO] [stdout] test integrity::test::checks_rooks_count_2 ... ok [INFO] [stdout] test mv::test::promotion ... ok [INFO] [stdout] test mv::test::capture ... ok [INFO] [stdout] test mv::test::capture_promotion ... ok [INFO] [stdout] test mv::test::castle_king_side ... ok [INFO] [stdout] test mv::test::castle_queen_side ... ok [INFO] [stdout] test mv::test::push ... ok [INFO] [stdout] test mv::test::test_packed ... ok [INFO] [stdout] test mv::test::new_ep_capture ... ok [INFO] [stdout] test mv::test::to_string ... ok [INFO] [stdout] test mv_list::mv_vec::test::test_move_vec ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_capture_scoring ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_integrity ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_pawn_push_scoring ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_scored_move_vec ... ok [INFO] [stdout] test perft::test::perft_bench_starting_position ... ok [INFO] [stdout] test perft::test::perft_debug_1 ... ok [INFO] [stdout] test perft::test::perft_position_5_depth_3 ... ok [INFO] [stdout] test mv_list::mv_counter::test::test_move_counter ... ok [INFO] [stdout] test perft::test::perft_detailed_position_2_depth_3 ... ok [INFO] [stdout] test mv_list::sorted_move_adder::test::test_push_scoring ... ok [INFO] [stdout] test perft::test::perft_with_cache_test_3 ... ok [INFO] [stdout] test perft::test::perft_test_3 ... ok [INFO] [stdout] test position::fen::test::parse_convert_to_fen_1 ... ok [INFO] [stdout] test perft::test::perft_test_4 ... ok [INFO] [stdout] test piece::test::kind ... ok [INFO] [stdout] test piece::test::side ... ok [INFO] [stdout] test piece::test::to_char ... ok [INFO] [stdout] test piece::test::to_usize ... ok [INFO] [stdout] test position::fen::test::parse_convert_to_fen_2 ... ok [INFO] [stdout] test position::fen::test::parse_parse_with_random_fen ... ok [INFO] [stdout] test position::fen::test::parse_parse_with_starting_fen ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_1 ... ok [INFO] [stdout] test position::fen::test::parse_convert_to_fen_3 ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_2 ... ok [INFO] [stdout] test perft::test::perft_with_cache_test_4 ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_3 ... ok [INFO] [stdout] test position::fen::test::parse_with_castling_rights_4 ... ok [INFO] [stdout] test perft::test::perft_position_4_depth_4 ... ok [INFO] [stdout] test position::fen::test::parse_with_default_state ... ok [INFO] [stdout] test position::fen::test::parse_with_ep_square_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_ep_square_2 ... ok [INFO] [stdout] test position::fen::test::parse_with_full_move_number_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_full_move_number_2 ... ok [INFO] [stdout] test position::fen::test::parse_with_half_move_clock_2 ... ok [INFO] [stdout] test position::fen::test::parse_with_half_move_clock_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_stm_1 ... ok [INFO] [stdout] test position::fen::test::parse_with_stm_2 ... ok [INFO] [stdout] test position::make::test::test_make_unmake_double_push ... ok [INFO] [stdout] test position::make::test::test_make_unmake_simple_push ... ok [INFO] [stdout] test position::test::test_to_string ... ok [INFO] [stdout] test side::test::char ... ok [INFO] [stdout] test side::test::flip ... ok [INFO] [stdout] test square::test::along_row_with_col ... ok [INFO] [stdout] test position::make::test::test_hash ... ok [INFO] [stdout] test square::test::col ... ok [INFO] [stdout] test square::test::flip ... ok [INFO] [stdout] test square::test::raw ... ok [INFO] [stdout] test position::make::test::test_hmc_incremented_by_non_pawn_non_capture ... ok [INFO] [stdout] test position::make::test::test_hmc_reset_by_non_pawn_capture ... ok [INFO] [stdout] test position::make::test::test_hmc_reset_by_pawn_non_capture ... ok [INFO] [stdout] test position::make::test::test_make_unmake_capture ... ok [INFO] [stdout] test position::make::test::test_make_unmake_capture_promotion ... ok [INFO] [stdout] test perft::test::perft_detailed_position_2_depth_4 ... ok [INFO] [stdout] test position::make::test::test_make_unmake_castle ... ok [INFO] [stdout] test position::make::test::test_make_unmake_double_pawn_push ... ok [INFO] [stdout] test position::make::test::test_make_unmake_ep_capture ... ok [INFO] [stdout] test position::make::test::test_make_unmake_promotion ... ok [INFO] [stdout] test square::test::rotate_left ... ok [INFO] [stdout] test square::test::row ... ok [INFO] [stdout] test square::test::to_string ... ok [INFO] [stdout] test position::make::test::test_make_unmake_push_with_castle_invalidation ... ok [INFO] [stdout] test position::test::test_is_not_too_big ... ok [INFO] [stdout] test perft::test::perft_position_3_depth_5 ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 190 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Doc-tests chess_move_gen [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/lib.rs - (line 6) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "4d01d1f8366555a885760fe70f1074c4e21d046fc06e77ab56c3c38b2910cb5c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4d01d1f8366555a885760fe70f1074c4e21d046fc06e77ab56c3c38b2910cb5c", kill_on_drop: false }` [INFO] [stdout] 4d01d1f8366555a885760fe70f1074c4e21d046fc06e77ab56c3c38b2910cb5c