[INFO] fetching crate simoncli 1.1.1...
[INFO] building simoncli-1.1.1 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate simoncli 1.1.1 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate simoncli 1.1.1
[INFO] finished tweaking crates.io crate simoncli 1.1.1
[INFO] tweaked toml for crates.io crate simoncli 1.1.1 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate simoncli 1.1.1 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 20 packages to latest compatible versions
[INFO] [stderr]       Adding rand v0.6.5 (available: v0.9.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 72c836d9eb0d18ed8c85fd56e2555eac01c160e55c0e4596487c6518ea29d231
[INFO] running `Command { std: "docker" "start" "-a" "72c836d9eb0d18ed8c85fd56e2555eac01c160e55c0e4596487c6518ea29d231", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "72c836d9eb0d18ed8c85fd56e2555eac01c160e55c0e4596487c6518ea29d231", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "72c836d9eb0d18ed8c85fd56e2555eac01c160e55c0e4596487c6518ea29d231", kill_on_drop: false }`
[INFO] [stdout] 72c836d9eb0d18ed8c85fd56e2555eac01c160e55c0e4596487c6518ea29d231
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 37f046f5e92855b9b0b2312198385d8e52b80ddfc6ea6a2f0dca533af15b7283
[INFO] running `Command { std: "docker" "start" "-a" "37f046f5e92855b9b0b2312198385d8e52b80ddfc6ea6a2f0dca533af15b7283", kill_on_drop: false }`
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling simoncli v1.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Write` and `stdout`
[INFO] [stdout]   --> src/board.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 38 |         use std::io::{stdout, Write};
[INFO] [stdout]    |                       ^^^^^^  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/board.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |         for _ in (0 .. self.padding[0]) {
[INFO] [stdout]    |                  ^                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -         for _ in (0 .. self.padding[0]) {
[INFO] [stdout] 81 +         for _ in 0 .. self.padding[0] {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/board.rs:86:22
[INFO] [stdout]    |
[INFO] [stdout] 86 |             for _ in (0 .. self.padding[1]) {
[INFO] [stdout]    |                      ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 86 -             for _ in (0 .. self.padding[1]) {
[INFO] [stdout] 86 +             for _ in 0 .. self.padding[1] {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/board.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 for _ in (0 .. self.inner_padding[1]) {
[INFO] [stdout]    |                          ^                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 96 -                 for _ in (0 .. self.inner_padding[1]) {
[INFO] [stdout] 96 +                 for _ in 0 .. self.inner_padding[1] {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/controls.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/game.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Cell`
[INFO] [stdout]  --> src/game.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sleep_ms`
[INFO] [stdout]  --> src/game.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{cmd, flush, print, sleep_ms};
[INFO] [stdout]   |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/game.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         exit(0);
[INFO] [stdout]     |         ------- any code following this expression is unreachable
[INFO] [stdout] 147 |         Ok(())
[INFO] [stdout]     |         ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]   --> src/board.rs:85:14
[INFO] [stdout]    |
[INFO] [stdout] 85 |         for (row, cells) in self.rows.iter().enumerate() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 85 |         for (_row, cells) in self.rows.iter().enumerate() {
[INFO] [stdout]    |              +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `INITIAL_PATTERN_LENGTH`
[INFO] [stdout]    |
[INFO] [stdout] 85 -         for (row, cells) in self.rows.iter().enumerate() {
[INFO] [stdout] 85 +         for (game::INITIAL_PATTERN_LENGTH, cells) in self.rows.iter().enumerate() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/main.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | type Res<E: Debug> = Result<(), E>;
[INFO] [stdout]    |           --^^^^^
[INFO] [stdout]    |           | |
[INFO] [stdout]    |           | will not be checked at usage sites of the type alias
[INFO] [stdout]    |           help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sleep_ms` is never used
[INFO] [stdout]   --> src/main.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn sleep_ms(ms: u64) {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILLED` is never used
[INFO] [stdout]   --> src/board.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const FILLED: &str = "█";
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/cell.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Cell {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn name(&self) -> &str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_cell_by_key` is never used
[INFO] [stdout]   --> src/controls.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Controls {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn get_cell_by_key(&self, key: &Key) -> Option<Cell> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.05s
[INFO] running `Command { std: "docker" "inspect" "37f046f5e92855b9b0b2312198385d8e52b80ddfc6ea6a2f0dca533af15b7283", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "37f046f5e92855b9b0b2312198385d8e52b80ddfc6ea6a2f0dca533af15b7283", kill_on_drop: false }`
[INFO] [stdout] 37f046f5e92855b9b0b2312198385d8e52b80ddfc6ea6a2f0dca533af15b7283
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d9b5f7bd03da3d23653098c9b409223b693ac88af59cc9e01677e811e41e78ae
[INFO] running `Command { std: "docker" "start" "-a" "d9b5f7bd03da3d23653098c9b409223b693ac88af59cc9e01677e811e41e78ae", kill_on_drop: false }`
[INFO] [stderr]    Compiling simoncli v1.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Write` and `stdout`
[INFO] [stdout]   --> src/board.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 38 |         use std::io::{stdout, Write};
[INFO] [stdout]    |                       ^^^^^^  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/board.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |         for _ in (0 .. self.padding[0]) {
[INFO] [stdout]    |                  ^                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 81 -         for _ in (0 .. self.padding[0]) {
[INFO] [stdout] 81 +         for _ in 0 .. self.padding[0] {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/board.rs:86:22
[INFO] [stdout]    |
[INFO] [stdout] 86 |             for _ in (0 .. self.padding[1]) {
[INFO] [stdout]    |                      ^                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 86 -             for _ in (0 .. self.padding[1]) {
[INFO] [stdout] 86 +             for _ in 0 .. self.padding[1] {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]   --> src/board.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 for _ in (0 .. self.inner_padding[1]) {
[INFO] [stdout]    |                          ^                          ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 96 -                 for _ in (0 .. self.inner_padding[1]) {
[INFO] [stdout] 96 +                 for _ in 0 .. self.inner_padding[1] {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/controls.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/game.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::Cell`
[INFO] [stdout]  --> src/game.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::Cell;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sleep_ms`
[INFO] [stdout]  --> src/game.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{cmd, flush, print, sleep_ms};
[INFO] [stdout]   |                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/game.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         exit(0);
[INFO] [stdout]     |         ------- any code following this expression is unreachable
[INFO] [stdout] 147 |         Ok(())
[INFO] [stdout]     |         ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]   --> src/board.rs:85:14
[INFO] [stdout]    |
[INFO] [stdout] 85 |         for (row, cells) in self.rows.iter().enumerate() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]    |
[INFO] [stdout] 85 |         for (_row, cells) in self.rows.iter().enumerate() {
[INFO] [stdout]    |              +
[INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `INITIAL_PATTERN_LENGTH`
[INFO] [stdout]    |
[INFO] [stdout] 85 -         for (row, cells) in self.rows.iter().enumerate() {
[INFO] [stdout] 85 +         for (game::INITIAL_PATTERN_LENGTH, cells) in self.rows.iter().enumerate() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sleep_ms` is never used
[INFO] [stdout]   --> src/main.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn sleep_ms(ms: u64) {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILLED` is never used
[INFO] [stdout]   --> src/board.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const FILLED: &str = "█";
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/cell.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Cell {
[INFO] [stdout]    | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn name(&self) -> &str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_cell_by_key` is never used
[INFO] [stdout]   --> src/controls.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Controls {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn get_cell_by_key(&self, key: &Key) -> Option<Cell> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/main.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 | type Res<E: Debug> = Result<(), E>;
[INFO] [stdout]    |           --^^^^^
[INFO] [stdout]    |           | |
[INFO] [stdout]    |           | will not be checked at usage sites of the type alias
[INFO] [stdout]    |           help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s
[INFO] running `Command { std: "docker" "inspect" "d9b5f7bd03da3d23653098c9b409223b693ac88af59cc9e01677e811e41e78ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d9b5f7bd03da3d23653098c9b409223b693ac88af59cc9e01677e811e41e78ae", kill_on_drop: false }`
[INFO] [stdout] d9b5f7bd03da3d23653098c9b409223b693ac88af59cc9e01677e811e41e78ae
