[INFO] cloning repository https://github.com/tomscallon/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/tomscallon/sudoku-solver" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomscallon%2Fsudoku-solver", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomscallon%2Fsudoku-solver'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1ce17c3776b3a96bb653b88232b5dfabefc30c9e
[INFO] checking tomscallon/sudoku-solver against try#446cb600aa4837dd6c513f14fa0d25a909b177d7 for pr-149195
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomscallon%2Fsudoku-solver" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tomscallon/sudoku-solver
[INFO] finished tweaking git repo https://github.com/tomscallon/sudoku-solver
[INFO] tweaked toml for git repo https://github.com/tomscallon/sudoku-solver written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tomscallon/sudoku-solver on toolchain 446cb600aa4837dd6c513f14fa0d25a909b177d7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+446cb600aa4837dd6c513f14fa0d25a909b177d7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tomscallon/sudoku-solver 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" "+446cb600aa4837dd6c513f14fa0d25a909b177d7" "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
[ERROR] error running command: no output for 300 seconds
[INFO] checking tomscallon/sudoku-solver against try#446cb600aa4837dd6c513f14fa0d25a909b177d7 for pr-149195
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomscallon%2Fsudoku-solver" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tomscallon/sudoku-solver
[INFO] finished tweaking git repo https://github.com/tomscallon/sudoku-solver
[INFO] tweaked toml for git repo https://github.com/tomscallon/sudoku-solver written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tomscallon/sudoku-solver on toolchain 446cb600aa4837dd6c513f14fa0d25a909b177d7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+446cb600aa4837dd6c513f14fa0d25a909b177d7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tomscallon/sudoku-solver 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" "+446cb600aa4837dd6c513f14fa0d25a909b177d7" "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-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+446cb600aa4837dd6c513f14fa0d25a909b177d7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 864223f5d0582fa88aa362aa5a80194ed34662cd3bbba9a6cb73cb82b2b2716d
[INFO] running `Command { std: "docker" "start" "-a" "864223f5d0582fa88aa362aa5a80194ed34662cd3bbba9a6cb73cb82b2b2716d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "864223f5d0582fa88aa362aa5a80194ed34662cd3bbba9a6cb73cb82b2b2716d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "864223f5d0582fa88aa362aa5a80194ed34662cd3bbba9a6cb73cb82b2b2716d", kill_on_drop: false }`
[INFO] [stdout] 864223f5d0582fa88aa362aa5a80194ed34662cd3bbba9a6cb73cb82b2b2716d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+446cb600aa4837dd6c513f14fa0d25a909b177d7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f440cae9ca7cc6f6acbb71636817cbc204fef9ab9044860b53d2b5cf91cc85e7
[INFO] running `Command { std: "docker" "start" "-a" "f440cae9ca7cc6f6acbb71636817cbc204fef9ab9044860b53d2b5cf91cc85e7", kill_on_drop: false }`
[INFO] [stderr]     Checking sudoku-solver v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `self::solve::solve`
[INFO] [stdout]  --> src/constraints.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub use self::solve::solve;
[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: `self::solve::solve`
[INFO] [stdout]  --> src/constraints.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub use self::solve::solve;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CellPosition` is never used
[INFO] [stdout]   --> src/constraints/typedefs.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum CellPosition {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `offset`, `for_coord`, and `for_position` are never used
[INFO] [stdout]   --> src/constraints/typedefs.rs:25:6
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl CellPosition {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 25 |   fn offset(&self) -> u8 {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |   fn for_coord(coord: u8) -> CellPosition {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |   fn for_position(pos: &Position) -> (CellPosition, CellPosition) {
[INFO] [stdout]    |      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `col`, `cell`, and `diag` are never used
[INFO] [stdout]   --> src/constraints/typedefs.rs:67:10
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl Group {
[INFO] [stdout]    | ---------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |   pub fn col(col: u8) -> Group {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |   pub fn cell(row_pos: CellPosition, col_pos: CellPosition) -> Group {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |   pub fn diag(top: bool) -> Group {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Constraint` is never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:127:11
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub trait Constraint {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `GroupConstraint` is never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait GroupConstraint {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RowConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct RowConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ColumnConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:155:8
[INFO] [stdout]     |
[INFO] [stdout] 155 | struct ColumnConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CellConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:162:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | struct CellConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DiagonalConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | struct DiagonalConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PuzzleBuilder` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:187:8
[INFO] [stdout]     |
[INFO] [stdout] 187 | struct PuzzleBuilder {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:194:10
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl PuzzleBuilder {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 194 |   pub fn new() -> PuzzleBuilder {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   pub fn add_group(&mut self, g: Group) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |   pub fn add_row_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |   pub fn add_col_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |   pub fn add_cell_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |   pub fn add_diag_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |   pub fn add_constraint(&mut self, c: Box<dyn Constraint>) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 246 |   pub fn add_clue(&mut self, pos: Position, value: u8) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |   pub fn add_clues(&mut self, clues: HashMap<Position, u8>) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |   pub fn build(self) -> Puzzle {
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Puzzle` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:265:12
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub struct Puzzle {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `standard` is never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:272:10
[INFO] [stdout]     |
[INFO] [stdout] 271 | impl Puzzle {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 272 |   pub fn standard(clues: HashMap<Position, u8>) -> Puzzle {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Solution` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:283:12
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub struct Solution {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]  --> src/constraints/solve.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn solve(puzzle: Puzzle) -> Solution {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `CellPosition` is never used
[INFO] [stdout]   --> src/constraints/typedefs.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum CellPosition {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `offset`, `for_coord`, and `for_position` are never used
[INFO] [stdout]   --> src/constraints/typedefs.rs:25:6
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl CellPosition {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 25 |   fn offset(&self) -> u8 {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |   fn for_coord(coord: u8) -> CellPosition {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |   fn for_position(pos: &Position) -> (CellPosition, CellPosition) {
[INFO] [stdout]    |      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `col`, `cell`, and `diag` are never used
[INFO] [stdout]   --> src/constraints/typedefs.rs:67:10
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl Group {
[INFO] [stdout]    | ---------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 67 |   pub fn col(col: u8) -> Group {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |   pub fn cell(row_pos: CellPosition, col_pos: CellPosition) -> Group {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |   pub fn diag(top: bool) -> Group {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Constraint` is never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:127:11
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub trait Constraint {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `GroupConstraint` is never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait GroupConstraint {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RowConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | struct RowConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ColumnConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:155:8
[INFO] [stdout]     |
[INFO] [stdout] 155 | struct ColumnConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CellConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:162:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | struct CellConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DiagonalConstraint` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:170:8
[INFO] [stdout]     |
[INFO] [stdout] 170 | struct DiagonalConstraint {}
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PuzzleBuilder` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:187:8
[INFO] [stdout]     |
[INFO] [stdout] 187 | struct PuzzleBuilder {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:194:10
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl PuzzleBuilder {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 194 |   pub fn new() -> PuzzleBuilder {
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |   pub fn add_group(&mut self, g: Group) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |   pub fn add_row_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |   pub fn add_col_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |   pub fn add_cell_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |   pub fn add_diag_groups(&mut self) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |   pub fn add_constraint(&mut self, c: Box<dyn Constraint>) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 246 |   pub fn add_clue(&mut self, pos: Position, value: u8) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |   pub fn add_clues(&mut self, clues: HashMap<Position, u8>) -> &mut Self {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |   pub fn build(self) -> Puzzle {
[INFO] [stdout]     |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Puzzle` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:265:12
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub struct Puzzle {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `standard` is never used
[INFO] [stdout]    --> src/constraints/typedefs.rs:272:10
[INFO] [stdout]     |
[INFO] [stdout] 271 | impl Puzzle {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 272 |   pub fn standard(clues: HashMap<Position, u8>) -> Puzzle {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Solution` is never constructed
[INFO] [stdout]    --> src/constraints/typedefs.rs:283:12
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub struct Solution {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `solve` is never used
[INFO] [stdout]  --> src/constraints/solve.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn solve(puzzle: Puzzle) -> Solution {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] running `Command { std: "docker" "inspect" "f440cae9ca7cc6f6acbb71636817cbc204fef9ab9044860b53d2b5cf91cc85e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f440cae9ca7cc6f6acbb71636817cbc204fef9ab9044860b53d2b5cf91cc85e7", kill_on_drop: false }`
[INFO] [stdout] f440cae9ca7cc6f6acbb71636817cbc204fef9ab9044860b53d2b5cf91cc85e7
