[INFO] cloning repository https://github.com/raacee/gobot-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/raacee/gobot-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fraacee%2Fgobot-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fraacee%2Fgobot-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] cc6ab70a3b916e519de0880de54354c5c8a03052 [INFO] checking raacee/gobot-rs against try#0611f7de057c584b8771102fde7aed6c70c71d3b for pr-146440 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fraacee%2Fgobot-rs" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/raacee/gobot-rs [INFO] finished tweaking git repo https://github.com/raacee/gobot-rs [INFO] tweaked toml for git repo https://github.com/raacee/gobot-rs written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/raacee/gobot-rs on toolchain 0611f7de057c584b8771102fde7aed6c70c71d3b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/raacee/gobot-rs 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" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7b3c10dcc2e85b8cadd027d2ea697f99cbf9d501617891d5906aa20db8009244 [INFO] running `Command { std: "docker" "start" "-a" "7b3c10dcc2e85b8cadd027d2ea697f99cbf9d501617891d5906aa20db8009244", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7b3c10dcc2e85b8cadd027d2ea697f99cbf9d501617891d5906aa20db8009244", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7b3c10dcc2e85b8cadd027d2ea697f99cbf9d501617891d5906aa20db8009244", kill_on_drop: false }` [INFO] [stdout] 7b3c10dcc2e85b8cadd027d2ea697f99cbf9d501617891d5906aa20db8009244 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0611f7de057c584b8771102fde7aed6c70c71d3b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 716cda3560c6f36eae0bbe2d87748bad480ba29dad198a92fdaa37d8f62ed7aa [INFO] running `Command { std: "docker" "start" "-a" "716cda3560c6f36eae0bbe2d87748bad480ba29dad198a92fdaa37d8f62ed7aa", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Checking getrandom v0.3.4 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking gobot-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/mcts/tree.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/mcts/tree.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Move` [INFO] [stdout] --> src/mcts/tree.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::game::{Game, Move}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/players/player.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/players/bot.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Move` [INFO] [stdout] --> src/mcts/tree.rs:6:25 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::game::{Game, Move}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/players/human.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/players/player.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/players/bot.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/players/human.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/game.rs:531:35 [INFO] [stdout] | [INFO] [stdout] 531 | pub fn available_cases(&self, player: Rc>) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player` [INFO] [stdout] --> src/game.rs:531:35 [INFO] [stdout] | [INFO] [stdout] 531 | pub fn available_cases(&self, player: Rc>) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_player` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/game.rs:559:21 [INFO] [stdout] | [INFO] [stdout] 559 | _ => panic!("Unknown value found"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/game.rs:559:21 [INFO] [stdout] | [INFO] [stdout] 556 | WHITE_STONE => WHITE_STONE_CHAR, [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 557 | BLACK_STONE => BLACK_STONE_CHAR, [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 558 | EMPTY => EMPTY_CHAR, [INFO] [stdout] | ----- matches some of the same values [INFO] [stdout] 559 | _ => panic!("Unknown value found"), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/game.rs:559:21 [INFO] [stdout] | [INFO] [stdout] 559 | _ => panic!("Unknown value found"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/game.rs:559:21 [INFO] [stdout] | [INFO] [stdout] 556 | WHITE_STONE => WHITE_STONE_CHAR, [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 557 | BLACK_STONE => BLACK_STONE_CHAR, [INFO] [stdout] | ----------- matches some of the same values [INFO] [stdout] 558 | EMPTY => EMPTY_CHAR, [INFO] [stdout] | ----- matches some of the same values [INFO] [stdout] 559 | _ => panic!("Unknown value found"), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game` [INFO] [stdout] --> src/players/human.rs:45:27 [INFO] [stdout] | [INFO] [stdout] 45 | fn choose_case(&self, game: &Game) -> Move { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_game` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game` [INFO] [stdout] --> src/players/human.rs:45:27 [INFO] [stdout] | [INFO] [stdout] 45 | fn choose_case(&self, game: &Game) -> Move { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_game` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/game.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl Game { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn from( [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn get(&self, x: usize, y: usize) -> &Stone { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn width(&self) -> &usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn height(&self) -> &usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 442 | pub fn scores_difference(&self, scores: HashMap) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 473 | fn eye_owner(&self, coords: Coordinates) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 492 | fn is_eye(&self, coords: Coordinates) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | fn group_owner(&self, coords: Coordinates) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 515 | fn is_alive(&self, coords: Coordinates) -> 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: variant `GameOver` is never constructed [INFO] [stdout] --> src/signals.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Signals { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 9 | GameOver, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from` and `get_leaves` are never used [INFO] [stdout] --> src/mcts/tree.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Tree { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 23 | fn from(root: MoveNodeRef) -> Tree { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | fn get_leaves(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `eval` is never read [INFO] [stdout] --> src/mcts/node.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Node { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 12 | eval: f32, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Node` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/players/human.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Human { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 7 | pub stone: Stone, [INFO] [stdout] 8 | pub name: &'static str, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/game.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 33 | impl Game { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn from( [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn get(&self, x: usize, y: usize) -> &Stone { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn width(&self) -> &usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn height(&self) -> &usize { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 442 | pub fn scores_difference(&self, scores: HashMap) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 473 | fn eye_owner(&self, coords: Coordinates) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 492 | fn is_eye(&self, coords: Coordinates) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | fn group_owner(&self, coords: Coordinates) -> Option>> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 515 | fn is_alive(&self, coords: Coordinates) -> 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: variant `GameOver` is never constructed [INFO] [stdout] --> src/signals.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Signals { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 9 | GameOver, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from` and `get_leaves` are never used [INFO] [stdout] --> src/mcts/tree.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl Tree { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 23 | fn from(root: MoveNodeRef) -> Tree { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | fn get_leaves(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `eval` is never read [INFO] [stdout] --> src/mcts/node.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Node { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 12 | eval: f32, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Node` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/players/human.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Human { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 7 | pub stone: Stone, [INFO] [stdout] 8 | pub name: &'static str, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.92s [INFO] running `Command { std: "docker" "inspect" "716cda3560c6f36eae0bbe2d87748bad480ba29dad198a92fdaa37d8f62ed7aa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "716cda3560c6f36eae0bbe2d87748bad480ba29dad198a92fdaa37d8f62ed7aa", kill_on_drop: false }` [INFO] [stdout] 716cda3560c6f36eae0bbe2d87748bad480ba29dad198a92fdaa37d8f62ed7aa