[INFO] cloning repository https://github.com/pnor/terminal-dungeon
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/pnor/terminal-dungeon" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpnor%2Fterminal-dungeon", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpnor%2Fterminal-dungeon'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3ad5c4a854b9069c4bc8be4b4abe65bd6461ab5b
[INFO] checking pnor/terminal-dungeon 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%2Fpnor%2Fterminal-dungeon" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/pnor/terminal-dungeon
[INFO] finished tweaking git repo https://github.com/pnor/terminal-dungeon
[INFO] tweaked toml for git repo https://github.com/pnor/terminal-dungeon written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/pnor/terminal-dungeon 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/pnor/terminal-dungeon 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-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] 6de3cd67a2591016eee43f04a36f72ed306d9e7a44486935546d33eaf8ae1c76
[INFO] running `Command { std: "docker" "start" "-a" "6de3cd67a2591016eee43f04a36f72ed306d9e7a44486935546d33eaf8ae1c76", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6de3cd67a2591016eee43f04a36f72ed306d9e7a44486935546d33eaf8ae1c76", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6de3cd67a2591016eee43f04a36f72ed306d9e7a44486935546d33eaf8ae1c76", kill_on_drop: false }`
[INFO] [stdout] 6de3cd67a2591016eee43f04a36f72ed306d9e7a44486935546d33eaf8ae1c76
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] c095b72bb10c848d2c2356effea85f0a41c7ed817aced0924669573e725128f1
[INFO] running `Command { std: "docker" "start" "-a" "c095b72bb10c848d2c2356effea85f0a41c7ed817aced0924669573e725128f1", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.81
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling version_check v0.9.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.1
[INFO] [stderr]    Compiling memoffset v0.6.1
[INFO] [stderr]    Compiling const_fn v0.4.5
[INFO] [stderr]    Compiling rayon-core v1.9.0
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling syn v1.0.57
[INFO] [stderr]     Checking smallvec v1.5.1
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling rayon v1.5.0
[INFO] [stderr]    Compiling typenum v1.12.0
[INFO] [stderr]    Compiling quote v1.0.8
[INFO] [stderr]    Compiling serde v1.0.124
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling hashbrown v0.7.2
[INFO] [stderr]     Checking lock_api v0.4.2
[INFO] [stderr]     Checking ahash v0.3.8
[INFO] [stderr]    Compiling paste v1.0.4
[INFO] [stderr]     Checking matrixmultiply v0.2.4
[INFO] [stderr]     Checking atom v0.3.6
[INFO] [stderr]     Checking mopa v0.2.2
[INFO] [stderr]     Checking tuple_utils v0.3.0
[INFO] [stderr]     Checking cassowary v0.3.0
[INFO] [stderr]     Checking shrev v1.1.1
[INFO] [stderr]    Compiling nom v5.1.2
[INFO] [stderr]    Compiling generic-array v0.14.4
[INFO] [stderr]     Checking unicode-segmentation v1.7.1
[INFO] [stderr]    Compiling ntest_proc_macro_helper v0.7.3
[INFO] [stderr]     Checking crossbeam-epoch v0.9.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.0
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking mio v0.7.7
[INFO] [stderr]     Checking signal-hook-registry v1.3.0
[INFO] [stderr]     Checking parking_lot_core v0.8.2
[INFO] [stderr]     Checking crossbeam-deque v0.8.0
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking parking_lot v0.11.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking signal-hook v0.1.17
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking approx v0.4.0
[INFO] [stderr]     Checking num-complex v0.3.1
[INFO] [stderr]     Checking float-cmp v0.8.0
[INFO] [stderr]     Checking crossterm v0.18.2
[INFO] [stderr]     Checking simba v0.3.1
[INFO] [stderr]     Checking rand_distr v0.3.0
[INFO] [stderr]     Checking tui v0.14.0
[INFO] [stderr]     Checking tynm v0.1.6
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]    Compiling specs-derive v0.4.1
[INFO] [stderr]    Compiling ntest_test_cases v0.7.3
[INFO] [stderr]     Checking shred v0.10.2
[INFO] [stderr]     Checking hibitset v0.6.3
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]     Checking nalgebra v0.24.0
[INFO] [stderr]     Checking specs v0.16.1
[INFO] [stderr]    Compiling ntest_timeout v0.7.3
[INFO] [stderr]     Checking ntest v0.7.3
[INFO] [stderr]     Checking splines v4.0.0
[INFO] [stderr]     Checking terminal-dungeon v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `test_room` is never used
[INFO] [stdout]   --> src/world/map.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn test_room() -> Map {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Shade` is never constructed
[INFO] [stdout]   --> src/entities/component.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct Shade {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnimationProgress` is never constructed
[INFO] [stdout]   --> src/entities/component.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct AnimationProgress {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PositionAnimation` is never constructed
[INFO] [stdout]   --> src/entities/component.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct PositionAnimation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `with_splines` are never used
[INFO] [stdout]   --> src/entities/component.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | impl PositionAnimation {
[INFO] [stdout]    | ---------------------- associated functions in this implementation
[INFO] [stdout] 79 |     /// Create `PositionAnimation` that uses `interpolation` for entirety of both the x spline and the y spline
[INFO] [stdout] 80 |     fn new(start: Vector2<i32>, end: Vector2<i32>, interpolation: Interpolation<f32, i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     fn with_splines(x_spline: Spline<f32, i32>, y_spline: Spline<f32, i32>) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppearanceAnimation` is never constructed
[INFO] [stdout]    --> src/entities/component.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct AppearanceAnimation {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `color_to_rgb` is never used
[INFO] [stdout]  --> src/utility/color_util.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub fn color_to_rgb(color: Color) -> Color {
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/utility/text_canvas.rs:30:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl TextCanvas {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub fn for_map(map: &Map) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn set_character(&mut self, vec2: Vector2<usize>, character: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn add_modifier(&mut self, vec2: Vector2<usize>, modifier: Modifier) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn clear_modifiers(&mut self, vec2: Vector2<usize>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn set_fg_color(&mut self, vec2: Vector2<usize>, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn set_bg_color(&mut self, vec2: Vector2<usize>, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn apply_fg_color(&mut self, vec2: Vector2<usize>, color: Color, alpha: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn apply_bg_color(&mut self, vec2: Vector2<usize>, color: Color, alpha: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn apply_color(base_color: Color, color: Color, alpha: f64) -> Color {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Result` is never used
[INFO] [stdout]  --> src/utility/icon_spline.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | type Result<T> = std::result::Result<T, IconSplineConstructorError>;
[INFO] [stdout]   |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IconSpline` is never constructed
[INFO] [stdout]   --> src/utility/icon_spline.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct IconSpline {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `sample`, and `clamped_sample` are never used
[INFO] [stdout]   --> src/utility/icon_spline.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl IconSpline {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |     fn new(mut icon_ranges: Vec<(f32, char)>) -> Result<Self> {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     fn sample(&self, point: f32) -> Option<char> {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn clamped_sample(&self, point: f32) -> Option<char> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_ranges` is never used
[INFO] [stdout]   --> src/utility/icon_spline.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn validate_ranges(icon_ranges: &Vec<(f32, f32)>) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_spline` is never used
[INFO] [stdout]   --> src/utility/icon_spline.rs:62:4
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn create_spline(icon_ranges: Vec<(f32, f32)>) -> Spline<f32, f32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `IconSplineConstructorError` is never constructed
[INFO] [stdout]   --> src/utility/icon_spline.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct IconSplineConstructorError(Vec<(f32, f32)>);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FakeSource` is never constructed
[INFO] [stdout]   --> src/game/source.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct FakeSource {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/game/source.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl FakeSource {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 48 |
[INFO] [stdout] 49 |     pub fn new(mut events: Vec<Event>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/game/input_manager.rs:118:20
[INFO] [stdout]     |
[INFO] [stdout] 118 |     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `InputManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 118 -     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout] 118 +     CrosstermError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/game/input_manager.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |     RecvTimoutERror(mpsc::RecvTimeoutError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `InputManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 119 -     RecvTimoutERror(mpsc::RecvTimeoutError),
[INFO] [stdout] 119 +     RecvTimoutERror(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `draw_location`, and `add_screen_manager_callback` are never used
[INFO] [stdout]   --> src/views/popup.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub trait Popup {
[INFO] [stdout]    |           ----- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 11 |     fn new() -> Self where Self:Sized;
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     fn draw_location(&self) -> Rect;
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn add_screen_manager_callback(&mut self, callback: BoxedCallback);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `debug_new`, `pop_screen`, `push_popup`, and `pop_popup` are never used
[INFO] [stdout]    --> src/views/screen_manager.rs:42:12
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl ScreenManager {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  42 |     pub fn debug_new(events: Vec<Event>) -> Result<ScreenManager> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn pop_screen(&mut self) -> Option<Box<dyn Screen>> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn push_popup(&mut self, popup: impl Popup + 'static) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 139 |     pub fn pop_popup(&mut self) -> Option<Box<dyn Popup>> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/views/screen_manager.rs:218:13
[INFO] [stdout]     |
[INFO] [stdout] 218 |     IoError(io::Error),
[INFO] [stdout]     |     ------- ^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScreenManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 218 -     IoError(io::Error),
[INFO] [stdout] 218 +     IoError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/views/screen_manager.rs:219:20
[INFO] [stdout]     |
[INFO] [stdout] 219 |     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScreenManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 219 -     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout] 219 +     CrosstermError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/views/screen_manager.rs:220:23
[INFO] [stdout]     |
[INFO] [stdout] 220 |     InputManagerError(InputManagerError)
[INFO] [stdout]     |     ----------------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScreenManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 220 -     InputManagerError(InputManagerError)
[INFO] [stdout] 220 +     InputManagerError(())
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utility/text_canvas.rs:36:27
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn as_styled_text(&self) -> Text {
[INFO] [stdout]    |                           ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn as_styled_text(&self) -> Text<'_> {
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utility/text_canvas.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn span(&self) -> Span {
[INFO] [stdout]     |             ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |             |
[INFO] [stdout]     |             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn span(&self) -> Span<'_> {
[INFO] [stdout]     |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<usize, Infallible>
[INFO] [stdout]   --> src/utility/conversions.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 |     match num.try_into() {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `terminal-dungeon` (bin "terminal-dungeon") due to 1 previous error; 25 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: function `test_room` is never used
[INFO] [stdout]   --> src/world/map.rs:73:8
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub fn test_room() -> Map {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Shade` is never constructed
[INFO] [stdout]   --> src/entities/component.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct Shade {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AnimationProgress` is never constructed
[INFO] [stdout]   --> src/entities/component.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct AnimationProgress {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PositionAnimation` is never constructed
[INFO] [stdout]   --> src/entities/component.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct PositionAnimation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `with_splines` are never used
[INFO] [stdout]   --> src/entities/component.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 78 | impl PositionAnimation {
[INFO] [stdout]    | ---------------------- associated functions in this implementation
[INFO] [stdout] 79 |     /// Create `PositionAnimation` that uses `interpolation` for entirety of both the x spline and the y spline
[INFO] [stdout] 80 |     fn new(start: Vector2<i32>, end: Vector2<i32>, interpolation: Interpolation<f32, i32>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     fn with_splines(x_spline: Spline<f32, i32>, y_spline: Spline<f32, i32>) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppearanceAnimation` is never constructed
[INFO] [stdout]    --> src/entities/component.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub struct AppearanceAnimation {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/utility/text_canvas.rs:30:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl TextCanvas {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub fn for_map(map: &Map) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn set_character(&mut self, vec2: Vector2<usize>, character: char) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     pub fn add_modifier(&mut self, vec2: Vector2<usize>, modifier: Modifier) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn clear_modifiers(&mut self, vec2: Vector2<usize>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub fn set_fg_color(&mut self, vec2: Vector2<usize>, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn set_bg_color(&mut self, vec2: Vector2<usize>, color: Color) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn apply_fg_color(&mut self, vec2: Vector2<usize>, color: Color, alpha: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn apply_bg_color(&mut self, vec2: Vector2<usize>, color: Color, alpha: f64) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     fn apply_color(base_color: Color, color: Color, alpha: f64) -> Color {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clamped_sample` is never used
[INFO] [stdout]   --> src/utility/icon_spline.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl IconSpline {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     fn clamped_sample(&self, point: f32) -> Option<char> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_applying_clamped_splines` is never used
[INFO] [stdout]    --> src/utility/icon_spline.rs:180:8
[INFO] [stdout]     |
[INFO] [stdout] 180 |     fn test_applying_clamped_splines() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `clear_inputs` is never used
[INFO] [stdout]   --> src/utility/test_util.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub fn clear_inputs(timeout: Duration) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/game/input_manager.rs:118:20
[INFO] [stdout]     |
[INFO] [stdout] 118 |     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `InputManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 118 -     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout] 118 +     CrosstermError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/game/input_manager.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |     RecvTimoutERror(mpsc::RecvTimeoutError),
[INFO] [stdout]     |     --------------- ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `InputManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 119 -     RecvTimoutERror(mpsc::RecvTimeoutError),
[INFO] [stdout] 119 +     RecvTimoutERror(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `draw_location` is never used
[INFO] [stdout]   --> src/views/popup.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub trait Popup {
[INFO] [stdout]    |           ----- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 17 |     fn draw_location(&self) -> Rect;
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/views/screen_manager.rs:218:13
[INFO] [stdout]     |
[INFO] [stdout] 218 |     IoError(io::Error),
[INFO] [stdout]     |     ------- ^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScreenManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 218 -     IoError(io::Error),
[INFO] [stdout] 218 +     IoError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/views/screen_manager.rs:219:20
[INFO] [stdout]     |
[INFO] [stdout] 219 |     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout]     |     -------------- ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScreenManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 219 -     CrosstermError(crossterm::ErrorKind),
[INFO] [stdout] 219 +     CrosstermError(()),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/views/screen_manager.rs:220:23
[INFO] [stdout]     |
[INFO] [stdout] 220 |     InputManagerError(InputManagerError)
[INFO] [stdout]     |     ----------------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ScreenManagerError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]     |
[INFO] [stdout] 220 -     InputManagerError(InputManagerError)
[INFO] [stdout] 220 +     InputManagerError(())
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/utility/text_canvas.rs:36:27
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn as_styled_text(&self) -> Text {
[INFO] [stdout]    |                           ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn as_styled_text(&self) -> Text<'_> {
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/utility/text_canvas.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn span(&self) -> Span {
[INFO] [stdout]     |             ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |             |
[INFO] [stdout]     |             the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn span(&self) -> Span<'_> {
[INFO] [stdout]     |                           ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: std::result::Result<usize, Infallible>
[INFO] [stdout]   --> src/utility/conversions.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 |     match num.try_into() {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `terminal-dungeon` (bin "terminal-dungeon" test) due to 1 previous error; 18 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "c095b72bb10c848d2c2356effea85f0a41c7ed817aced0924669573e725128f1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c095b72bb10c848d2c2356effea85f0a41c7ed817aced0924669573e725128f1", kill_on_drop: false }`
[INFO] [stdout] c095b72bb10c848d2c2356effea85f0a41c7ed817aced0924669573e725128f1
