[INFO] fetching crate minorhacks_chess 0.1.3... [INFO] testing minorhacks_chess-0.1.3 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate minorhacks_chess 0.1.3 into /workspace/builds/worker-4-tc1/source [INFO] started tweaking crates.io crate minorhacks_chess 0.1.3 [INFO] finished tweaking crates.io crate minorhacks_chess 0.1.3 [INFO] tweaked toml for crates.io crate minorhacks_chess 0.1.3 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate minorhacks_chess 0.1.3 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 38 packages to latest compatible versions [INFO] [stderr] Adding arrayvec v0.5.2 (available: v0.7.6) [INFO] [stderr] Adding rand v0.7.3 (available: v0.9.2) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition [INFO] [stderr] (in the `rand` dependency) [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3d5cf0d7590d59218c75beca12f8051407e9eb4dee0a27bc7ba1da585d70ab5f [INFO] running `Command { std: "docker" "start" "-a" "3d5cf0d7590d59218c75beca12f8051407e9eb4dee0a27bc7ba1da585d70ab5f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3d5cf0d7590d59218c75beca12f8051407e9eb4dee0a27bc7ba1da585d70ab5f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3d5cf0d7590d59218c75beca12f8051407e9eb4dee0a27bc7ba1da585d70ab5f", kill_on_drop: false }` [INFO] [stdout] 3d5cf0d7590d59218c75beca12f8051407e9eb4dee0a27bc7ba1da585d70ab5f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a96ba13355712bce3e1e6fd0a0b54262fe1120b2e167eb44f15d3ce4ead5f564 [INFO] running `Command { std: "docker" "start" "-a" "a96ba13355712bce3e1e6fd0a0b54262fe1120b2e167eb44f15d3ce4ead5f564", kill_on_drop: false }` [INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition [INFO] [stderr] (in the `rand` dependency) [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling gimli v0.31.1 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling rustc-demangle v0.1.26 [INFO] [stderr] Compiling object v0.36.7 [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling cfg-if v1.0.3 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling nodrop v0.1.14 [INFO] [stderr] Compiling arrayvec v0.5.2 [INFO] [stderr] Compiling rand_pcg v0.2.1 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling addr2line v0.24.2 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling backtrace v0.3.75 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling minorhacks_chess v0.1.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gen_tables/magic.rs:166:56 [INFO] [stdout] | [INFO] [stdout] 166 | writeln!(f, "const MOVES: [BitBoard; {}] = [", GENERATED_NUM_MOVES).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gen_tables/ranks_files.rs:77:66 [INFO] [stdout] | [INFO] [stdout] 77 | writeln!(f, "pub const EDGES: BitBoard = BitBoard({});", EDGES.0).unwrap(); [INFO] [stdout] | ^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::piece_type::*` [INFO] [stdout] --> src/movegen/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use self::piece_type::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `is` is never used [INFO] [stdout] --> src/movegen/piece_type.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait PieceType { [INFO] [stdout] | --------- associated function in this trait [INFO] [stdout] 15 | fn is(piece: Piece) -> bool; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [optimized + debuginfo] target(s) in 28.35s [INFO] running `Command { std: "docker" "inspect" "a96ba13355712bce3e1e6fd0a0b54262fe1120b2e167eb44f15d3ce4ead5f564", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a96ba13355712bce3e1e6fd0a0b54262fe1120b2e167eb44f15d3ce4ead5f564", kill_on_drop: false }` [INFO] [stdout] a96ba13355712bce3e1e6fd0a0b54262fe1120b2e167eb44f15d3ce4ead5f564 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4020d762df7ef2d123f2e2e4c820b9b5e507eff4e56299f2158187250545f3db [INFO] running `Command { std: "docker" "start" "-a" "4020d762df7ef2d123f2e2e4c820b9b5e507eff4e56299f2158187250545f3db", kill_on_drop: false }` [INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition [INFO] [stderr] (in the `rand` dependency) [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gen_tables/magic.rs:166:56 [INFO] [stdout] | [INFO] [stdout] 166 | writeln!(f, "const MOVES: [BitBoard; {}] = [", GENERATED_NUM_MOVES).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling minorhacks_chess v0.1.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/gen_tables/ranks_files.rs:77:66 [INFO] [stdout] | [INFO] [stdout] 77 | writeln!(f, "pub const EDGES: BitBoard = BitBoard({});", EDGES.0).unwrap(); [INFO] [stdout] | ^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::piece_type::*` [INFO] [stdout] --> src/movegen/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use self::piece_type::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `is` is never used [INFO] [stdout] --> src/movegen/piece_type.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait PieceType { [INFO] [stdout] | --------- associated function in this trait [INFO] [stdout] 15 | fn is(piece: Piece) -> bool; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::piece_type::*` [INFO] [stdout] --> src/movegen/mod.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub use self::piece_type::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `is` is never used [INFO] [stdout] --> src/movegen/piece_type.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub trait PieceType { [INFO] [stdout] | --------- associated function in this trait [INFO] [stdout] 15 | fn is(piece: Piece) -> bool; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/error.rs:4:24 [INFO] [stdout] | [INFO] [stdout] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 5 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 7.90s [INFO] running `Command { std: "docker" "inspect" "4020d762df7ef2d123f2e2e4c820b9b5e507eff4e56299f2158187250545f3db", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4020d762df7ef2d123f2e2e4c820b9b5e507eff4e56299f2158187250545f3db", kill_on_drop: false }` [INFO] [stdout] 4020d762df7ef2d123f2e2e4c820b9b5e507eff4e56299f2158187250545f3db [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c1775ff331f0d5fbfbde39eb5771c9d5a66f50b7777a3f75bf7532329fb821e2 [INFO] running `Command { std: "docker" "start" "-a" "c1775ff331f0d5fbfbde39eb5771c9d5a66f50b7777a3f75bf7532329fb821e2", kill_on_drop: false }` [INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition [INFO] [stderr] (in the `rand` dependency) [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/error.rs:4:24 [INFO] [stderr] | [INFO] [stderr] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stderr] 5 | pub enum Error { [INFO] [stderr] | ----- `Error` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/error.rs:4:24 [INFO] [stderr] | [INFO] [stderr] 4 | #[derive(Clone, Debug, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stderr] 5 | pub enum Error { [INFO] [stderr] | ----- `Error` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/gen_tables/magic.rs:166:56 [INFO] [stderr] | [INFO] [stderr] 166 | writeln!(f, "const MOVES: [BitBoard; {}] = [", GENERATED_NUM_MOVES).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/gen_tables/ranks_files.rs:77:66 [INFO] [stderr] | [INFO] [stderr] 77 | writeln!(f, "pub const EDGES: BitBoard = BitBoard({});", EDGES.0).unwrap(); [INFO] [stderr] | ^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: `minorhacks_chess` (build script) generated 4 warnings [INFO] [stderr] warning: unused import: `self::piece_type::*` [INFO] [stderr] --> src/movegen/mod.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | pub use self::piece_type::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: associated function `is` is never used [INFO] [stderr] --> src/movegen/piece_type.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 14 | pub trait PieceType { [INFO] [stderr] | --------- associated function in this trait [INFO] [stderr] 15 | fn is(piece: Piece) -> bool; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `minorhacks_chess` (lib) generated 4 warnings (2 duplicates) (run `cargo fix --lib -p minorhacks_chess` to apply 1 suggestion) [INFO] [stderr] warning: `minorhacks_chess` (lib test) generated 4 warnings (4 duplicates) [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 0.10s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/minorhacks_chess-d8f1235f3495b666) [INFO] [stdout] [INFO] [stdout] running 36 tests [INFO] [stdout] test board::test_null_move_en_passant ... ok [INFO] [stdout] test board_builder::invalid_castle_rights ... ok [INFO] [stdout] test board_builder::test_in_check ... ok [INFO] [stdout] test movegen::movegen::movegen_issue_15 ... ok [INFO] [stdout] test board_builder::check_initial_position ... ok [INFO] [stdout] test board_builder::test_kissing_kings ... ok [INFO] [stdout] test chess_move::test_basic_moves ... ok [INFO] [stdout] test game::test_can_declare_draw ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_21 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_22 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_20 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_1 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_25 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_26 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_15 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_17 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_10 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_18 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_16 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_19 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_23 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_24 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_9 ... ok [INFO] [stdout] test movegen::movegen::test_masked_move_gen ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_12 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_11 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_5 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_6 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_2 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_8 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_13 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_7 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_4 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_3 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_14 ... ok [INFO] [stdout] test movegen::movegen::movegen_perft_kiwipete ... ok [INFO] [stderr] Doc-tests minorhacks_chess [INFO] [stdout] [INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.05s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 140 tests [INFO] [stdout] test src/bitboard.rs - bitboard::BitBoard (line 11) ... ok [INFO] [stdout] test src/board.rs - board::Board::my_castle_rights (line 338) ... ok [INFO] [stdout] test src/bitboard.rs - bitboard::EMPTY (line 31) ... ok [INFO] [stdout] test src/board.rs - board::Board::clear_square (line 499) ... ok [INFO] [stdout] test src/board.rs - board::Board::castle_rights (line 250) ... ok [INFO] [stdout] test src/board.rs - board::Board::piece_on (line 714) ... ok [INFO] [stdout] test src/board.rs - board::Board::combined (line 174) ... ok [INFO] [stdout] test src/board.rs - board::Board::null_move (line 550) ... ok [INFO] [stdout] test src/board.rs - board::Board::king_square (line 215) ... ok [INFO] [stdout] test src/board.rs - board::Board::pieces (line 230) ... ok [INFO] [stdout] test src/board.rs - board::Board::is_sane (line 578) ... FAILED [INFO] [stdout] test src/board.rs - board::Board::make_move (line 871) ... ok [INFO] [stdout] test src/board.rs - board::Board::color_combined (line 194) ... ok [INFO] [stdout] test src/board.rs - board::Board::en_passant (line 775) ... ok [INFO] [stdout] test src/board.rs - board::Board::remove_castle_rights (line 302) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder (line 23) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::castle_rights (line 191) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::get_en_passant (line 154) ... ok [INFO] [stdout] test src/board.rs - board::Board::legal (line 823) ... ok [INFO] [stdout] test src/board.rs - board::Board::remove_my_castle_rights (line 366) ... ok [INFO] [stdout] test src/board.rs - board::Board::make_move_new (line 848) ... ok [INFO] [stdout] test src/board.rs - board::Board::remove_their_castle_rights (line 416) ... ok [INFO] [stdout] test src/board.rs - board::Board::set_piece (line 448) ... ok [INFO] [stdout] test src/board.rs - board::Board::from_fen (line 80) ... ok [INFO] [stdout] test src/board.rs - board::Board::their_castle_rights (line 388) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::clear_square (line 232) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::get_castle_rights (line 142) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::piece (line 212) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::en_passant (line 247) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::side_to_move (line 174) ... ok [INFO] [stdout] test src/board.rs - board::Board::status (line 120) ... ok [INFO] [stdout] test src/chess_move.rs - chess_move::ChessMove::from_san (line 52) ... ok [INFO] [stdout] test src/board.rs - board::Board::side_to_move (line 325) ... ok [INFO] [stdout] test src/castle_rights.rs - castle_rights::CastleRights::to_string (line 123) ... ok [INFO] [stdout] test src/cache_table.rs - cache_table::CacheTable::replace_if (line 60) ... ok [INFO] [stdout] test src/game.rs - game::Game::new (line 51) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::new (line 65) ... ok [INFO] [stdout] test src/chess_move.rs - chess_move::ChessMove (line 393) ... ok [INFO] [stdout] test src/game.rs - game::Game::declare_draw (line 260) ... ok [INFO] [stdout] test src/game.rs - game::Game::offer_draw (line 348) ... ok [INFO] [stdout] test src/game.rs - game::Game::current_position (line 158) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::get_side_to_move (line 130) ... ok [INFO] [stdout] test src/game.rs - game::Game::result (line 97) ... ok [INFO] [stdout] test src/board_builder.rs - board_builder::BoardBuilder::setup (line 89) ... ok [INFO] [stdout] test src/game.rs - game::Game::make_move (line 297) ... ok [INFO] [stdout] test src/square.rs - square::Square::A2 (line 469) ... ok [INFO] [stdout] test src/game.rs - game::Game::accept_draw (line 364) ... ok [INFO] [stdout] test src/game.rs - game::Game::side_to_move (line 320) ... ok [INFO] [stdout] test src/game.rs - game::Game::new_from_fen (line 133) ... ok [INFO] [stdout] test src/game.rs - game::Game::can_declare_draw (line 178) ... ok [INFO] [stdout] test src/square.rs - square::Square::A3 (line 541) ... ok [INFO] [stdout] test src/game.rs - game::Game::actions (line 81) ... ok [INFO] [stdout] test src/square.rs - square::Square::B1 (line 406) ... ok [INFO] [stdout] test src/piece.rs - piece::Piece::to_string (line 44) ... ok [INFO] [stdout] test src/game.rs - game::Game::new_with_board (line 66) ... ok [INFO] [stdout] test src/square.rs - square::Square::A5 (line 685) ... ok [INFO] [stdout] test src/square.rs - square::Square::A7 (line 829) ... ok [INFO] [stdout] test src/game.rs - game::Game::resign (line 401) ... ok [INFO] [stdout] test src/square.rs - square::Square::A4 (line 613) ... ok [INFO] [stdout] test src/square.rs - square::Square::B2 (line 478) ... ok [INFO] [stdout] test src/square.rs - square::Square::A8 (line 901) ... ok [INFO] [stdout] test src/square.rs - square::ALL_SQUARES (line 1012) ... ok [INFO] [stdout] test src/square.rs - square::Square::A1 (line 397) ... ok [INFO] [stdout] test src/square.rs - square::Square::B4 (line 622) ... ok [INFO] [stdout] test src/square.rs - square::Square::A6 (line 757) ... ok [INFO] [stdout] test src/movegen/movegen.rs - movegen::movegen::MoveGen (line 49) ... ok [INFO] [stdout] test src/square.rs - square::Square::B5 (line 694) ... ok [INFO] [stdout] test src/square.rs - square::Square::C1 (line 415) ... ok [INFO] [stdout] test src/square.rs - square::Square::B3 (line 550) ... ok [INFO] [stdout] test src/square.rs - square::Square::B6 (line 766) ... ok [INFO] [stdout] test src/lib.rs - (line 11) ... ok [INFO] [stdout] test src/square.rs - square::Square::C8 (line 919) ... ok [INFO] [stdout] test src/square.rs - square::Square::B8 (line 910) ... ok [INFO] [stdout] test src/square.rs - square::Square::C4 (line 631) ... ok [INFO] [stdout] test src/square.rs - square::Square::D1 (line 424) ... ok [INFO] [stdout] test src/square.rs - square::Square::C5 (line 703) ... ok [INFO] [stdout] test src/square.rs - square::Square::B7 (line 838) ... ok [INFO] [stdout] test src/square.rs - square::Square::D6 (line 784) ... ok [INFO] [stdout] test src/square.rs - square::Square::C6 (line 775) ... ok [INFO] [stdout] test src/square.rs - square::Square::C7 (line 847) ... ok [INFO] [stdout] test src/square.rs - square::Square::D3 (line 568) ... ok [INFO] [stdout] test src/square.rs - square::Square::D2 (line 496) ... ok [INFO] [stdout] test src/square.rs - square::Square::C2 (line 487) ... ok [INFO] [stdout] test src/square.rs - square::Square::C3 (line 559) ... ok [INFO] [stdout] test src/square.rs - square::Square::E1 (line 433) ... ok [INFO] [stdout] test src/square.rs - square::Square::E2 (line 505) ... ok [INFO] [stdout] test src/square.rs - square::Square::E5 (line 721) ... ok [INFO] [stdout] test src/square.rs - square::Square::D5 (line 712) ... ok [INFO] [stdout] test src/square.rs - square::Square::D7 (line 856) ... ok [INFO] [stdout] test src/square.rs - square::Square::D4 (line 640) ... ok [INFO] [stdout] test src/square.rs - square::Square::E6 (line 793) ... ok [INFO] [stdout] test src/square.rs - square::Square::E7 (line 865) ... ok [INFO] [stdout] test src/square.rs - square::Square::F3 (line 586) ... ok [INFO] [stdout] test src/square.rs - square::Square::G1 (line 451) ... ok [INFO] [stdout] test src/square.rs - square::Square::E8 (line 937) ... ok [INFO] [stdout] test src/square.rs - square::Square::E3 (line 577) ... ok [INFO] [stdout] test src/square.rs - square::Square::F7 (line 874) ... ok [INFO] [stdout] test src/square.rs - square::Square::F6 (line 802) ... ok [INFO] [stdout] test src/square.rs - square::Square::E4 (line 649) ... ok [INFO] [stdout] test src/square.rs - square::Square::F4 (line 658) ... ok [INFO] [stdout] test src/square.rs - square::Square::F2 (line 514) ... ok [INFO] [stdout] test src/square.rs - square::Square::D8 (line 928) ... ok [INFO] [stdout] test src/square.rs - square::Square::F1 (line 442) ... ok [INFO] [stdout] test src/square.rs - square::Square::F8 (line 946) ... ok [INFO] [stdout] test src/square.rs - square::Square::F5 (line 730) ... ok [INFO] [stdout] test src/square.rs - square::Square::G4 (line 667) ... ok [INFO] [stdout] test src/square.rs - square::Square::G5 (line 739) ... ok [INFO] [stdout] test src/square.rs - square::Square::G3 (line 595) ... ok [INFO] [stdout] test src/square.rs - square::Square::G8 (line 955) ... ok [INFO] [stdout] test src/square.rs - square::Square::backward (line 214) ... ok [INFO] [stdout] test src/square.rs - square::Square::G2 (line 523) ... ok [INFO] [stdout] test src/square.rs - square::Square::H7 (line 892) ... ok [INFO] [stdout] test src/square.rs - square::Square::G6 (line 811) ... ok [INFO] [stdout] test src/square.rs - square::Square::H8 (line 964) ... ok [INFO] [stdout] test src/square.rs - square::Square::H2 (line 532) ... ok [INFO] [stdout] test src/square.rs - square::Square::forward (line 191) ... ok [INFO] [stdout] test src/square.rs - square::Square::H4 (line 676) ... ok [INFO] [stdout] test src/square.rs - square::Square::H1 (line 460) ... ok [INFO] [stdout] test src/square.rs - square::Square::get_rank (line 80) ... ok [INFO] [stdout] test src/square.rs - square::Square::down (line 128) ... ok [INFO] [stdout] test src/square.rs - square::Square::H5 (line 748) ... ok [INFO] [stdout] test src/square.rs - square::Square::H6 (line 820) ... ok [INFO] [stdout] test src/square.rs - square::Square::H3 (line 604) ... ok [INFO] [stdout] test src/square.rs - square::Square::left (line 148) ... ok [INFO] [stdout] test src/square.rs - square::Square::from_string (line 380) ... ok [INFO] [stdout] test src/square.rs - square::Square::G7 (line 883) ... ok [INFO] [stdout] test src/square.rs - square::Square::default (line 18) ... ok [INFO] [stdout] test src/square.rs - square::Square::to_int (line 350) ... ok [INFO] [stdout] test src/square.rs - square::Square::get_file (line 94) ... ok [INFO] [stdout] test src/square.rs - square::Square::uleft (line 269) ... ok [INFO] [stdout] test src/square.rs - square::Square::ubackward (line 327) ... ok [INFO] [stdout] test src/square.rs - square::Square::right (line 168) ... ok [INFO] [stdout] test src/square.rs - square::Square::new (line 38) ... ok [INFO] [stdout] test src/square.rs - square::Square::up (line 108) ... ok [INFO] [stdout] test src/square.rs - square::Square::uforward (line 303) ... ok [INFO] [stdout] test src/square.rs - square::Square::to_index (line 365) ... ok [INFO] [stdout] test src/square.rs - square::Square::uright (line 286) ... ok [INFO] [stdout] test src/square.rs - square::Square::make_square (line 58) ... ok [INFO] [stdout] test src/square.rs - square::Square::udown (line 253) ... ok [INFO] [stdout] test src/square.rs - square::Square::uup (line 237) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/board.rs - board::Board::is_sane (line 578) stdout ---- [INFO] [stdout] warning: use of deprecated method `minorhacks_chess::Board::clear_square`: When doing board setup, use the BoardBuilder structure. It ensures you don't end up with an invalid position. [INFO] [stdout] --> src/board.rs:587:23 [INFO] [stdout] | [INFO] [stdout] 12 | let bad_board = board.clear_square(Square::E1).expect("Valid Position"); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] Test executable failed (signal: 6 (SIGABRT) (core dumped)). [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] [INFO] [stdout] thread 'main' (301) panicked at src/magic.rs:114783:42: [INFO] [stdout] unsafe precondition(s) violated: slice::get_unchecked requires that the index is within the slice [INFO] [stdout] [INFO] [stdout] This indicates a bug in the program. This Undefined Behavior check is optional, and cannot be relied on for safety. [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x61435ec03822 - std::backtrace_rs::backtrace::libunwind::trace::h7cddb8376417e7cc [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x61435ec03822 - std::backtrace_rs::backtrace::trace_unsynchronized::hb4e41acf4b349ff1 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x61435ec03822 - std::sys::backtrace::_print_fmt::h1222b80910ba6eb5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x61435ec03822 - ::fmt::h5bb8a979ba5db788 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x61435ec1255f - core::fmt::rt::Argument::fmt::h2ee2c138a50a7796 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x61435ec1255f - core::fmt::write::h1e0dbf07fe3990bd [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x61435ebe23f3 - std::io::default_write_fmt::hb0810a37865e52a5 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x61435ebe23f3 - std::io::Write::write_fmt::h12c8908aaac7ca22 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x61435ebe71d2 - std::sys::backtrace::BacktraceLock::print::h788d486777205086 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x61435ebe8a2c - std::panicking::default_hook::{{closure}}::ha7bdfeb5949fc0fa [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x61435ebe8886 - std::panicking::default_hook::h6dad75ec721846f4 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:328:9 [INFO] [stdout] 11: 0x61435ebe9005 - std::panicking::panic_with_hook::hba00e869ada17676 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:834:13 [INFO] [stdout] 12: 0x61435ebe8e66 - std::panicking::panic_handler::{{closure}}::h3d21149c258e5ceb [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:700:13 [INFO] [stdout] 13: 0x61435ebe7309 - std::sys::backtrace::__rust_end_short_backtrace::h4f5d9b9dfb3e6ec1 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 14: 0x61435ebd6c9d - __rustc[9a7a9f9af7564de1]::rust_begin_unwind [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:698:5 [INFO] [stdout] 15: 0x61435ec1530d - core::panicking::panic_nounwind_fmt::runtime::hac4f6b13dba0e83c [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/panicking.rs:117:22 [INFO] [stdout] 16: 0x61435ec1530d - core::panicking::panic_nounwind_fmt::h6abdf93d58efc633 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/intrinsics/mod.rs:2380:9 [INFO] [stdout] 17: 0x61435ebd47a8 - >::get_unchecked::precondition_check::h4bb2e4774dcab36f [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ub_checks.rs:72:21 [INFO] [stdout] 18: 0x61435ebd47a8 - >::get_unchecked::h55458dd65bed3648 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ub_checks.rs:77:17 [INFO] [stdout] 19: 0x61435ebd47a8 - core::slice::::get_unchecked::h1cc2e2dc4d15768b [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/slice/mod.rs:644:26 [INFO] [stdout] 20: 0x61435ebd47a8 - minorhacks_chess::magic::get_bishop_rays::h95a164e7c4f9178e [INFO] [stdout] at /opt/rustwide/workdir/src/magic.rs:114783:42 [INFO] [stdout] 21: 0x61435ebd47a8 - minorhacks_chess::board::Board::update_pin_info::h7ce87b83f1d11619 [INFO] [stdout] at /opt/rustwide/workdir/src/board.rs:1006:17 [INFO] [stdout] 22: 0x61435ebd3896 - minorhacks_chess::board::Board::clear_square::h1827dc1bb232ccce [INFO] [stdout] 23: 0x61435ebd4370 - rust_out::main::_doctest_main_src_board_rs_578_0::hf30b8238eaf71317 [INFO] [stdout] 24: 0x61435ebd42d6 - rust_out::main::hb2c1f26112d8e974 [INFO] [stdout] 25: 0x61435ebd3ba3 - core::ops::function::FnOnce::call_once::h01e49b384cd31373 [INFO] [stdout] 26: 0x61435ebd3b56 - std::sys::backtrace::__rust_begin_short_backtrace::hc341f747de1a6e5f [INFO] [stdout] 27: 0x61435ebd3b39 - std::rt::lang_start::{{closure}}::h5855c6a947873adf [INFO] [stdout] 28: 0x61435ebe3260 - core::ops::function::impls:: for &F>::call_once::h1dc0a50e6295ec78 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/core/src/ops/function.rs:290:21 [INFO] [stdout] 29: 0x61435ebe3260 - std::panicking::catch_unwind::do_call::h209f742e9999044e [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:590:40 [INFO] [stdout] 30: 0x61435ebe3260 - std::panicking::catch_unwind::h508c6e2aa6d72749 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:553:19 [INFO] [stdout] 31: 0x61435ebe3260 - std::panic::catch_unwind::hebcbb24aa9914693 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panic.rs:359:14 [INFO] [stdout] 32: 0x61435ebe3260 - std::rt::lang_start_internal::{{closure}}::h703cbe32967ef209 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/rt.rs:175:24 [INFO] [stdout] 33: 0x61435ebe3260 - std::panicking::catch_unwind::do_call::hf50f2a30bce4e10b [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:590:40 [INFO] [stdout] 34: 0x61435ebe3260 - std::panicking::catch_unwind::hac448d7e3b12daa3 [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panicking.rs:553:19 [INFO] [stdout] 35: 0x61435ebe3260 - std::panic::catch_unwind::ha9d74a13d77f299c [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/panic.rs:359:14 [INFO] [stdout] 36: 0x61435ebe3260 - std::rt::lang_start_internal::ha26d244788d1956d [INFO] [stdout] at /rustc/cdb45c87e2cd43495379f7e867e3cc15dcee9f93/library/std/src/rt.rs:171:5 [INFO] [stdout] 37: 0x61435ebd3b21 - std::rt::lang_start::h75941d661fa88314 [INFO] [stdout] 38: 0x61435ebd4415 - main [INFO] [stdout] 39: 0x784f446281ca - [INFO] [stdout] 40: 0x784f4462828b - __libc_start_main [INFO] [stdout] 41: 0x61435ebd35e5 - _start [INFO] [stdout] 42: 0x0 - [INFO] [stdout] thread caused non-unwinding panic. aborting. [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/board.rs - board::Board::is_sane (line 578) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 139 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 8.06s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "c1775ff331f0d5fbfbde39eb5771c9d5a66f50b7777a3f75bf7532329fb821e2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c1775ff331f0d5fbfbde39eb5771c9d5a66f50b7777a3f75bf7532329fb821e2", kill_on_drop: false }` [INFO] [stdout] c1775ff331f0d5fbfbde39eb5771c9d5a66f50b7777a3f75bf7532329fb821e2