[INFO] cloning repository https://github.com/fdavies93/rusty-rogue
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/fdavies93/rusty-rogue" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffdavies93%2Frusty-rogue", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffdavies93%2Frusty-rogue'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d8699761816f2234cc5cc99c28b365e611d9b9aa
[INFO] checking fdavies93/rusty-rogue against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffdavies93%2Frusty-rogue" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/fdavies93/rusty-rogue
[INFO] finished tweaking git repo https://github.com/fdavies93/rusty-rogue
[INFO] tweaked toml for git repo https://github.com/fdavies93/rusty-rogue written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/fdavies93/rusty-rogue on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/fdavies93/rusty-rogue 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6f96721a8fc83de2f85634dfe246a1212e82382972a4314e349a10b6983dada5
[INFO] running `Command { std: "docker" "start" "-a" "6f96721a8fc83de2f85634dfe246a1212e82382972a4314e349a10b6983dada5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6f96721a8fc83de2f85634dfe246a1212e82382972a4314e349a10b6983dada5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6f96721a8fc83de2f85634dfe246a1212e82382972a4314e349a10b6983dada5", kill_on_drop: false }`
[INFO] [stdout] 6f96721a8fc83de2f85634dfe246a1212e82382972a4314e349a10b6983dada5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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 -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d77c2300837375dc3fe3b0b88fc27de26fc45fe525fc5d596ce77be05efd3ec4
[INFO] running `Command { std: "docker" "start" "-a" "d77c2300837375dc3fe3b0b88fc27de26fc45fe525fc5d596ce77be05efd3ec4", kill_on_drop: false }`
[INFO] [stderr]    Compiling signal-hook v0.3.15
[INFO] [stderr]    Compiling anyhow v1.0.71
[INFO] [stderr]     Checking mio v0.8.8
[INFO] [stderr]     Checking time v0.3.23
[INFO] [stderr]    Compiling syn v2.0.25
[INFO] [stderr]     Checking signal-hook-mio v0.2.3
[INFO] [stderr]    Compiling serde_derive v1.0.171
[INFO] [stderr]     Checking serde v1.0.171
[INFO] [stderr]     Checking crossterm v0.26.1
[INFO] [stderr]     Checking serde_json v1.0.102
[INFO] [stderr]     Checking ratatui v0.21.0
[INFO] [stderr]     Checking rusty-rogue v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/main.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, Error};
[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 imports: `Paragraph` and `canvas::Map`
[INFO] [stdout]  --> src/main.rs:8:52
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ratatui::{backend::CrosstermBackend, widgets::{Paragraph, canvas::Map}, Terminal, layout::Rect};
[INFO] [stdout]   |                                                    ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap`, `self`, and `time::Duration`
[INFO] [stdout]   --> src/main.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 |     io::{self, Stdout},
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 11 |     time::Duration, collections::HashMap, str::FromStr,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Event` and `self`
[INFO] [stdout]   --> src/main.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |     event::{self, Event, KeyCode},
[INFO] [stdout]    |             ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap`, `hash::Hash`, and `ptr`
[INFO] [stdout]  --> src/rterm.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 |     time::Duration, collections::HashMap, hash::Hash, ptr,
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]   --> src/rterm.rs:72:31
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let comps = match (comp_option) {
[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] 72 -             let comps = match (comp_option) {
[INFO] [stdout] 72 +             let comps = match comp_option  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::events::GameEvent`
[INFO] [stdout]  --> src/game.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::events::GameEvent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]  --> src/components/component.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/components/monitor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InputData`
[INFO] [stdout]  --> src/scripts/on_hit.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::events::{GameEvent, Listener, InputData, HitData};
[INFO] [stdout]   |                                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::event::KeyCode`
[INFO] [stdout]  --> src/scripts/on_hit.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crossterm::event::KeyCode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TileMap`, `TileType`, and `WorldPosition`
[INFO] [stdout]  --> src/scripts/on_hit.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::components::{WorldPosition, TileMap, TileType, Health};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::text::Text`
[INFO] [stdout]  --> src/scripts/update_health.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::text::Text;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::stringify`
[INFO] [stdout]  --> src/scripts/update_health.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::stringify;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TickData`
[INFO] [stdout]  --> src/scripts/update_health.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::events::{GameEvent, Listener, TickData};
[INFO] [stdout]   |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ScreenPosition` and `Vector2`
[INFO] [stdout]  --> src/scripts/update_health.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::components::{ScreenPosition, Monitor, TextBox, Vector2, Health};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/main.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use anyhow::{Context, Result, Error};
[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 imports: `Paragraph` and `canvas::Map`
[INFO] [stdout]  --> src/main.rs:8:52
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ratatui::{backend::CrosstermBackend, widgets::{Paragraph, canvas::Map}, Terminal, layout::Rect};
[INFO] [stdout]   |                                                    ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap`, `self`, and `time::Duration`
[INFO] [stdout]   --> src/main.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 |     io::{self, Stdout},
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 11 |     time::Duration, collections::HashMap, str::FromStr,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Event` and `self`
[INFO] [stdout]   --> src/main.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |     event::{self, Event, KeyCode},
[INFO] [stdout]    |             ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `collections::HashMap`, `hash::Hash`, and `ptr`
[INFO] [stdout]  --> src/rterm.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 |     time::Duration, collections::HashMap, hash::Hash, ptr,
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression
[INFO] [stdout]   --> src/rterm.rs:72:31
[INFO] [stdout]    |
[INFO] [stdout] 72 |             let comps = match (comp_option) {
[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] 72 -             let comps = match (comp_option) {
[INFO] [stdout] 72 +             let comps = match comp_option  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::events::GameEvent`
[INFO] [stdout]  --> src/game.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::events::GameEvent;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Deserialize`
[INFO] [stdout]  --> src/components/component.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/components/monitor.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `InputData`
[INFO] [stdout]  --> src/scripts/on_hit.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::events::{GameEvent, Listener, InputData, HitData};
[INFO] [stdout]   |                                          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crossterm::event::KeyCode`
[INFO] [stdout]  --> src/scripts/on_hit.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crossterm::event::KeyCode;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TileMap`, `TileType`, and `WorldPosition`
[INFO] [stdout]  --> src/scripts/on_hit.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::components::{WorldPosition, TileMap, TileType, Health};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::text::Text`
[INFO] [stdout]  --> src/scripts/update_health.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::text::Text;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::stringify`
[INFO] [stdout]  --> src/scripts/update_health.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::stringify;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TickData`
[INFO] [stdout]  --> src/scripts/update_health.rs:5:42
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::events::{GameEvent, Listener, TickData};
[INFO] [stdout]   |                                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ScreenPosition` and `Vector2`
[INFO] [stdout]  --> src/scripts/update_health.rs:6:25
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::components::{ScreenPosition, Monitor, TextBox, Vector2, Health};
[INFO] [stdout]   |                         ^^^^^^^^^^^^^^                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/rterm.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut glyphs = {
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/rterm.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let mut glyph_positions = {
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/rterm.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     let mut text_positions = {
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/rterm.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     let mut glyphs = {
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/rterm.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |     let mut glyph_positions = {
[INFO] [stdout]    |         ----^^^^^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/rterm.rs:117:9
[INFO] [stdout]     |
[INFO] [stdout] 117 |     let mut text_positions = {
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ev`
[INFO] [stdout]  --> src/scripts/update_health.rs:8:46
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn update_health(game: &mut GameManager, ev : &GameEvent, listener : &Listener) -> Vec<GameEvent> {
[INFO] [stdout]   |                                              ^^ help: if this is intentional, prefix it with an underscore: `_ev`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let mut cur_tick: u16 = 0;
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, std::string::String>
[INFO] [stdout]   --> src/main.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |         value: String::from_str("?/?")?
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/main.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |         value: String::from_str("?/?")?
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, std::string::String>
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rusty-rogue` (bin "rusty-rogue") due to 15 previous errors; 21 warnings emitted
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, std::string::String>
[INFO] [stdout]   --> src/main.rs:64:55
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/main.rs:64:55
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ev`
[INFO] [stdout]  --> src/scripts/update_health.rs:8:46
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn update_health(game: &mut GameManager, ev : &GameEvent, listener : &Listener) -> Vec<GameEvent> {
[INFO] [stdout]   |                                              ^^ help: if this is intentional, prefix it with an underscore: `_ev`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/tile_map.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         String::from_str("TileMap").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/positions.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         String::from_str("WorldPosition").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/positions.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         String::from_str("ScreenPosition").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/display.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         String::from_str("Glyph").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/display.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         String::from_str("TextBox").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/health.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         String::from_str("Health").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/main.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 123 |     let mut cur_tick: u16 = 0;
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/monitor.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |         String::from_str("Monitor").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/events.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 |             lf.push(String::from_str(a).unwrap());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/events.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |             object_id: String::from_str(object_id).unwrap(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, std::string::String>
[INFO] [stdout]   --> src/main.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |         value: String::from_str("?/?")?
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/main.rs:60:16
[INFO] [stdout]    |
[INFO] [stdout] 60 |         value: String::from_str("?/?")?
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, std::string::String>
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/main.rs:64:27
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: ControlFlow<Result<Infallible, Infallible>, std::string::String>
[INFO] [stdout]   --> src/main.rs:64:55
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/main.rs:64:55
[INFO] [stdout]    |
[INFO] [stdout] 64 |         to_monitor: vec![(String::from_str("enemy")?, String::from_str("Health")?)]
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/tile_map.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 20 |         String::from_str("TileMap").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/positions.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         String::from_str("WorldPosition").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/positions.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         String::from_str("ScreenPosition").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/display.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         String::from_str("Glyph").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/display.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |         String::from_str("TextBox").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/health.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         String::from_str("Health").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/components/monitor.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |         String::from_str("Monitor").unwrap()
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/events.rs:45:21
[INFO] [stdout]    |
[INFO] [stdout] 45 |             lf.push(String::from_str(a).unwrap());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<std::string::String, Infallible>
[INFO] [stdout]   --> src/events.rs:51:24
[INFO] [stdout]    |
[INFO] [stdout] 51 |             object_id: String::from_str(object_id).unwrap(),
[INFO] [stdout]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rusty-rogue` (bin "rusty-rogue" test) due to 15 previous errors; 21 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "d77c2300837375dc3fe3b0b88fc27de26fc45fe525fc5d596ce77be05efd3ec4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d77c2300837375dc3fe3b0b88fc27de26fc45fe525fc5d596ce77be05efd3ec4", kill_on_drop: false }`
[INFO] [stdout] d77c2300837375dc3fe3b0b88fc27de26fc45fe525fc5d596ce77be05efd3ec4
