[INFO] fetching crate sudoku 0.7.0...
[INFO] testing sudoku-0.7.0 against beta-2020-10-09 for beta-1.48-1
[INFO] extracting crate sudoku 0.7.0 into /workspace/builds/worker-14/source
[INFO] validating manifest of crates.io crate sudoku 0.7.0 on toolchain beta-2020-10-09
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate sudoku 0.7.0
[INFO] finished tweaking crates.io crate sudoku 0.7.0
[INFO] tweaked toml for crates.io crate sudoku 0.7.0 written to /workspace/builds/worker-14/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] d68f4f871b9425ed42d4fd07983fd8a3b472c9dc88f4f2476313fa901442e384
[INFO] running `Command { std: "docker" "start" "-a" "d68f4f871b9425ed42d4fd07983fd8a3b472c9dc88f4f2476313fa901442e384", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d68f4f871b9425ed42d4fd07983fd8a3b472c9dc88f4f2476313fa901442e384", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d68f4f871b9425ed42d4fd07983fd8a3b472c9dc88f4f2476313fa901442e384", kill_on_drop: false }`
[INFO] [stdout] d68f4f871b9425ed42d4fd07983fd8a3b472c9dc88f4f2476313fa901442e384
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 80ba246f93ebb757151ab4f866c60fc7c1503f82ba9e79321eb2864c87251f29
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "80ba246f93ebb757151ab4f866c60fc7c1503f82ba9e79321eb2864c87251f29", kill_on_drop: false }`
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling sudoku v0.7.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/generator.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 1...4 => self.insert_entries_singly(stack)?,
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/strategy/solver.rs:324:6
[INFO] [stdout]     |
[INFO] [stdout] 324 |                 1...4 => self.insert_entries_singly(find_naked_singles)?,
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/strategy/strategies/locked_candidates.rs:51:78
[INFO] [stdout]    |
[INFO] [stdout] 51 |                     .map(|chute_line| poss_digits(chute_line, chute_field) );;
[INFO] [stdout]    |                                                                              ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |                 b'0'...b'9' => *cell = ch - b'0',
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:302:35
[INFO] [stdout]     |
[INFO] [stdout] 302 |                 b'_' | b'.' | b'0'...b'9' => return Err(LineParseError::TooManyCells),
[INFO] [stdout]     |                                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:403:28
[INFO] [stdout]     |
[INFO] [stdout] 403 |                         '1'...'9' | '_' | '.' | '0' => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:433:24
[INFO] [stdout]     |
[INFO] [stdout] 433 |                     '0'...'9' => grid[cell as usize] = ch as u8 - b'0',
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/solver.rs:172:17
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let mut mask = mask;
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/solver.rs:231:17
[INFO] [stdout]     |
[INFO] [stdout] 231 |             let mut singles = (cells1 ^ cells2) & self.unsolved_cells[band];
[INFO] [stdout]     |                 ----^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 6.24s
[INFO] running `Command { std: "docker" "inspect" "80ba246f93ebb757151ab4f866c60fc7c1503f82ba9e79321eb2864c87251f29", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "80ba246f93ebb757151ab4f866c60fc7c1503f82ba9e79321eb2864c87251f29", kill_on_drop: false }`
[INFO] [stdout] 80ba246f93ebb757151ab4f866c60fc7c1503f82ba9e79321eb2864c87251f29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a10b9a8203211620abc04b3d7e908c644a56f5a79898f420a9d2016ac88a241a
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a10b9a8203211620abc04b3d7e908c644a56f5a79898f420a9d2016ac88a241a", kill_on_drop: false }`
[INFO] [stderr]    Compiling sudoku v0.7.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/generator.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 1...4 => self.insert_entries_singly(stack)?,
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/strategy/solver.rs:324:6
[INFO] [stdout]     |
[INFO] [stdout] 324 |                 1...4 => self.insert_entries_singly(find_naked_singles)?,
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/strategy/strategies/locked_candidates.rs:51:78
[INFO] [stdout]    |
[INFO] [stdout] 51 |                     .map(|chute_line| poss_digits(chute_line, chute_field) );;
[INFO] [stdout]    |                                                                              ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |                 b'0'...b'9' => *cell = ch - b'0',
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:302:35
[INFO] [stdout]     |
[INFO] [stdout] 302 |                 b'_' | b'.' | b'0'...b'9' => return Err(LineParseError::TooManyCells),
[INFO] [stdout]     |                                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:403:28
[INFO] [stdout]     |
[INFO] [stdout] 403 |                         '1'...'9' | '_' | '.' | '0' => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:433:24
[INFO] [stdout]     |
[INFO] [stdout] 433 |                     '0'...'9' => grid[cell as usize] = ch as u8 - b'0',
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/solver.rs:172:17
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let mut mask = mask;
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/solver.rs:231:17
[INFO] [stdout]     |
[INFO] [stdout] 231 |             let mut singles = (cells1 ^ cells2) & self.unsolved_cells[band];
[INFO] [stdout]     |                 ----^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/generator.rs:49:18
[INFO] [stdout]    |
[INFO] [stdout] 49 |                 1...4 => self.insert_entries_singly(stack)?,
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/strategy/solver.rs:324:6
[INFO] [stdout]     |
[INFO] [stdout] 324 |                 1...4 => self.insert_entries_singly(find_naked_singles)?,
[INFO] [stdout]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> src/strategy/strategies/locked_candidates.rs:51:78
[INFO] [stdout]    |
[INFO] [stdout] 51 |                     .map(|chute_line| poss_digits(chute_line, chute_field) );;
[INFO] [stdout]    |                                                                              ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:279:21
[INFO] [stdout]     |
[INFO] [stdout] 279 |                 b'0'...b'9' => *cell = ch - b'0',
[INFO] [stdout]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:302:35
[INFO] [stdout]     |
[INFO] [stdout] 302 |                 b'_' | b'.' | b'0'...b'9' => return Err(LineParseError::TooManyCells),
[INFO] [stdout]     |                                   ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:403:28
[INFO] [stdout]     |
[INFO] [stdout] 403 |                         '1'...'9' | '_' | '.' | '0' => {
[INFO] [stdout]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/board/sudoku.rs:433:24
[INFO] [stdout]     |
[INFO] [stdout] 433 |                     '0'...'9' => grid[cell as usize] = ch as u8 - b'0',
[INFO] [stdout]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/solver.rs:172:17
[INFO] [stdout]     |
[INFO] [stdout] 172 |             let mut mask = mask;
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/solver.rs:231:17
[INFO] [stdout]     |
[INFO] [stdout] 231 |             let mut singles = (cells1 ^ cells2) & self.unsolved_cells[band];
[INFO] [stdout]     |                 ----^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 4.63s
[INFO] running `Command { std: "docker" "inspect" "a10b9a8203211620abc04b3d7e908c644a56f5a79898f420a9d2016ac88a241a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a10b9a8203211620abc04b3d7e908c644a56f5a79898f420a9d2016ac88a241a", kill_on_drop: false }`
[INFO] [stdout] a10b9a8203211620abc04b3d7e908c644a56f5a79898f420a9d2016ac88a241a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] cf1043c457067adeb86c3bc125c398c7cb4b15b0dd0415a3f855d4507f9fc5e5
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "cf1043c457067adeb86c3bc125c398c7cb4b15b0dd0415a3f855d4507f9fc5e5", kill_on_drop: false }`
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/generator.rs:49:18
[INFO] [stderr]    |
[INFO] [stderr] 49 |                 1...4 => self.insert_entries_singly(stack)?,
[INFO] [stderr]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/strategy/solver.rs:324:6
[INFO] [stderr]     |
[INFO] [stderr] 324 |                 1...4 => self.insert_entries_singly(find_naked_singles)?,
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> src/strategy/strategies/locked_candidates.rs:51:78
[INFO] [stderr]    |
[INFO] [stderr] 51 |                     .map(|chute_line| poss_digits(chute_line, chute_field) );;
[INFO] [stderr]    |                                                                              ^ help: remove this semicolon
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:279:21
[INFO] [stderr]     |
[INFO] [stderr] 279 |                 b'0'...b'9' => *cell = ch - b'0',
[INFO] [stderr]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:302:35
[INFO] [stderr]     |
[INFO] [stderr] 302 |                 b'_' | b'.' | b'0'...b'9' => return Err(LineParseError::TooManyCells),
[INFO] [stderr]     |                                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:403:28
[INFO] [stderr]     |
[INFO] [stderr] 403 |                         '1'...'9' | '_' | '.' | '0' => {
[INFO] [stderr]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:433:24
[INFO] [stderr]     |
[INFO] [stderr] 433 |                     '0'...'9' => grid[cell as usize] = ch as u8 - b'0',
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/solver.rs:172:17
[INFO] [stderr]     |
[INFO] [stderr] 172 |             let mut mask = mask;
[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: variable does not need to be mutable
[INFO] [stderr]    --> src/solver.rs:231:17
[INFO] [stderr]     |
[INFO] [stderr] 231 |             let mut singles = (cells1 ^ cells2) & self.unsolved_cells[band];
[INFO] [stderr]     |                 ----^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: 9 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/generator.rs:49:18
[INFO] [stderr]    |
[INFO] [stderr] 49 |                 1...4 => self.insert_entries_singly(stack)?,
[INFO] [stderr]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/strategy/solver.rs:324:6
[INFO] [stderr]     |
[INFO] [stderr] 324 |                 1...4 => self.insert_entries_singly(find_naked_singles)?,
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> src/strategy/strategies/locked_candidates.rs:51:78
[INFO] [stderr]    |
[INFO] [stderr] 51 |                     .map(|chute_line| poss_digits(chute_line, chute_field) );;
[INFO] [stderr]    |                                                                              ^ help: remove this semicolon
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:279:21
[INFO] [stderr]     |
[INFO] [stderr] 279 |                 b'0'...b'9' => *cell = ch - b'0',
[INFO] [stderr]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:302:35
[INFO] [stderr]     |
[INFO] [stderr] 302 |                 b'_' | b'.' | b'0'...b'9' => return Err(LineParseError::TooManyCells),
[INFO] [stderr]     |                                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:403:28
[INFO] [stderr]     |
[INFO] [stderr] 403 |                         '1'...'9' | '_' | '.' | '0' => {
[INFO] [stderr]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/board/sudoku.rs:433:24
[INFO] [stderr]     |
[INFO] [stderr] 433 |                     '0'...'9' => grid[cell as usize] = ch as u8 - b'0',
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/solver.rs:172:17
[INFO] [stderr]     |
[INFO] [stderr] 172 |             let mut mask = mask;
[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: variable does not need to be mutable
[INFO] [stderr]    --> src/solver.rs:231:17
[INFO] [stderr]     |
[INFO] [stderr] 231 |             let mut singles = (cells1 ^ cells2) & self.unsolved_cells[band];
[INFO] [stderr]     |                 ----^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: 9 warnings emitted
[INFO] [stderr] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/sudoku-08c673939551aa33
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test board::positions::test::row_cells ... ok
[INFO] [stdout] test board::positions::test::band_cells ... ok
[INFO] [stdout] test board::positions::test::stack_cells ... ok
[INFO] [stdout] test board::positions::test::unique ... ok
[INFO] [stdout] test board::positions::test::col_cells ... ok
[INFO] [stdout] test strategy::solver::test::strategy_solver_correct_solution_medium_sudokus ... ok
[INFO] [stdout] test strategy::solver::test::strategy_solver_correct_solution_easy_sudokus ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/lib-c1a87cb1947d34e5
[INFO] [stdout] 
[INFO] [stdout] running 16 tests
[INFO] [stdout] test solutionless_sudokus ... ok
[INFO] [stdout] test readme ... ok
[INFO] [stdout] test is_solved_on_unsolved ... ok
[INFO] [stdout] test correct_solution_easy_sudokus ... ok
[INFO] [stdout] test correct_solution_medium_sudokus ... ok
[INFO] [stdout] test is_solved_on_solved ... ok
[INFO] [stdout] test solve_1 ... ok
[INFO] [stdout] test parse_permissive ... ok
[INFO] [stdout] test solve_2 ... ok
[INFO] [stdout] test wrong_format_1 ... ok
[INFO] [stdout] test solve_unique_multiple_solutions ... ok
[INFO] [stdout] test shuffle_unsolved ... ok
[INFO] [stdout] test shuffle_solved ... ok
[INFO] [stdout] test correct_solution_hard_sudokus ... ok
[INFO] [stdout] test generate_unique_sudoku_uniqueness ... ok
[INFO] [stderr]    Doc-tests sudoku
[INFO] [stdout] test generate_filled_sudoku_correctness ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> /opt/rustwide/workdir/src/generator.rs:49:18
[INFO] [stderr]    |
[INFO] [stderr] 49 |                 1...4 => self.insert_entries_singly(stack)?,
[INFO] [stderr]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/workdir/src/strategy/solver.rs:324:6
[INFO] [stderr]     |
[INFO] [stderr] 324 |                 1...4 => self.insert_entries_singly(find_naked_singles)?,
[INFO] [stderr]     |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]   --> /opt/rustwide/workdir/src/strategy/strategies/locked_candidates.rs:51:78
[INFO] [stderr]    |
[INFO] [stderr] 51 |                     .map(|chute_line| poss_digits(chute_line, chute_field) );;
[INFO] [stderr]    |                                                                              ^ help: remove this semicolon
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/workdir/src/board/sudoku.rs:279:21
[INFO] [stderr]     |
[INFO] [stderr] 279 |                 b'0'...b'9' => *cell = ch - b'0',
[INFO] [stderr]     |                     ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/workdir/src/board/sudoku.rs:302:35
[INFO] [stderr]     |
[INFO] [stderr] 302 |                 b'_' | b'.' | b'0'...b'9' => return Err(LineParseError::TooManyCells),
[INFO] [stderr]     |                                   ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/workdir/src/board/sudoku.rs:403:28
[INFO] [stderr]     |
[INFO] [stderr] 403 |                         '1'...'9' | '_' | '.' | '0' => {
[INFO] [stderr]     |                            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> /opt/rustwide/workdir/src/board/sudoku.rs:433:24
[INFO] [stderr]     |
[INFO] [stderr] 433 |                     '0'...'9' => grid[cell as usize] = ch as u8 - b'0',
[INFO] [stderr]     |                        ^^^ help: use `..=` for an inclusive range
[INFO] [stderr] 
[INFO] [stderr] warning: 7 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test src/board/sudoku.rs - board::sudoku::Sudoku::to_str_line (line 744) ... ok
[INFO] [stdout] test src/lib.rs - (line 27) ... ok
[INFO] [stdout] test src/board/sudoku.rs - board::sudoku::Sudoku::display_block (line 774) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "cf1043c457067adeb86c3bc125c398c7cb4b15b0dd0415a3f855d4507f9fc5e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf1043c457067adeb86c3bc125c398c7cb4b15b0dd0415a3f855d4507f9fc5e5", kill_on_drop: false }`
[INFO] [stdout] cf1043c457067adeb86c3bc125c398c7cb4b15b0dd0415a3f855d4507f9fc5e5
