[INFO] cloning repository https://github.com/NougatRillettes/FourInARust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/NougatRillettes/FourInARust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNougatRillettes%2FFourInARust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNougatRillettes%2FFourInARust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6748701ea3c1022bc70e459bfcf2f641433154af [INFO] testing NougatRillettes/FourInARust against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_getrandom_patch_2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNougatRillettes%2FFourInARust" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/NougatRillettes/FourInARust [INFO] finished tweaking git repo https://github.com/NougatRillettes/FourInARust [INFO] tweaked toml for git repo https://github.com/NougatRillettes/FourInARust written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/NougatRillettes/FourInARust on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/NougatRillettes/FourInARust 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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ahash v0.7.2 [INFO] [stderr] Downloaded array-init v2.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5c0d3375ab58ec7d05ecd517ae597af31c4d7b274ea38cc8e1bc886cdbad033d [INFO] running `Command { std: "docker" "start" "-a" "5c0d3375ab58ec7d05ecd517ae597af31c4d7b274ea38cc8e1bc886cdbad033d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5c0d3375ab58ec7d05ecd517ae597af31c4d7b274ea38cc8e1bc886cdbad033d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c0d3375ab58ec7d05ecd517ae597af31c4d7b274ea38cc8e1bc886cdbad033d", kill_on_drop: false }` [INFO] [stdout] 5c0d3375ab58ec7d05ecd517ae597af31c4d7b274ea38cc8e1bc886cdbad033d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 71cde2aa4d773079d98f200770d88a74896c4720c9f0d8e2e7f98385dfda9d42 [INFO] running `Command { std: "docker" "start" "-a" "71cde2aa4d773079d98f200770d88a74896c4720c9f0d8e2e7f98385dfda9d42", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.93 [INFO] [stderr] Compiling getrandom v0.2.2 [INFO] [stderr] Compiling anyhow v1.0.40 [INFO] [stderr] Compiling once_cell v1.7.2 [INFO] [stderr] Compiling array-init v2.0.0 [INFO] [stderr] Compiling ahash v0.7.2 [INFO] [stderr] Compiling bv v0.11.1 [INFO] [stderr] Compiling four_in_a_rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `bv::BitVec` [INFO] [stdout] --> src/board.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use bv::BitVec; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `io::BufRead` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use io::BufRead; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | mut beta: Score, [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PLAYER_COLOR` is never used [INFO] [stdout] --> src/ai.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const PLAYER_COLOR: NonEmptySqrState = NonEmptySqrState::Red; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Red` and `Yellow` are never constructed [INFO] [stdout] --> src/board.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub enum NonEmptySqrState { [INFO] [stdout] | ---------------- variants in this enum [INFO] [stdout] 8 | Red, [INFO] [stdout] | ^^^ [INFO] [stdout] 9 | Yellow, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NonEmptySqrState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `other` is never used [INFO] [stdout] --> src/board.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl NonEmptySqrState { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn other(self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NonEmpty` is never constructed [INFO] [stdout] --> src/board.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub enum SqrState { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] 36 | Empty, [INFO] [stdout] 37 | NonEmpty(NonEmptySqrState), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SqrState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/board.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl SqrState { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn is_empty(self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ColumnError` is never used [INFO] [stdout] --> src/board.rs:67:6 [INFO] [stdout] | [INFO] [stdout] 67 | enum ColumnError { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ColumnError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Column` is never constructed [INFO] [stdout] --> src/board.rs:82:12 [INFO] [stdout] | [INFO] [stdout] 82 | pub struct Column { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Column` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `is_full`, `len`, `try_push`, `get`, and `get_mut` are never used [INFO] [stdout] --> src/board.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 87 | impl Column { [INFO] [stdout] | ------------------------------------ associated items in this implementation [INFO] [stdout] 88 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn is_full(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn len(&self) -> u8 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn try_push(&mut self, x: NonEmptySqrState) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | fn get(&self, i: usize) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | fn get_mut(&mut self, i: usize) -> Option<&mut SqrState> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `BoardError` is never used [INFO] [stdout] --> src/board.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 124 | pub enum BoardError { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BoardError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `BoardResult` is never used [INFO] [stdout] --> src/board.rs:170:10 [INFO] [stdout] | [INFO] [stdout] 170 | pub type BoardResult = Result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Board` is never constructed [INFO] [stdout] --> src/board.rs:173:12 [INFO] [stdout] | [INFO] [stdout] 173 | pub struct Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Board` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/board.rs:179:12 [INFO] [stdout] | [INFO] [stdout] 177 | impl Board { [INFO] [stdout] | ------------------------------------------------------------ associated items in this implementation [INFO] [stdout] 178 | /// Creates a new board [INFO] [stdout] 179 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn col_is_full(&self, coli: usize) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | fn get_col(&self, coli: usize) -> BoardResult<&Column> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | fn get_col_mut(&mut self, coli: usize) -> BoardResult<&mut Column> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 209 | fn get_cell(&self, coli: usize, rowi: usize) -> BoardResult { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 217 | fn get_cell_mut(&mut self, coli: usize, rowi: usize) -> BoardResult<&mut SqrState> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 229 | pub fn try_add_to_col( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn add_to_col(&mut self, coli: usize, color: NonEmptySqrState) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn try_win_at(&self, col_i: usize, row_i: usize) -> BoardResult<(SqrState, bool)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn try_add_and_check(&mut self, coli: usize, color: NonEmptySqrState) -> BoardResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn columns(&self) -> &[Column; COLS] { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | pub fn to_packed_repr(&self) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/packedboard.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl SqrState { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn is_empty(self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL_ROW_IDXS` is never used [INFO] [stdout] --> src/packedboard.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const ALL_ROW_IDXS : [ColIdx; NROW as usize] = [ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RowIndexOutOfBounds` is never constructed [INFO] [stdout] --> src/packedboard.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 87 | pub enum BoardError { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 91 | RowIndexOutOfBounds { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BoardError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `check_row_idx` and `col_is_full` are never used [INFO] [stdout] --> src/packedboard.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 187 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn check_row_idx(idx: u8) -> BoardResult { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn col_is_full(&self, coli: ColIdx) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.64s [INFO] running `Command { std: "docker" "inspect" "71cde2aa4d773079d98f200770d88a74896c4720c9f0d8e2e7f98385dfda9d42", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "71cde2aa4d773079d98f200770d88a74896c4720c9f0d8e2e7f98385dfda9d42", kill_on_drop: false }` [INFO] [stdout] 71cde2aa4d773079d98f200770d88a74896c4720c9f0d8e2e7f98385dfda9d42 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 7aee9e4fa0129838a86f52ac52ea28766816ae089ba81f617702560ab64ef44c [INFO] running `Command { std: "docker" "start" "-a" "7aee9e4fa0129838a86f52ac52ea28766816ae089ba81f617702560ab64ef44c", kill_on_drop: false }` [INFO] [stderr] Compiling four_in_a_rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `bv::BitVec` [INFO] [stdout] --> src/board.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use bv::BitVec; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `io::BufRead` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use io::BufRead; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ai.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | mut beta: Score, [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PLAYER_COLOR` is never used [INFO] [stdout] --> src/ai.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const PLAYER_COLOR: NonEmptySqrState = NonEmptySqrState::Red; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `other` is never used [INFO] [stdout] --> src/board.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl NonEmptySqrState { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn other(self) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/board.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl SqrState { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn is_empty(self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `len` and `get_mut` are never used [INFO] [stdout] --> src/board.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 87 | impl Column { [INFO] [stdout] | ------------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn len(&self) -> u8 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | fn get_mut(&mut self, i: usize) -> Option<&mut SqrState> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_cell_mut`, `try_win_at`, `try_add_and_check`, `columns`, and `to_packed_repr` are never used [INFO] [stdout] --> src/board.rs:217:8 [INFO] [stdout] | [INFO] [stdout] 177 | impl Board { [INFO] [stdout] | ------------------------------------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 217 | fn get_cell_mut(&mut self, coli: usize, rowi: usize) -> BoardResult<&mut SqrState> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn try_win_at(&self, col_i: usize, row_i: usize) -> BoardResult<(SqrState, bool)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 279 | pub fn try_add_and_check(&mut self, coli: usize, color: NonEmptySqrState) -> BoardResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn columns(&self) -> &[Column; COLS] { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 288 | pub fn to_packed_repr(&self) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/packedboard.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 38 | impl SqrState { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn is_empty(self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL_ROW_IDXS` is never used [INFO] [stdout] --> src/packedboard.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const ALL_ROW_IDXS : [ColIdx; NROW as usize] = [ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RowIndexOutOfBounds` is never constructed [INFO] [stdout] --> src/packedboard.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 87 | pub enum BoardError { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 91 | RowIndexOutOfBounds { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BoardError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `check_row_idx` and `col_is_full` are never used [INFO] [stdout] --> src/packedboard.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 187 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 199 | pub fn check_row_idx(idx: u8) -> BoardResult { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn col_is_full(&self, coli: ColIdx) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.72s [INFO] running `Command { std: "docker" "inspect" "7aee9e4fa0129838a86f52ac52ea28766816ae089ba81f617702560ab64ef44c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7aee9e4fa0129838a86f52ac52ea28766816ae089ba81f617702560ab64ef44c", kill_on_drop: false }` [INFO] [stdout] 7aee9e4fa0129838a86f52ac52ea28766816ae089ba81f617702560ab64ef44c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 59daefe556c1d2f0f2539041f0631f706a945c9bc3c580f5a2d25bc19c66ed42 [INFO] running `Command { std: "docker" "start" "-a" "59daefe556c1d2f0f2539041f0631f706a945c9bc3c580f5a2d25bc19c66ed42", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `bv::BitVec` [INFO] [stderr] --> src/board.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use bv::BitVec; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `io::BufRead` [INFO] [stderr] --> src/main.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use io::BufRead; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ai.rs:69:5 [INFO] [stderr] | [INFO] [stderr] 69 | mut beta: Score, [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `PLAYER_COLOR` is never used [INFO] [stderr] --> src/ai.rs:9:7 [INFO] [stderr] | [INFO] [stderr] 9 | const PLAYER_COLOR: NonEmptySqrState = NonEmptySqrState::Red; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: method `other` is never used [INFO] [stderr] --> src/board.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 12 | impl NonEmptySqrState { [INFO] [stderr] | --------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 20 | pub fn other(self) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `is_empty` is never used [INFO] [stderr] --> src/board.rs:49:12 [INFO] [stderr] | [INFO] [stderr] 40 | impl SqrState { [INFO] [stderr] | ------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 49 | pub fn is_empty(self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `len` and `get_mut` are never used [INFO] [stderr] --> src/board.rs:99:12 [INFO] [stderr] | [INFO] [stderr] 87 | impl Column { [INFO] [stderr] | ------------------------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 99 | pub fn len(&self) -> u8 { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 118 | fn get_mut(&mut self, i: usize) -> Option<&mut SqrState> { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `get_cell_mut`, `try_win_at`, `try_add_and_check`, `columns`, and `to_packed_repr` are never used [INFO] [stderr] --> src/board.rs:217:8 [INFO] [stderr] | [INFO] [stderr] 177 | impl Board { [INFO] [stderr] | ------------------------------------------------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 217 | fn get_cell_mut(&mut self, coli: usize, rowi: usize) -> BoardResult<&mut SqrState> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 253 | pub fn try_win_at(&self, col_i: usize, row_i: usize) -> BoardResult<(SqrState, bool)> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 279 | pub fn try_add_and_check(&mut self, coli: usize, color: NonEmptySqrState) -> BoardResult { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 284 | pub fn columns(&self) -> &[Column; COLS] { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 288 | pub fn to_packed_repr(&self) -> u128 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `is_empty` is never used [INFO] [stderr] --> src/packedboard.rs:47:12 [INFO] [stderr] | [INFO] [stderr] 38 | impl SqrState { [INFO] [stderr] | ------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 47 | pub fn is_empty(self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ALL_ROW_IDXS` is never used [INFO] [stderr] --> src/packedboard.rs:75:11 [INFO] [stderr] | [INFO] [stderr] 75 | pub const ALL_ROW_IDXS : [ColIdx; NROW as usize] = [ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `RowIndexOutOfBounds` is never constructed [INFO] [stderr] --> src/packedboard.rs:91:5 [INFO] [stderr] | [INFO] [stderr] 87 | pub enum BoardError { [INFO] [stderr] | ---------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 91 | RowIndexOutOfBounds { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `BoardError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated items `check_row_idx` and `col_is_full` are never used [INFO] [stderr] --> src/packedboard.rs:199:12 [INFO] [stderr] | [INFO] [stderr] 187 | impl Board { [INFO] [stderr] | ---------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 199 | pub fn check_row_idx(idx: u8) -> BoardResult { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 219 | pub fn col_is_full(&self, coli: ColIdx) -> bool { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `four_in_a_rust` (bin "four_in_a_rust" test) generated 12 warnings (run `cargo fix --bin "four_in_a_rust" --tests` to apply 2 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/four_in_a_rust-df35f906be1379cf) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test board::tests::generaltest ... ok [INFO] [stdout] test board::tests::addtokenpanic1 - should panic ... ok [INFO] [stdout] test board::tests::addtokenpanic3 - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "59daefe556c1d2f0f2539041f0631f706a945c9bc3c580f5a2d25bc19c66ed42", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59daefe556c1d2f0f2539041f0631f706a945c9bc3c580f5a2d25bc19c66ed42", kill_on_drop: false }` [INFO] [stdout] 59daefe556c1d2f0f2539041f0631f706a945c9bc3c580f5a2d25bc19c66ed42