[INFO] cloning repository https://github.com/phillipsOG/ProjectAether [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/phillipsOG/ProjectAether" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FphillipsOG%2FProjectAether", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FphillipsOG%2FProjectAether'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b1eea429bc5caec93055433a75bfc7fcebbd0fa0 [INFO] checking phillipsOG/ProjectAether against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FphillipsOG%2FProjectAether" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/phillipsOG/ProjectAether on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/phillipsOG/ProjectAether [INFO] finished tweaking git repo https://github.com/phillipsOG/ProjectAether [INFO] tweaked toml for git repo https://github.com/phillipsOG/ProjectAether written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/phillipsOG/ProjectAether 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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded signal-hook v0.3.17 [INFO] [stderr] Downloaded log v0.4.19 [INFO] [stderr] Downloaded windows-targets v0.48.1 [INFO] [stderr] Downloaded ordered-float v3.9.1 [INFO] [stderr] Downloaded value-bag v1.4.1 [INFO] [stderr] Downloaded async-channel v1.9.0 [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.37 [INFO] [stderr] Downloaded async-global-executor v2.3.1 [INFO] [stderr] Downloaded lock_api v0.4.10 [INFO] [stderr] Downloaded crossterm v0.27.0 [INFO] [stderr] Downloaded errno v0.3.2 [INFO] [stderr] Downloaded async-lock v2.8.0 [INFO] [stderr] Downloaded bitflags v2.3.3 [INFO] [stderr] Downloaded smallvec v1.11.0 [INFO] [stderr] Downloaded parking_lot_core v0.9.8 [INFO] [stderr] Downloaded crossterm_winapi v0.9.1 [INFO] [stderr] Downloaded object v0.32.0 [INFO] [stderr] Downloaded rustix v0.37.23 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 84e8aad67990e28a349cc0c5e7def3f74165ef2bb86d0245cbdb2ca7972a1c02 [INFO] running `Command { std: "docker" "start" "-a" "84e8aad67990e28a349cc0c5e7def3f74165ef2bb86d0245cbdb2ca7972a1c02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "84e8aad67990e28a349cc0c5e7def3f74165ef2bb86d0245cbdb2ca7972a1c02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "84e8aad67990e28a349cc0c5e7def3f74165ef2bb86d0245cbdb2ca7972a1c02", kill_on_drop: false }` [INFO] [stdout] 84e8aad67990e28a349cc0c5e7def3f74165ef2bb86d0245cbdb2ca7972a1c02 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 513fc9a64e39b93231ff80fc34241ba70324bd6eecfe640f89d2d743765e5489 [INFO] running `Command { std: "docker" "start" "-a" "513fc9a64e39b93231ff80fc34241ba70324bd6eecfe640f89d2d743765e5489", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Compiling futures-core v0.3.28 [INFO] [stderr] Checking value-bag v1.4.1 [INFO] [stderr] Compiling proc-macro2 v1.0.66 [INFO] [stderr] Checking pin-project-lite v0.2.13 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Checking futures-io v0.3.28 [INFO] [stderr] Compiling unicode-ident v1.0.11 [INFO] [stderr] Checking event-listener v2.5.3 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Checking fastrand v1.9.0 [INFO] [stderr] Checking parking v2.1.0 [INFO] [stderr] Checking waker-fn v1.1.0 [INFO] [stderr] Compiling polling v2.8.0 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling rustix v0.37.23 [INFO] [stderr] Compiling futures-channel v0.3.28 [INFO] [stderr] Compiling async-io v1.13.0 [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Checking async-lock v2.8.0 [INFO] [stderr] Checking log v0.4.19 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Checking futures-sink v0.3.28 [INFO] [stderr] Checking linux-raw-sys v0.3.8 [INFO] [stderr] Compiling parking_lot_core v0.9.8 [INFO] [stderr] Checking async-task v4.4.0 [INFO] [stderr] Checking futures-lite v1.13.0 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Checking smallvec v1.11.0 [INFO] [stderr] Checking atomic-waker v1.1.1 [INFO] [stderr] Checking once_cell v1.18.0 [INFO] [stderr] Checking bitflags v2.3.3 [INFO] [stderr] Checking kv-log-macro v1.0.7 [INFO] [stderr] Checking concurrent-queue v2.2.0 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling syn v2.0.29 [INFO] [stderr] Checking socket2 v0.4.9 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking getrandom v0.2.10 [INFO] [stderr] Checking mio v0.8.8 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking async-executor v1.5.1 [INFO] [stderr] Checking blocking v1.3.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking signal-hook-mio v0.2.3 [INFO] [stderr] Checking crossterm v0.27.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking ordered-float v3.9.1 [INFO] [stderr] Checking async-global-executor v2.3.1 [INFO] [stderr] Checking async-std v1.12.0 [INFO] [stderr] Compiling futures-macro v0.3.28 [INFO] [stderr] Compiling tokio-macros v2.1.0 [INFO] [stderr] Checking tokio v1.32.0 [INFO] [stderr] Checking futures-executor v0.3.28 [INFO] [stderr] Checking futures v0.3.28 [INFO] [stderr] Checking ProjectAether v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> src/chat.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{stdout, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/game_client.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ExecutableCommand` [INFO] [stdout] --> src/game_client.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use crossterm::{terminal, ExecutableCommand, QueueableCommand}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DisableBlinking` and `SetCursorStyle` [INFO] [stdout] --> src/game_client.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | use crossterm::cursor::{DisableBlinking, SetCursorStyle}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> src/game_client.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | use std::io::{stdout, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MONSTER_TILE_SET` [INFO] [stdout] --> src/map_data.rs:3:50 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::tile_set::{TileSet, DEFAULT_TILE_SET, MONSTER_TILE_SET}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> src/chat.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io::{stdout, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::rngs::StdRng` [INFO] [stdout] --> src/map_factory.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use rand::rngs::StdRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::SeedableRng` [INFO] [stdout] --> src/map_factory.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use rand::SeedableRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/game_client.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Map` [INFO] [stdout] --> src/map_manager.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{Map, MovementType}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ExecutableCommand` [INFO] [stdout] --> src/game_client.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use crossterm::{terminal, ExecutableCommand, QueueableCommand}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MONSTER_TILE_SET` and `MonsterTileSet` [INFO] [stdout] --> src/monster_generator.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::tile_set::{MONSTER_TILE_SET, MonsterTileSet}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `DisableBlinking` and `SetCursorStyle` [INFO] [stdout] --> src/game_client.rs:10:25 [INFO] [stdout] | [INFO] [stdout] 10 | use crossterm::cursor::{DisableBlinking, SetCursorStyle}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::space::Space` [INFO] [stdout] --> src/pathfinding.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::space::Space; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Write` [INFO] [stdout] --> src/game_client.rs:12:23 [INFO] [stdout] | [INFO] [stdout] 12 | use std::io::{stdout, Write}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::TryFutureExt` [INFO] [stdout] --> src/main.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use futures::TryFutureExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MONSTER_TILE_SET` [INFO] [stdout] --> src/map_data.rs:3:50 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::tile_set::{TileSet, DEFAULT_TILE_SET, MONSTER_TILE_SET}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::rngs::StdRng` [INFO] [stdout] --> src/map_factory.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use rand::rngs::StdRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::SeedableRng` [INFO] [stdout] --> src/map_factory.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use rand::SeedableRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Map` [INFO] [stdout] --> src/map_manager.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{Map, MovementType}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MONSTER_TILE_SET` and `MonsterTileSet` [INFO] [stdout] --> src/monster_generator.rs:2:23 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::tile_set::{MONSTER_TILE_SET, MonsterTileSet}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::space::Space` [INFO] [stdout] --> src/pathfinding.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::space::Space; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `futures::TryFutureExt` [INFO] [stdout] --> src/main.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use futures::TryFutureExt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | let mut terminal_guard = terminal_clone.lock().await; [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/main.rs:266:21 [INFO] [stdout] | [INFO] [stdout] 266 | let mut map = map_manager_guard.get_mut_current_map(); [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/main.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | let mut terminal_guard = terminal_clone.lock().await; [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/main.rs:266:21 [INFO] [stdout] | [INFO] [stdout] 266 | let mut map = map_manager_guard.get_mut_current_map(); [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/pathfinding.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | let mut cost_map_data = Pathfinding::build_cost_map( [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/pathfinding.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let mut new_cost_map = Pathfinding::build_cost_map( [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/pathfinding.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | let mut cost_map_data = Pathfinding::build_cost_map( [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/pathfinding.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let mut new_cost_map = Pathfinding::build_cost_map( [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `neighbours` is never read [INFO] [stdout] --> src/pathfinding.rs:141:21 [INFO] [stdout] | [INFO] [stdout] 141 | let mut neighbours = Vec::::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `neighbours` is never read [INFO] [stdout] --> src/pathfinding.rs:141:21 [INFO] [stdout] | [INFO] [stdout] 141 | let mut neighbours = Vec::::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `neighbours` is never read [INFO] [stdout] --> src/pathfinding.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | let mut neighbours = Vec::::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `neighbours` is never read [INFO] [stdout] --> src/pathfinding.rs:236:21 [INFO] [stdout] | [INFO] [stdout] 236 | let mut neighbours = Vec::::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player_pos` [INFO] [stdout] --> src/game_client.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let player_pos = player.position; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_pos` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `player_pos` [INFO] [stdout] --> src/game_client.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let player_pos = player.position; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_player_pos` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_position` is never read [INFO] [stdout] --> src/collision_engine.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | let mut current_position = Vec2::ZERO; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `current_position` is never read [INFO] [stdout] --> src/collision_engine.rs:49:17 [INFO] [stdout] | [INFO] [stdout] 49 | let mut current_position = Vec2::ZERO; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chat` [INFO] [stdout] --> src/map_factory.rs:104:17 [INFO] [stdout] | [INFO] [stdout] 104 | let mut chat = chat_clone.lock().await; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_chat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chat` [INFO] [stdout] --> src/map_factory.rs:104:17 [INFO] [stdout] | [INFO] [stdout] 104 | let mut chat = chat_clone.lock().await; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_chat` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/map_factory.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut chat = chat_clone.lock().await; [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/map_factory.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut chat = chat_clone.lock().await; [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `seed` [INFO] [stdout] --> src/map_factory.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | let seed = hasher.finish(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_seed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `seed` [INFO] [stdout] --> src/map_factory.rs:43:13 [INFO] [stdout] | [INFO] [stdout] 43 | let seed = hasher.finish(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_seed` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spawn_one` [INFO] [stdout] --> src/monster_manager.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | let mut spawn_one = false; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spawn_one` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `spawn_one` [INFO] [stdout] --> src/monster_manager.rs:41:17 [INFO] [stdout] | [INFO] [stdout] 41 | let mut spawn_one = false; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spawn_one` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `monster_type` is never read [INFO] [stdout] --> src/monster_manager.rs:47:25 [INFO] [stdout] | [INFO] [stdout] 47 | let mut monster_type = MONSTER_TILE_SET.goblin; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `monster_type` is never read [INFO] [stdout] --> src/monster_manager.rs:47:25 [INFO] [stdout] | [INFO] [stdout] 47 | let mut monster_type = MONSTER_TILE_SET.goblin; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/monster_manager.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | let mut spawn_one = false; [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/monster_manager.rs:41:13 [INFO] [stdout] | [INFO] [stdout] 41 | let mut spawn_one = false; [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/main.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut player = Arc::new(Mutex::new(Player::new())); [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/main.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let mut player = Arc::new(Mutex::new(Player::new())); [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/main.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | let mut terminal_guard = terminal_clone.lock().await; [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/main.rs:67:9 [INFO] [stdout] | [INFO] [stdout] 67 | let mut terminal_guard = terminal_clone.lock().await; [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/main.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let mut map_manager = Arc::new(Mutex::new(MapManager::new())); [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/main.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 73 | let mut map_manager = Arc::new(Mutex::new(MapManager::new())); [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/main.rs:155:25 [INFO] [stdout] | [INFO] [stdout] 155 | let mut terminal_guard = terminal_clone.lock().await; [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/main.rs:155:25 [INFO] [stdout] | [INFO] [stdout] 155 | let mut terminal_guard = terminal_clone.lock().await; [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `clear_chat` and `print_processed_input` are never used [INFO] [stdout] --> src/chat.rs:45:19 [INFO] [stdout] | [INFO] [stdout] 13 | impl Chat { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub(crate) fn clear_chat(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn print_processed_input(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MonsterPositionSet` is never constructed [INFO] [stdout] --> src/collision_engine.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | struct MonsterPositionSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/collision_engine.rs:31:19 [INFO] [stdout] | [INFO] [stdout] 30 | impl MonsterPositionSet { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 31 | pub(crate) fn new(current_position: Vec2, new_position: Vec2) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_tile_monster` is never used [INFO] [stdout] --> src/collision_engine.rs:166:8 [INFO] [stdout] | [INFO] [stdout] 39 | impl CollisionEngine { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 166 | fn is_tile_monster(&self, monster: char) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_inventory` is never used [INFO] [stdout] --> src/inventory.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 6 | impl Inventory { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | fn get_inventory(&mut self) -> [String; 1] { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `str_map` is never read [INFO] [stdout] --> src/map_data.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct MapData { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 12 | pub map: Map, [INFO] [stdout] 13 | pub str_map: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MapData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/map_data.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 19 | impl MapData { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 83 | pub(crate) fn set_monster_position(&mut self, new_pos: Vec2, monster_type: char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub(crate) fn set_map_tile_set(&mut self, tile_set: TileSet) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub(crate) fn print_map(&self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn print_map_with_module(&self, module: &[String]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub(crate) fn update_str_map_with_modules(&mut self, module: &[[String; 3]; 2]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub(crate) fn get_current_floor_to_size(&mut self, size: usize) -> [String; 3] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub(crate) fn get_tile_at_position(&self, position: Option<(usize, usize)>) -> char { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `should_transition`, `target_map`, and `target_position` are never read [INFO] [stdout] --> src/map_manager.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct MapManager { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | pub should_transition: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 23 | pub target_map: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 24 | pub target_position: Vec2, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MapManager` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `clear_chat` and `print_processed_input` are never used [INFO] [stdout] --> src/chat.rs:45:19 [INFO] [stdout] | [INFO] [stdout] 13 | impl Chat { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub(crate) fn clear_chat(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn print_processed_input(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_tile_below_monster` and `get_tile_below_monster` are never used [INFO] [stdout] --> src/monster.rs:32:19 [INFO] [stdout] | [INFO] [stdout] 15 | impl Monster { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 32 | pub(crate) fn update_tile_below_monster(&mut self, tile: char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub(crate) fn get_tile_below_monster(self) -> char { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MonsterPositionSet` is never constructed [INFO] [stdout] --> src/collision_engine.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 25 | struct MonsterPositionSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_monsters`, `get_monster`, and `get_monster_mut` are never used [INFO] [stdout] --> src/monster_manager.rs:73:19 [INFO] [stdout] | [INFO] [stdout] 22 | impl MonsterManager { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 73 | pub(crate) fn get_monsters(self) -> Monsters { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub(crate) fn get_monster(&mut self, id: &i32) -> Option<&Monster> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub(crate) fn get_monster_mut(&mut self, id: &i32) -> Option<&mut Monster> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/collision_engine.rs:31:19 [INFO] [stdout] | [INFO] [stdout] 30 | impl MonsterPositionSet { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 31 | pub(crate) fn new(current_position: Vec2, new_position: Vec2) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_tile_monster` is never used [INFO] [stdout] --> src/collision_engine.rs:166:8 [INFO] [stdout] | [INFO] [stdout] 39 | impl CollisionEngine { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 166 | fn is_tile_monster(&self, monster: char) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `previous_key_event`, `key_state`, `multi_tile_below_player`, and `is_alive` are never read [INFO] [stdout] --> src/player.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Player { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 9 | pub key_event: KeyCode, [INFO] [stdout] 10 | pub previous_key_event: KeyCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | pub key_state: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub multi_tile_below_player: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub is_alive: bool [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Player` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_inventory` is never used [INFO] [stdout] --> src/inventory.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 6 | impl Inventory { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | fn get_inventory(&mut self) -> [String; 1] { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `str_map` is never read [INFO] [stdout] --> src/map_data.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct MapData { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 12 | pub map: Map, [INFO] [stdout] 13 | pub str_map: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MapData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_player` is never read [INFO] [stdout] --> src/space.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Space { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | pub is_player: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Space` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `print_status` is never used [INFO] [stdout] --> src/status.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Status { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 21 | fn print_status(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `previous_tile` is never read [INFO] [stdout] --> src/tile_set.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct TileSet { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 11 | pub previous_tile: char, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TileSet` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `new` and `update_with` are never used [INFO] [stdout] --> src/tile_set.rs:16:19 [INFO] [stdout] | [INFO] [stdout] 15 | impl TileSet { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 16 | pub(crate) fn new(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn update_with(&mut self, other: TileSet) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/map_data.rs:83:19 [INFO] [stdout] | [INFO] [stdout] 19 | impl MapData { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 83 | pub(crate) fn set_monster_position(&mut self, new_pos: Vec2, monster_type: char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub(crate) fn set_map_tile_set(&mut self, tile_set: TileSet) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub(crate) fn print_map(&self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | fn print_map_with_module(&self, module: &[String]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | pub(crate) fn update_str_map_with_modules(&mut self, module: &[[String; 3]; 2]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub(crate) fn get_current_floor_to_size(&mut self, size: usize) -> [String; 3] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 149 | pub(crate) fn get_tile_at_position(&self, position: Option<(usize, usize)>) -> char { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `new` and `update_with` are never used [INFO] [stdout] --> src/tile_set.rs:67:19 [INFO] [stdout] | [INFO] [stdout] 66 | impl MonsterTileSet { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 67 | pub(crate) fn new(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn update_with(&mut self, other: MonsterTileSet) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `should_transition`, `target_map`, and `target_position` are never read [INFO] [stdout] --> src/map_manager.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct MapManager { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 22 | pub should_transition: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 23 | pub target_map: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 24 | pub target_position: Vec2, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MapManager` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `update_tile_below_monster` and `get_tile_below_monster` are never used [INFO] [stdout] --> src/monster.rs:32:19 [INFO] [stdout] | [INFO] [stdout] 15 | impl Monster { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 32 | pub(crate) fn update_tile_below_monster(&mut self, tile: char) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 36 | pub(crate) fn get_tile_below_monster(self) -> char { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_monsters`, `get_monster`, and `get_monster_mut` are never used [INFO] [stdout] --> src/monster_manager.rs:73:19 [INFO] [stdout] | [INFO] [stdout] 22 | impl MonsterManager { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 73 | pub(crate) fn get_monsters(self) -> Monsters { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub(crate) fn get_monster(&mut self, id: &i32) -> Option<&Monster> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub(crate) fn get_monster_mut(&mut self, id: &i32) -> Option<&mut Monster> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `previous_key_event`, `key_state`, `multi_tile_below_player`, and `is_alive` are never read [INFO] [stdout] --> src/player.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct Player { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 9 | pub key_event: KeyCode, [INFO] [stdout] 10 | pub previous_key_event: KeyCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | pub key_state: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub multi_tile_below_player: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub is_alive: bool [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Player` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `is_player` is never read [INFO] [stdout] --> src/space.rs:13:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct Space { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 13 | pub is_player: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Space` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `print_status` is never used [INFO] [stdout] --> src/status.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Status { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 21 | fn print_status(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `previous_tile` is never read [INFO] [stdout] --> src/tile_set.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct TileSet { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 11 | pub previous_tile: char, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TileSet` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `new` and `update_with` are never used [INFO] [stdout] --> src/tile_set.rs:16:19 [INFO] [stdout] | [INFO] [stdout] 15 | impl TileSet { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 16 | pub(crate) fn new(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn update_with(&mut self, other: TileSet) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `new` and `update_with` are never used [INFO] [stdout] --> src/tile_set.rs:67:19 [INFO] [stdout] | [INFO] [stdout] 66 | impl MonsterTileSet { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 67 | pub(crate) fn new(&mut self) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn update_with(&mut self, other: MonsterTileSet) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 46 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 46 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.44s [INFO] running `Command { std: "docker" "inspect" "513fc9a64e39b93231ff80fc34241ba70324bd6eecfe640f89d2d743765e5489", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "513fc9a64e39b93231ff80fc34241ba70324bd6eecfe640f89d2d743765e5489", kill_on_drop: false }` [INFO] [stdout] 513fc9a64e39b93231ff80fc34241ba70324bd6eecfe640f89d2d743765e5489