[INFO] cloning repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nkoppel/sudoku-solver" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnkoppel%2Fsudoku-solver", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnkoppel%2Fsudoku-solver'... [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] updating cached repository https://github.com/nkoppel/sudoku-solver [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f3d3e3be6823aa8b1c0df59beb9068b54f884d23 [INFO] checking nkoppel/sudoku-solver against master#21de280cccb4eb02ead6bf0af40e2355a9136d6f for pr-100043 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnkoppel%2Fsudoku-solver" "/workspace/builds/worker-1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/nkoppel/sudoku-solver on toolchain 21de280cccb4eb02ead6bf0af40e2355a9136d6f [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+21de280cccb4eb02ead6bf0af40e2355a9136d6f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/nkoppel/sudoku-solver [INFO] finished tweaking git repo https://github.com/nkoppel/sudoku-solver [INFO] tweaked toml for git repo https://github.com/nkoppel/sudoku-solver written to /workspace/builds/worker-1/source/Cargo.toml [INFO] crate git repo https://github.com/nkoppel/sudoku-solver already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+21de280cccb4eb02ead6bf0af40e2355a9136d6f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:ecb52c4cf6672b83cc996368a05b4a059042425f2b6ba9cd23a06cdead5d8d70" "/opt/rustwide/cargo-home/bin/cargo" "+21de280cccb4eb02ead6bf0af40e2355a9136d6f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] eef1fd1fc1b951f6c19ed588b32bb49fe6e9e6e530cb9334ffb2e4aaa5c91e5d [INFO] running `Command { std: "docker" "start" "-a" "eef1fd1fc1b951f6c19ed588b32bb49fe6e9e6e530cb9334ffb2e4aaa5c91e5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "eef1fd1fc1b951f6c19ed588b32bb49fe6e9e6e530cb9334ffb2e4aaa5c91e5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eef1fd1fc1b951f6c19ed588b32bb49fe6e9e6e530cb9334ffb2e4aaa5c91e5d", kill_on_drop: false }` [INFO] [stdout] eef1fd1fc1b951f6c19ed588b32bb49fe6e9e6e530cb9334ffb2e4aaa5c91e5d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/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:ecb52c4cf6672b83cc996368a05b4a059042425f2b6ba9cd23a06cdead5d8d70" "/opt/rustwide/cargo-home/bin/cargo" "+21de280cccb4eb02ead6bf0af40e2355a9136d6f" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 59a66127c49a8b3f42210740707298dbbeed70383e3601d7633aa68824ec0ab2 [INFO] running `Command { std: "docker" "start" "-a" "59a66127c49a8b3f42210740707298dbbeed70383e3601d7633aa68824ec0ab2", kill_on_drop: false }` [INFO] [stderr] Checking sudoku-solver v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | board |= (board >> 3); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 105 - board |= (board >> 3); [INFO] [stdout] 105 + board |= board >> 3; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | board |= (board >> 6); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - board |= (board >> 6); [INFO] [stdout] 108 + board |= board >> 6; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:135:14 [INFO] [stdout] | [INFO] [stdout] 135 | board |= (board >> 27); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 135 - board |= (board >> 27); [INFO] [stdout] 135 + board |= board >> 27; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:138:14 [INFO] [stdout] | [INFO] [stdout] 138 | board |= (board >> 54); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 138 - board |= (board >> 54); [INFO] [stdout] 138 + board |= board >> 54; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | board |= (board >> 3); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 105 - board |= (board >> 3); [INFO] [stdout] 105 + board |= board >> 3; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | board |= (board >> 6); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - board |= (board >> 6); [INFO] [stdout] 108 + board |= board >> 6; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:135:14 [INFO] [stdout] | [INFO] [stdout] 135 | board |= (board >> 27); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 135 - board |= (board >> 27); [INFO] [stdout] 135 + board |= board >> 27; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:138:14 [INFO] [stdout] | [INFO] [stdout] 138 | board |= (board >> 54); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 138 - board |= (board >> 54); [INFO] [stdout] 138 + board |= board >> 54; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `groups` is never read [INFO] [stdout] --> src/solve.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Solver { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 194 | groups: [u128; 27], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> benches/../src/solve.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | board |= (board >> 3); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 105 - board |= (board >> 3); [INFO] [stdout] 105 + board |= board >> 3; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> benches/../src/solve.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | board |= (board >> 6); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - board |= (board >> 6); [INFO] [stdout] 108 + board |= board >> 6; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> benches/../src/solve.rs:135:14 [INFO] [stdout] | [INFO] [stdout] 135 | board |= (board >> 27); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 135 - board |= (board >> 27); [INFO] [stdout] 135 + board |= board >> 27; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> benches/../src/solve.rs:138:14 [INFO] [stdout] | [INFO] [stdout] 138 | board |= (board >> 54); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 138 - board |= (board >> 54); [INFO] [stdout] 138 + board |= board >> 54; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | board |= (board >> 3); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 105 - board |= (board >> 3); [INFO] [stdout] 105 + board |= board >> 3; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | board |= (board >> 6); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - board |= (board >> 6); [INFO] [stdout] 108 + board |= board >> 6; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:135:14 [INFO] [stdout] | [INFO] [stdout] 135 | board |= (board >> 27); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 135 - board |= (board >> 27); [INFO] [stdout] 135 + board |= board >> 27; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:138:14 [INFO] [stdout] | [INFO] [stdout] 138 | board |= (board >> 54); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 138 - board |= (board >> 54); [INFO] [stdout] 138 + board |= board >> 54; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `Read`, `stdin` [INFO] [stdout] --> src/main.rs:8:22 [INFO] [stdout] | [INFO] [stdout] 8 | use std::io::{Lines, Read, BufRead, BufReader, stdin}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:105:14 [INFO] [stdout] | [INFO] [stdout] 105 | board |= (board >> 3); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 105 - board |= (board >> 3); [INFO] [stdout] 105 + board |= board >> 3; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:108:14 [INFO] [stdout] | [INFO] [stdout] 108 | board |= (board >> 6); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 108 - board |= (board >> 6); [INFO] [stdout] 108 + board |= board >> 6; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:135:14 [INFO] [stdout] | [INFO] [stdout] 135 | board |= (board >> 27); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 135 - board |= (board >> 27); [INFO] [stdout] 135 + board |= board >> 27; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/solve.rs:138:14 [INFO] [stdout] | [INFO] [stdout] 138 | board |= (board >> 54); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 138 - board |= (board >> 54); [INFO] [stdout] 138 + board |= board >> 54; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BufReader`, `Read`, `stdin` [INFO] [stdout] --> src/main.rs:8:22 [INFO] [stdout] | [INFO] [stdout] 8 | use std::io::{Lines, Read, BufRead, BufReader, stdin}; [INFO] [stdout] | ^^^^ ^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `puzzle` [INFO] [stdout] --> benches/benches.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | let puzzle = Puzzle::from_str(TEST_PUZZLE); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_puzzle` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `groups` is never read [INFO] [stdout] --> src/solve.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Solver { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 194 | groups: [u128; 27], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_from_lines` is never used [INFO] [stdout] --> src/main.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn test_from_lines(lines: Lines) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve_from_lines` is never used [INFO] [stdout] --> src/main.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn solve_from_lines(lines: Lines) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NEW_BOARD` is never used [INFO] [stdout] --> src/puzzle.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const NEW_BOARD: u128 = 0x1_fffff_fffff_fffff_fffff; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `solved` is never read [INFO] [stdout] --> src/puzzle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Puzzle{ [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 20 | pub boards: [u128; 9], [INFO] [stdout] 21 | solved: u128 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Puzzle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/puzzle.rs:25:18 [INFO] [stdout] | [INFO] [stdout] 25 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/puzzle.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn from_str(s: &str) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `to_string` is never used [INFO] [stdout] --> src/puzzle.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_solved` is never used [INFO] [stdout] --> src/puzzle.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn get_solved(&self) -> u128 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_new_solved` is never used [INFO] [stdout] --> src/puzzle.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn get_new_solved(&mut self) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `is_valid` is never used [INFO] [stdout] --> src/puzzle.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_square_options` is never used [INFO] [stdout] --> src/puzzle.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn get_square_options(&self) -> [u128; 9] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROW` is never used [INFO] [stdout] --> src/solve.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub const ROW: u128 = 0o777; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOX` is never used [INFO] [stdout] --> src/solve.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const BOX: u128 = 0o7007007; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_columns` is never used [INFO] [stdout] --> src/solve.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn quick_columns(mut board: u128) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_rows` is never used [INFO] [stdout] --> src/solve.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn quick_rows(mut board: u128) -> u128 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_boxes` is never used [INFO] [stdout] --> src/solve.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn quick_boxes(mut board: u128) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_vert_triads` is never used [INFO] [stdout] --> src/solve.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn quick_vert_triads(mut board: u128) -> (u128, u128) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_group_table` is never used [INFO] [stdout] --> src/solve.rs:143:8 [INFO] [stdout] | [INFO] [stdout] 143 | pub fn gen_group_table() -> [u128; 27] { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_square_table` is never used [INFO] [stdout] --> src/solve.rs:155:4 [INFO] [stdout] | [INFO] [stdout] 155 | fn gen_square_table() -> [u128; 81] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Solver` is never constructed [INFO] [stdout] --> src/solve.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Solver { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/solve.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 199 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `slow_is_valid` is never used [INFO] [stdout] --> src/solve.rs:208:12 [INFO] [stdout] | [INFO] [stdout] 208 | pub fn slow_is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `update` is never used [INFO] [stdout] --> src/solve.rs:226:12 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `guess` is never used [INFO] [stdout] --> src/solve.rs:291:12 [INFO] [stdout] | [INFO] [stdout] 291 | pub fn guess(&mut self) -> (u8, u8) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `solve` is never used [INFO] [stdout] --> src/solve.rs:315:12 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn solve(&mut self) -> bool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `test` is never used [INFO] [stdout] --> src/solve.rs:344:12 [INFO] [stdout] | [INFO] [stdout] 344 | pub fn test(&mut self, puzzle: &str, solution: &str) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> benches/benches.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | let mut solver = Solver::new(); [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: 32 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `groups` is never read [INFO] [stdout] --> benches/../src/solve.rs:194:5 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Solver { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 194 | groups: [u128; 27], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `test` is never used [INFO] [stdout] --> benches/../src/solve.rs:344:12 [INFO] [stdout] | [INFO] [stdout] 344 | pub fn test(&mut self, puzzle: &str, solution: &str) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_board` is never used [INFO] [stdout] --> benches/../src/puzzle.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn print_board(b: u128) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `to_string` is never used [INFO] [stdout] --> benches/../src/puzzle.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 10 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_from_lines` is never used [INFO] [stdout] --> src/main.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn test_from_lines(lines: Lines) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `solve_from_lines` is never used [INFO] [stdout] --> src/main.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn solve_from_lines(lines: Lines) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NEW_BOARD` is never used [INFO] [stdout] --> src/puzzle.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const NEW_BOARD: u128 = 0x1_fffff_fffff_fffff_fffff; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `solved` is never read [INFO] [stdout] --> src/puzzle.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Puzzle{ [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 20 | pub boards: [u128; 9], [INFO] [stdout] 21 | solved: u128 [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Puzzle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/puzzle.rs:25:18 [INFO] [stdout] | [INFO] [stdout] 25 | pub const fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_str` is never used [INFO] [stdout] --> src/puzzle.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn from_str(s: &str) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `to_string` is never used [INFO] [stdout] --> src/puzzle.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_solved` is never used [INFO] [stdout] --> src/puzzle.rs:83:12 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn get_solved(&self) -> u128 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_new_solved` is never used [INFO] [stdout] --> src/puzzle.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub fn get_new_solved(&mut self) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `is_valid` is never used [INFO] [stdout] --> src/puzzle.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 101 | pub fn is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `get_square_options` is never used [INFO] [stdout] --> src/puzzle.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn get_square_options(&self) -> [u128; 9] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROW` is never used [INFO] [stdout] --> src/solve.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub const ROW: u128 = 0o777; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BOX` is never used [INFO] [stdout] --> src/solve.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const BOX: u128 = 0o7007007; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_columns` is never used [INFO] [stdout] --> src/solve.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn quick_columns(mut board: u128) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_rows` is never used [INFO] [stdout] --> src/solve.rs:34:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub fn quick_rows(mut board: u128) -> u128 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_boxes` is never used [INFO] [stdout] --> src/solve.rs:59:8 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn quick_boxes(mut board: u128) -> u128 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quick_vert_triads` is never used [INFO] [stdout] --> src/solve.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn quick_vert_triads(mut board: u128) -> (u128, u128) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_group_table` is never used [INFO] [stdout] --> src/solve.rs:143:8 [INFO] [stdout] | [INFO] [stdout] 143 | pub fn gen_group_table() -> [u128; 27] { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_square_table` is never used [INFO] [stdout] --> src/solve.rs:155:4 [INFO] [stdout] | [INFO] [stdout] 155 | fn gen_square_table() -> [u128; 81] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Solver` is never constructed [INFO] [stdout] --> src/solve.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Solver { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/solve.rs:199:12 [INFO] [stdout] | [INFO] [stdout] 199 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `slow_is_valid` is never used [INFO] [stdout] --> src/solve.rs:208:12 [INFO] [stdout] | [INFO] [stdout] 208 | pub fn slow_is_valid(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `update` is never used [INFO] [stdout] --> src/solve.rs:226:12 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `guess` is never used [INFO] [stdout] --> src/solve.rs:291:12 [INFO] [stdout] | [INFO] [stdout] 291 | pub fn guess(&mut self) -> (u8, u8) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `solve` is never used [INFO] [stdout] --> src/solve.rs:315:12 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn solve(&mut self) -> bool { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `test` is never used [INFO] [stdout] --> src/solve.rs:344:12 [INFO] [stdout] | [INFO] [stdout] 344 | pub fn test(&mut self, puzzle: &str, solution: &str) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 32 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.67s [INFO] running `Command { std: "docker" "inspect" "59a66127c49a8b3f42210740707298dbbeed70383e3601d7633aa68824ec0ab2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59a66127c49a8b3f42210740707298dbbeed70383e3601d7633aa68824ec0ab2", kill_on_drop: false }` [INFO] [stdout] 59a66127c49a8b3f42210740707298dbbeed70383e3601d7633aa68824ec0ab2