[INFO] cloning repository https://github.com/mtwtkman/nc2
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mtwtkman/nc2" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmtwtkman%2Fnc2", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmtwtkman%2Fnc2'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e7bc9d7092295ade3b2a56fbdf22c331bb90c84e
[INFO] testing mtwtkman/nc2 against 1.85.0 for beta-1.86-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmtwtkman%2Fnc2" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/mtwtkman/nc2 on toolchain 1.85.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.85.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/mtwtkman/nc2
[INFO] finished tweaking git repo https://github.com/mtwtkman/nc2
[INFO] tweaked toml for git repo https://github.com/mtwtkman/nc2 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/mtwtkman/nc2 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" "+1.85.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 08c968703fae9b476720d61a66d996f38f8f2f9f3b3b69998a4d391691ce1fd8
[INFO] running `Command { std: "docker" "start" "-a" "08c968703fae9b476720d61a66d996f38f8f2f9f3b3b69998a4d391691ce1fd8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "08c968703fae9b476720d61a66d996f38f8f2f9f3b3b69998a4d391691ce1fd8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "08c968703fae9b476720d61a66d996f38f8f2f9f3b3b69998a4d391691ce1fd8", kill_on_drop: false }`
[INFO] [stdout] 08c968703fae9b476720d61a66d996f38f8f2f9f3b3b69998a4d391691ce1fd8
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 695fdbd939e29eea3e85ed09e4e2cae5924faaa82f9a3bf4c8667f5f2db69649
[INFO] running `Command { std: "docker" "start" "-a" "695fdbd939e29eea3e85ed09e4e2cae5924faaa82f9a3bf4c8667f5f2db69649", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.73
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.74
[INFO] [stderr]    Compiling bumpalo v3.7.0
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling wasm-bindgen v0.2.74
[INFO] [stderr]    Compiling wee_alloc v0.4.5
[INFO] [stderr]    Compiling libc v0.2.97
[INFO] [stderr]    Compiling memory_units v0.4.0
[INFO] [stderr]    Compiling engine v0.1.0 (/opt/rustwide/workdir/engine)
[INFO] [stdout] warning: method `is_occupied_by` is never used
[INFO] [stdout]   --> engine/src/board.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Board {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub(crate) fn is_occupied_by(&self, position: &Position, player: &Player) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_moveable` is never used
[INFO] [stdout]    --> engine/src/board.rs:220:19
[INFO] [stdout]     |
[INFO] [stdout] 219 | impl DestinationState {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 220 |     pub(crate) fn is_moveable(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `moveable_directions` is never used
[INFO] [stdout]    --> engine/src/board.rs:329:19
[INFO] [stdout]     |
[INFO] [stdout] 277 | impl MovingRange {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 329 |     pub(crate) fn moveable_directions(&self) -> BTreeSet<Direction> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_left_edge`, `is_right_edge`, and `is_middle` are never used
[INFO] [stdout]   --> engine/src/position.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | impl Column {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 72 |     fn is_left_edge(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     fn is_right_edge(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     fn is_middle(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> engine/src/position.rs:185:19
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl Position {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub(crate) fn is_left_edge_top(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub(crate) fn is_left_edge_bottom(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub(crate) fn is_right_edge_top(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub(crate) fn is_right_edge_bottom(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub(crate) fn is_right_edge_middle_row(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub(crate) fn is_left_edge_middle_row(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub(crate) fn is_middle_column_top(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub(crate) fn is_middle_column_bottom(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.74
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.74
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.74
[INFO] [stderr]    Compiling js-sys v0.3.51
[INFO] [stderr]    Compiling web-sys v0.3.51
[INFO] [stderr]    Compiling wasm v0.1.0 (/opt/rustwide/workdir/wasm)
[INFO] [stdout] warning: unused imports: `Action`, `Column`, `Position`, `Row`, and `board::Direction`
[INFO] [stdout]  --> wasm/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     board::Direction,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     position::{Column, Position, Row},
[INFO] [stdout]   |                ^^^^^^  ^^^^^^^^  ^^^
[INFO] [stdout] 4 |     Action, Game,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `game` and `history` are never read
[INFO] [stdout]   --> wasm/src/lib.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct Battle {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 13 |     game: Game,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     history: Vec<Game>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `display_board` are never used
[INFO] [stdout]   --> wasm/src/lib.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Battle {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn display_board(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.81s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.74
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 13`
[INFO] running `Command { std: "docker" "inspect" "695fdbd939e29eea3e85ed09e4e2cae5924faaa82f9a3bf4c8667f5f2db69649", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "695fdbd939e29eea3e85ed09e4e2cae5924faaa82f9a3bf4c8667f5f2db69649", kill_on_drop: false }`
[INFO] [stdout] 695fdbd939e29eea3e85ed09e4e2cae5924faaa82f9a3bf4c8667f5f2db69649
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dac8d077df7a9b62d660120a44308090690230c62a90cc51a58273468077b935
[INFO] running `Command { std: "docker" "start" "-a" "dac8d077df7a9b62d660120a44308090690230c62a90cc51a58273468077b935", kill_on_drop: false }`
[INFO] [stderr]    Compiling engine v0.1.0 (/opt/rustwide/workdir/engine)
[INFO] [stderr]    Compiling wasm v0.1.0 (/opt/rustwide/workdir/wasm)
[INFO] [stdout] warning: method `is_occupied_by` is never used
[INFO] [stdout]   --> engine/src/board.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Board {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub(crate) fn is_occupied_by(&self, position: &Position, player: &Player) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_moveable` is never used
[INFO] [stdout]    --> engine/src/board.rs:220:19
[INFO] [stdout]     |
[INFO] [stdout] 219 | impl DestinationState {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 220 |     pub(crate) fn is_moveable(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `moveable_directions` is never used
[INFO] [stdout]    --> engine/src/board.rs:329:19
[INFO] [stdout]     |
[INFO] [stdout] 277 | impl MovingRange {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 329 |     pub(crate) fn moveable_directions(&self) -> BTreeSet<Direction> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_left_edge`, `is_right_edge`, and `is_middle` are never used
[INFO] [stdout]   --> engine/src/position.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | impl Column {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 72 |     fn is_left_edge(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     fn is_right_edge(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     fn is_middle(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> engine/src/position.rs:185:19
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl Position {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub(crate) fn is_left_edge_top(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub(crate) fn is_left_edge_bottom(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub(crate) fn is_right_edge_top(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 197 |     pub(crate) fn is_right_edge_bottom(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 201 |     pub(crate) fn is_right_edge_middle_row(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 205 |     pub(crate) fn is_left_edge_middle_row(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |     pub(crate) fn is_middle_column_top(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub(crate) fn is_middle_column_bottom(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Action`, `Column`, `Position`, `Row`, and `board::Direction`
[INFO] [stdout]  --> wasm/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     board::Direction,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |     position::{Column, Position, Row},
[INFO] [stdout]   |                ^^^^^^  ^^^^^^^^  ^^^
[INFO] [stdout] 4 |     Action, Game,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `game` and `history` are never read
[INFO] [stdout]   --> wasm/src/lib.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct Battle {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 13 |     game: Game,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     history: Vec<Game>,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `display_board` are never used
[INFO] [stdout]   --> wasm/src/lib.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Battle {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn display_board(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_occupied_by` is never used
[INFO] [stdout]   --> engine/src/board.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Board {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 90 |     pub(crate) fn is_occupied_by(&self, position: &Position, player: &Player) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.76s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.74
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 13`
[INFO] running `Command { std: "docker" "inspect" "dac8d077df7a9b62d660120a44308090690230c62a90cc51a58273468077b935", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dac8d077df7a9b62d660120a44308090690230c62a90cc51a58273468077b935", kill_on_drop: false }`
[INFO] [stdout] dac8d077df7a9b62d660120a44308090690230c62a90cc51a58273468077b935
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a0c6e02d109a199eee7181074dcb625ee8b4a8e5c15b1bc30cfd495eb2c908d0
[INFO] running `Command { std: "docker" "start" "-a" "a0c6e02d109a199eee7181074dcb625ee8b4a8e5c15b1bc30cfd495eb2c908d0", kill_on_drop: false }`
[INFO] [stderr] warning: method `is_occupied_by` is never used
[INFO] [stderr]   --> engine/src/board.rs:90:19
[INFO] [stderr]    |
[INFO] [stderr] 18 | impl Board {
[INFO] [stderr]    | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 90 |     pub(crate) fn is_occupied_by(&self, position: &Position, player: &Player) -> bool {
[INFO] [stderr]    |                   ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_moveable` is never used
[INFO] [stderr]    --> engine/src/board.rs:220:19
[INFO] [stderr]     |
[INFO] [stderr] 219 | impl DestinationState {
[INFO] [stderr]     | --------------------- method in this implementation
[INFO] [stderr] 220 |     pub(crate) fn is_moveable(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `moveable_directions` is never used
[INFO] [stderr]    --> engine/src/board.rs:329:19
[INFO] [stderr]     |
[INFO] [stderr] 277 | impl MovingRange {
[INFO] [stderr]     | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 329 |     pub(crate) fn moveable_directions(&self) -> BTreeSet<Direction> {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `is_left_edge`, `is_right_edge`, and `is_middle` are never used
[INFO] [stderr]   --> engine/src/position.rs:72:8
[INFO] [stderr]    |
[INFO] [stderr] 71 | impl Column {
[INFO] [stderr]    | ----------- methods in this implementation
[INFO] [stderr] 72 |     fn is_left_edge(&self) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 76 |     fn is_right_edge(&self) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 80 |     fn is_middle(&self) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> engine/src/position.rs:185:19
[INFO] [stderr]     |
[INFO] [stderr] 126 | impl Position {
[INFO] [stderr]     | ------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 185 |     pub(crate) fn is_left_edge_top(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 189 |     pub(crate) fn is_left_edge_bottom(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 193 |     pub(crate) fn is_right_edge_top(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 197 |     pub(crate) fn is_right_edge_bottom(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 201 |     pub(crate) fn is_right_edge_middle_row(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 205 |     pub(crate) fn is_left_edge_middle_row(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 209 |     pub(crate) fn is_middle_column_top(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 213 |     pub(crate) fn is_middle_column_bottom(&self) -> bool {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `engine` (lib) generated 5 warnings
[INFO] [stderr] warning: `engine` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr] warning: unused imports: `Action`, `Column`, `Position`, `Row`, and `board::Direction`
[INFO] [stderr]  --> wasm/src/lib.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     board::Direction,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 3 |     position::{Column, Position, Row},
[INFO] [stderr]   |                ^^^^^^  ^^^^^^^^  ^^^
[INFO] [stderr] 4 |     Action, Game,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `game` and `history` are never read
[INFO] [stderr]   --> wasm/src/lib.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | struct Battle {
[INFO] [stderr]    |        ------ fields in this struct
[INFO] [stderr] 13 |     game: Game,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 14 |     history: Vec<Game>,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new` and `display_board` are never used
[INFO] [stderr]   --> wasm/src/lib.rs:19:12
[INFO] [stderr]    |
[INFO] [stderr] 18 | impl Battle {
[INFO] [stderr]    | ----------- associated items in this implementation
[INFO] [stderr] 19 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 25 |     pub fn display_board(&self) -> String {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `wasm` (lib test) generated 3 warnings (run `cargo fix --lib -p wasm --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: wasm-bindgen v0.2.74
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 13`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/engine-81e99e7ccfdcb393)
[INFO] [stdout] 
[INFO] [stdout] running 52 tests
[INFO] [stdout] test board::board_spec::generate_initial_empty_cells ... ok
[INFO] [stdout] test board::board_spec::generate_initial_occupied_cells ... ok
[INFO] [stdout] test board::board_spec::is_isolated_spec::empty_cell ... ok
[INFO] [stdout] test board::board_spec::is_isolated_spec::enclosed_by_empty_cells ... ok
[INFO] [stdout] test board::board_spec::is_isolated_spec::enclosed_by_oneself ... ok
[INFO] [stdout] test board::board_spec::is_isolated_spec::there_is_opponent ... ok
[INFO] [stdout] test board::board_spec::iterate ... ok
[INFO] [stdout] test board::board_spec::not_reached_goal_side ... ok
[INFO] [stdout] test board::board_spec::reached_goal_side ... ok
[INFO] [stdout] test board::migrate_spec::already_occupied_cell_cannot_migrate ... ok
[INFO] [stdout] test board::board_spec::territory ... ok
[INFO] [stdout] test board::migrate_spec::empty_cell_cannot_migrate ... ok
[INFO] [stdout] test board::migrate_spec::fullfilled_cell_cannot_migrate ... ok
[INFO] [stdout] test board::migrate_spec::migrate ... ok
[INFO] [stdout] test board::moving_range_spec::new ... ok
[INFO] [stdout] test board::moving_range_spec::moveable_directions ... ok
[INFO] [stdout] test cell::cell_spec::is_reached_stacking_limit ... ok
[INFO] [stdout] test board::moving_range_spec::has ... ok
[INFO] [stdout] test cell::cell_spec::is_same_owner_spec::different_owner ... ok
[INFO] [stdout] test board::moving_range_spec::has_no ... ok
[INFO] [stdout] test cell::cell_spec::is_same_owner_spec::empty_against_empty ... ok
[INFO] [stdout] test cell::cell_spec::is_same_owner_spec::owned_against_empty ... ok
[INFO] [stdout] test cell::cell_spec::is_same_owner_spec::same_owner ... ok
[INFO] [stdout] test cell::cell_spec::new_empty ... ok
[INFO] [stdout] test cell::cell_spec::new_occupied ... ok
[INFO] [stdout] test cell::cell_spec::unstack ... ok
[INFO] [stdout] test cell::cell_spec::stack ... ok
[INFO] [stdout] test game_spec::error_by_out_of_world ... ok
[INFO] [stdout] test game_spec::initial_state ... ok
[INFO] [stdout] test game_spec::refresh_board ... ok
[INFO] [stdout] test position::active_above_lefthand ... ok
[INFO] [stdout] test position::active_above_righthand ... ok
[INFO] [stdout] test position::active_below_lefthand ... ok
[INFO] [stdout] test position::active_below ... ok
[INFO] [stdout] test game_spec::flip_turn ... ok
[INFO] [stdout] test position::active_below_righthand ... ok
[INFO] [stdout] test position::active_above ... ok
[INFO] [stdout] test position::column_iterator ... ok
[INFO] [stdout] test position::active_lefthand ... ok
[INFO] [stdout] test position::active_righthand ... ok
[INFO] [stdout] test position::column_order ... ok
[INFO] [stdout] test position::left_edge_bottom_position ... ok
[INFO] [stdout] test position::left_edge_middle_row ... ok
[INFO] [stdout] test position::middle_column_bottom ... ok
[INFO] [stdout] test position::middle_column_top ... ok
[INFO] [stdout] test position::left_edge_top_position ... ok
[INFO] [stdout] test position::position_order ... ok
[INFO] [stdout] test position::right_edge_middle_row ... ok
[INFO] [stdout] test position::row_iterator ... ok
[INFO] [stdout] test position::right_edge_top_position ... ok
[INFO] [stdout] test position::row_order ... ok
[INFO] [stdout] test position::right_edge_bottom_position ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 52 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wasm-e5aa72a235873d3e)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests engine
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a0c6e02d109a199eee7181074dcb625ee8b4a8e5c15b1bc30cfd495eb2c908d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a0c6e02d109a199eee7181074dcb625ee8b4a8e5c15b1bc30cfd495eb2c908d0", kill_on_drop: false }`
[INFO] [stdout] a0c6e02d109a199eee7181074dcb625ee8b4a8e5c15b1bc30cfd495eb2c908d0
