[INFO] cloning repository https://github.com/alessandrome/RogueRust
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/alessandrome/RogueRust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falessandrome%2FRogueRust", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falessandrome%2FRogueRust'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 48e029c77e1168062a58e41a2039cc5af50ecc4d
[INFO] checking alessandrome/RogueRust against try#8e819ff5434466e9a823e03871a1775ac7d84ddf for pr-156027
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falessandrome%2FRogueRust" "/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/alessandrome/RogueRust
[INFO] finished tweaking git repo https://github.com/alessandrome/RogueRust
[INFO] tweaked toml for git repo https://github.com/alessandrome/RogueRust written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/alessandrome/RogueRust on toolchain 8e819ff5434466e9a823e03871a1775ac7d84ddf
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/alessandrome/RogueRust 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" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking alessandrome/RogueRust against try#8e819ff5434466e9a823e03871a1775ac7d84ddf for pr-156027
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falessandrome%2FRogueRust" "/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/alessandrome/RogueRust
[INFO] finished tweaking git repo https://github.com/alessandrome/RogueRust
[INFO] tweaked toml for git repo https://github.com/alessandrome/RogueRust written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/alessandrome/RogueRust on toolchain 8e819ff5434466e9a823e03871a1775ac7d84ddf
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/alessandrome/RogueRust 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" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 72b809f33c2c436b39e73001474f328e2b22d7679f8efce4cc683afbd21eee49
[INFO] running `Command { std: "docker" "start" "-a" "72b809f33c2c436b39e73001474f328e2b22d7679f8efce4cc683afbd21eee49", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "72b809f33c2c436b39e73001474f328e2b22d7679f8efce4cc683afbd21eee49", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "72b809f33c2c436b39e73001474f328e2b22d7679f8efce4cc683afbd21eee49", kill_on_drop: false }`
[INFO] [stdout] 72b809f33c2c436b39e73001474f328e2b22d7679f8efce4cc683afbd21eee49
[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" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7837d3483ad083b2e587b4ee0ed7f55d64f469a965cedda314c58b02017b4184
[INFO] running `Command { std: "docker" "start" "-a" "7837d3483ad083b2e587b4ee0ed7f55d64f469a965cedda314c58b02017b4184", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]     Checking log v0.4.25
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling serde v1.0.218
[INFO] [stderr]     Checking bitflags v2.8.0
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]    Compiling quote v1.0.39
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]    Compiling syn v2.0.99
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]    Compiling serde_derive v1.0.218
[INFO] [stderr]     Checking RogueRust v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]  --> src/core/world/map/environment.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use serde_json::Value;
[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 import: `CharacterEntity`
[INFO] [stdout]  --> src/core/world/objs/character.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use traits::{CharacterEntity};
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde_json::Value`
[INFO] [stdout]  --> src/core/world/map/environment.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use serde_json::Value;
[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 import: `CharacterEntity`
[INFO] [stdout]  --> src/core/world/objs/character.rs:4:14
[INFO] [stdout]   |
[INFO] [stdout] 4 | use traits::{CharacterEntity};
[INFO] [stdout]   |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GameObject`
[INFO] [stdout]  --> src/core/world/objs/character.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{ObjAttributes, GameObject, Build};
[INFO] [stdout]   |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GameObject`
[INFO] [stdout]  --> src/core/world/objs/character.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{ObjAttributes, GameObject, Build};
[INFO] [stdout]   |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/core/world/event.rs:28:16
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn new(id: u64, event: Box<dyn EventHandler>) -> Event {
[INFO] [stdout]    |                ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/core/world/event.rs:28:16
[INFO] [stdout]    |
[INFO] [stdout] 28 |     pub fn new(id: u64, event: Box<dyn EventHandler>) -> Event {
[INFO] [stdout]    |                ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `direction`
[INFO] [stdout]   --> src/core/world.rs:46:35
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 GameCommand::Move(direction) => {}
[INFO] [stdout]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/core/world.rs:47:37
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 GameCommand::MoveTo(x, y) => {}
[INFO] [stdout]    |                                     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/core/world.rs:47:40
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 GameCommand::MoveTo(x, y) => {}
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interactable`
[INFO] [stdout]   --> src/core/world.rs:48:39
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 GameCommand::Interact(interactable) => {}
[INFO] [stdout]    |                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interactable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `direction`
[INFO] [stdout]   --> src/core/world.rs:46:35
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 GameCommand::Move(direction) => {}
[INFO] [stdout]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/core/world.rs:47:37
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 GameCommand::MoveTo(x, y) => {}
[INFO] [stdout]    |                                     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/core/world.rs:47:40
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 GameCommand::MoveTo(x, y) => {}
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interactable`
[INFO] [stdout]   --> src/core/world.rs:48:39
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 GameCommand::Interact(interactable) => {}
[INFO] [stdout]    |                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interactable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game_world`
[INFO] [stdout]  --> src/main.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let game_world = core::World::new();
[INFO] [stdout]   |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `game_world`
[INFO] [stdout]  --> src/main.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     let game_world = core::World::new();
[INFO] [stdout]   |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pg`, `npc_list`, `world_map`, `world_time`, and `buffered_command` are never read
[INFO] [stdout]   --> src/core/world.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct World<'a> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 15 |     pg: Character,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     npc_list: Vec<Box<dyn CharacterEntity>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 17 |     world_map: WorldGrid,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 18 |     world_time: WorldTime,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 19 |     buffered_command: Option<GameCommand<'a>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cycle` and `command` are never used
[INFO] [stdout]   --> src/core/world.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'a> World<'a> {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn cycle(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn command(&mut self, command: GameCommand<'a>) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_TIME_MINUTE_STEP` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const WORLD_TIME_MINUTE_STEP: u8 = 5;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_TIME_HOUR_STEP` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const WORLD_TIME_HOUR_STEP: u8 = 1;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_MINUTES_IN_A_HOUR` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const WORLD_MINUTES_IN_A_HOUR: u8 = 60;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_HOURS_IN_A_DAY` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const WORLD_HOURS_IN_A_DAY: u8 = 24;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `time`, `day_count`, `weather`, and `day_cycle` are never read
[INFO] [stdout]   --> src/core/world/world_time.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct WorldTime {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout]  9 |     time: (u8, u8),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 10 |     day_count: u32,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 11 |     weather: Weather,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 12 |     day_cycle: DayCycle,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/core/world/world_time.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl WorldTime {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_time(&mut self, hour: u8, minute: u8) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn hour_step(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn minute_step(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn advance_time(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn get_time(&self) -> (u8, u8) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn get_hour_time(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get_minute_time(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn day_cycle_step(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn set_day_cycle(&mut self, day_cycle: DayCycle) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn get_day_cycle(&self) -> DayCycle {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn set_weather(&mut self, weather: Weather) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn get_weather(&self) -> Weather {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn get_day_count(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pg`, `npc_list`, `world_map`, `world_time`, and `buffered_command` are never read
[INFO] [stdout]   --> src/core/world.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct World<'a> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 15 |     pg: Character,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     npc_list: Vec<Box<dyn CharacterEntity>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 17 |     world_map: WorldGrid,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 18 |     world_time: WorldTime,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 19 |     buffered_command: Option<GameCommand<'a>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `cycle` and `command` are never used
[INFO] [stdout]   --> src/core/world.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'a> World<'a> {
[INFO] [stdout]    | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn cycle(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn command(&mut self, command: GameCommand<'a>) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_TIME_MINUTE_STEP` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | const WORLD_TIME_MINUTE_STEP: u8 = 5;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_TIME_HOUR_STEP` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:4:7
[INFO] [stdout]   |
[INFO] [stdout] 4 | const WORLD_TIME_HOUR_STEP: u8 = 1;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_MINUTES_IN_A_HOUR` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const WORLD_MINUTES_IN_A_HOUR: u8 = 60;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WORLD_HOURS_IN_A_DAY` is never used
[INFO] [stdout]  --> src/core/world/world_time.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | const WORLD_HOURS_IN_A_DAY: u8 = 24;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `time`, `day_count`, `weather`, and `day_cycle` are never read
[INFO] [stdout]   --> src/core/world/world_time.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct WorldTime {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout]  9 |     time: (u8, u8),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 10 |     day_count: u32,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 11 |     weather: Weather,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 12 |     day_cycle: DayCycle,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/core/world/world_time.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl WorldTime {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn set_time(&mut self, hour: u8, minute: u8) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn hour_step(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn minute_step(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn advance_time(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn get_time(&self) -> (u8, u8) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn get_hour_time(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get_minute_time(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn day_cycle_step(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn set_day_cycle(&mut self, day_cycle: DayCycle) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn get_day_cycle(&self) -> DayCycle {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn set_weather(&mut self, weather: Weather) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn get_weather(&self) -> Weather {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn get_day_count(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Cloudy`, `PartiallyCloudy`, and `Rainy` are never constructed
[INFO] [stdout]  --> src/core/world/weather.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum Weather {
[INFO] [stdout]   |          ------- variants in this enum
[INFO] [stdout] 3 |     Clear,
[INFO] [stdout] 4 |     Cloudy,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 5 |     PartiallyCloudy,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     Rainy,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Weather` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Cloudy`, `PartiallyCloudy`, and `Rainy` are never constructed
[INFO] [stdout]  --> src/core/world/weather.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum Weather {
[INFO] [stdout]   |          ------- variants in this enum
[INFO] [stdout] 3 |     Clear,
[INFO] [stdout] 4 |     Cloudy,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 5 |     PartiallyCloudy,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 6 |     Rainy,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Weather` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Sunrise`, `Sunset`, and `Night` are never constructed
[INFO] [stdout]   --> src/core/world/weather.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum DayCycle {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 11 |     Sunrise,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 12 |     Day,
[INFO] [stdout] 13 |     Sunset,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 14 |     Night,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DayCycle` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Sunrise`, `Sunset`, and `Night` are never constructed
[INFO] [stdout]   --> src/core/world/weather.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum DayCycle {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 11 |     Sunrise,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 12 |     Day,
[INFO] [stdout] 13 |     Sunset,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 14 |     Night,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DayCycle` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ChunkSize` is never used
[INFO] [stdout]  --> src/core/world/map/world_grid.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub type ChunkSize = (ChunkWidth, ChunkHeight);
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ChunkSize` is never used
[INFO] [stdout]  --> src/core/world/map/world_grid.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub type ChunkSize = (ChunkWidth, ChunkHeight);
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `MapSize` is never used
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type MapSize = (MapWidth, MapHeight);
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `MapSize` is never used
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type MapSize = (MapWidth, MapHeight);
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width`, `height`, and `tiles` are never read
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Chunk {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     width: ChunkWidth,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 22 |     height: ChunkHeight,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 23 |     tiles: Vec<Tile>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width`, `height`, and `tiles` are never read
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Chunk {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     width: ChunkWidth,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 22 |     height: ChunkHeight,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 23 |     tiles: Vec<Tile>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `width`, `height`, `tile`, and `tile_mut` are never used
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Chunk {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 27 |     pub fn new(width: ChunkWidth, height: ChunkHeight) -> Chunk {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn width(&self) -> ChunkWidth {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn height(&self) -> ChunkHeight {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn tile(&self, x: usize, y: usize) -> &Tile {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn tile_mut(&mut self, x: usize, y: usize) -> &mut Tile {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `width`, `height`, `tile`, and `tile_mut` are never used
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Chunk {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 27 |     pub fn new(width: ChunkWidth, height: ChunkHeight) -> Chunk {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn width(&self) -> ChunkWidth {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn height(&self) -> ChunkHeight {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn tile(&self, x: usize, y: usize) -> &Tile {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn tile_mut(&mut self, x: usize, y: usize) -> &mut Tile {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `grid` is never read
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct WorldGrid {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 53 |     grid: HashMap<ChunkCoords, Chunk>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `chunk` and `chunk_mut` are never used
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl WorldGrid {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn chunk(&self, x: MapWidth, y: MapHeight) -> &Chunk {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn chunk_mut(&mut self, x: MapWidth, y: MapHeight) -> &mut Chunk {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `grid` is never read
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct WorldGrid {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 53 |     grid: HashMap<ChunkCoords, Chunk>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_empty`, `name`, and `symbol` are never used
[INFO] [stdout]   --> src/core/world/map/tile.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Tile {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new_empty() -> Tile {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn name(&self) -> &String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn symbol(&self) -> char {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TileType` is never used
[INFO] [stdout]  --> src/core/world/map/tile/types.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum TileType {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Structure` is never used
[INFO] [stdout]  --> src/core/world/map/tile/structures.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum Structure {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileEffect` is never constructed
[INFO] [stdout]  --> src/core/world/map/tile/effect.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct TileEffect {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `chunk` and `chunk_mut` are never used
[INFO] [stdout]   --> src/core/world/map/world_grid.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl WorldGrid {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn chunk(&self, x: MapWidth, y: MapHeight) -> &Chunk {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn chunk_mut(&mut self, x: MapWidth, y: MapHeight) -> &mut Chunk {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `tile_pool` are never read
[INFO] [stdout]  --> src/core/world/map/biome.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Biome {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 5 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 6 |     tile_pool: Vec<Tile>,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Biome` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `probability` is never used
[INFO] [stdout]   --> src/core/world/map/environment.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl EnvTileAttributes {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn probability(&self) -> u16 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]   --> src/core/world/map/environment.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | impl Environment {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn name(&self) -> &String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIOMES_JSON_NAME` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const BIOMES_JSON_NAME: &str = "biomes.json";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONF_DIR` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const CONF_DIR: &str = "./conf";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_empty`, `id`, `name`, and `symbol` are never used
[INFO] [stdout]   --> src/core/world/map/tile.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Tile {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new_empty() -> Tile {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn id(&self) -> &String {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn name(&self) -> &String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn symbol(&self) -> char {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OBJS_DIR` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const OBJS_DIR: &str = "./conf/objs";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `biomes` is never read
[INFO] [stdout]   --> src/core/world/map/loader.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct MapItemPrototypesLoader {
[INFO] [stdout]    |            ----------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 43 |     biomes: Vec<Biome>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MapItemPrototypesLoader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TileType` is never used
[INFO] [stdout]  --> src/core/world/map/tile/types.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum TileType {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_path`, `get_tiles`, and `get_envs` are never used
[INFO] [stdout]    --> src/core/world/map/loader.rs:59:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl MapItemPrototypesLoader {
[INFO] [stdout]     | ---------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn add_path<P: Into<PathBuf>>(&mut self, path: P) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_tiles(&self) -> &Vec<Tile> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn get_envs(&self) -> &Vec<Environment> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `GameObject` is never used
[INFO] [stdout]   --> src/core/world/objs.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait GameObject {
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Structure` is never used
[INFO] [stdout]  --> src/core/world/map/tile/structures.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum Structure {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Obj` is never constructed
[INFO] [stdout]   --> src/core/world/objs.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Obj {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileEffect` is never constructed
[INFO] [stdout]  --> src/core/world/map/tile/effect.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct TileEffect {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `name`, and `health` are never read
[INFO] [stdout]   --> src/core/world/objs/character.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Character {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 15 |     id: u64,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 17 |     health: i32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Character` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Enemy` is never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Enemy {}
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Playable` is never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | trait Playable {}
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Biome` is never constructed
[INFO] [stdout]  --> src/core/world/map/biome.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Biome {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Character` is never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | trait Character {}
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_position`, `get_health`, `get_name`, `move_to`, and `attributes` are never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait CharacterEntity {
[INFO] [stdout]   |           --------------- methods in this trait
[INFO] [stdout] 5 |     fn get_position(&self) -> (i32, i32);
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 6 |     fn get_health(&self) -> i32;
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 7 |     fn get_name(&self) -> String;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 8 |     fn move_to(&mut self, x: i32, y: i32);
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 9 |     fn attributes(&self);// -> &CommonAttributes;
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EnvRoomAttributes` is never constructed
[INFO] [stdout]  --> src/core/world/map/environment.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct EnvRoomAttributes {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Attributes` is never constructed
[INFO] [stdout]  --> src/core/world/objs/character/common_attributes.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct Attributes {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommonAttributes` is never constructed
[INFO] [stdout]   --> src/core/world/objs/character/common_attributes.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct CommonAttributes {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EnvTileAttributes` is never constructed
[INFO] [stdout]   --> src/core/world/map/environment.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct EnvTileAttributes {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `InteractionType` is never used
[INFO] [stdout]  --> src/core/world/objs/interaction.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum InteractionType<'a> {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `InteractionResult` is never used
[INFO] [stdout]  --> src/core/world/objs/interaction.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum InteractionResult<'a> {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `id` and `probability` are never used
[INFO] [stdout]   --> src/core/world/map/environment.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl EnvTileAttributes {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] 20 |     pub fn id(&self) -> &String {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn probability(&self) -> u16 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `name`, `description`, `interaction`, and `interact` are never used
[INFO] [stdout]   --> src/core/world/objs/interaction.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait Interactable: Debug {
[INFO] [stdout]    |           ------------ methods in this trait
[INFO] [stdout] 15 |     fn name(&self) -> String;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 16 |     fn description(&self) -> String;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 17 |     fn interaction(&self) -> Vec<InteractionType>;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 18 |     fn interact(&self, world: &mut World) -> InteractionType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Place` is never constructed
[INFO] [stdout]  --> src/core/world/objs/place.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Place {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `MapObjectEntity` is never used
[INFO] [stdout]  --> src/core/world/objs/place/traits.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait MapObjectEntity {}
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EnvType` is never used
[INFO] [stdout]   --> src/core/world/map/environment.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum EnvType {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EVENT_ID_COUNTER` is never used
[INFO] [stdout]  --> src/core/world/event.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | static EVENT_ID_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EventStatus` is never used
[INFO] [stdout]  --> src/core/world/event.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum EventStatus {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `EventHandler` is never used
[INFO] [stdout]   --> src/core/world/event.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait EventHandler {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Environment` is never constructed
[INFO] [stdout]   --> src/core/world/map/environment.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Environment {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Event` is never constructed
[INFO] [stdout]   --> src/core/world/event.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Event {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `event`, and `event_mut` are never used
[INFO] [stdout]   --> src/core/world/event.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Event {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 28 |     pub fn new(id: u64, event: Box<dyn EventHandler>) -> Event {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn event(&self) -> &dyn EventHandler {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn event_mut(&mut self) -> &mut dyn EventHandler {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `id`, `name`, and `attributes` are never used
[INFO] [stdout]   --> src/core/world/map/environment.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | impl Environment {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] 49 |     pub fn id(&self) -> &String {
[INFO] [stdout]    |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn name(&self) -> &String {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn attributes(&self) -> &EnvType {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILES_JSON_NAME` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const TILES_JSON_NAME: &str = "tiles.json";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Up`, `Down`, `Left`, and `Right` are never constructed
[INFO] [stdout]  --> src/core/command.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum MoveDirection {
[INFO] [stdout]   |          ------------- variants in this enum
[INFO] [stdout] 5 |     Up,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 6 |     Down,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 7 |     Left,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 8 |     Right,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MoveDirection` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ENVS_JSON_NAME` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const ENVS_JSON_NAME: &str = "environments.json";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIOMES_JSON_NAME` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const BIOMES_JSON_NAME: &str = "biomes.json";
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CONF_DIR` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const CONF_DIR: &str = "./conf";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OBJS_DIR` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const OBJS_DIR: &str = "./conf/objs";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CORE_OBJS_DIR` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const CORE_OBJS_DIR: &str = "./conf/objs/core";
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_conf_core_path` is never used
[INFO] [stdout]   --> src/core/world/map/loader.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn get_conf_core_path() -> PathBuf {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MapItemPrototypesLoader` is never constructed
[INFO] [stdout]   --> src/core/world/map/loader.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct MapItemPrototypesLoader {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Move`, `MoveTo`, `Interact`, and `Pause` are never constructed
[INFO] [stdout]   --> src/core/command.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum GameCommand<'a> {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 13 |     Move(MoveDirection),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     MoveTo(i32, i32),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 15 |     Interact(&'a dyn Interactable),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 16 |     Pause,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_path`, `load`, `get_tiles`, and `get_envs` are never used
[INFO] [stdout]    --> src/core/world/map/loader.rs:47:12
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl MapItemPrototypesLoader {
[INFO] [stdout]     | ---------------------------- associated items in this implementation
[INFO] [stdout]  47 |     pub fn new() -> MapItemPrototypesLoader {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn add_path<P: Into<PathBuf>>(&mut self, path: P) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn load(&mut self) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn get_tiles(&self) -> &Vec<Tile> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn get_envs(&self) -> &Vec<Environment> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `GameObject` is never used
[INFO] [stdout]   --> src/core/world/objs.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait GameObject {
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Obj` is never constructed
[INFO] [stdout]   --> src/core/world/objs.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct Obj {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `name`, and `health` are never read
[INFO] [stdout]   --> src/core/world/objs/character.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Character {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 15 |     id: u64,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 16 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 17 |     health: i32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Character` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Enemy` is never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:1:7
[INFO] [stdout]   |
[INFO] [stdout] 1 | trait Enemy {}
[INFO] [stdout]   |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Playable` is never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:2:7
[INFO] [stdout]   |
[INFO] [stdout] 2 | trait Playable {}
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Character` is never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:3:7
[INFO] [stdout]   |
[INFO] [stdout] 3 | trait Character {}
[INFO] [stdout]   |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_position`, `get_health`, `get_name`, `move_to`, and `attributes` are never used
[INFO] [stdout]  --> src/core/world/objs/character/traits.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub trait CharacterEntity {
[INFO] [stdout]   |           --------------- methods in this trait
[INFO] [stdout] 5 |     fn get_position(&self) -> (i32, i32);
[INFO] [stdout]   |        ^^^^^^^^^^^^
[INFO] [stdout] 6 |     fn get_health(&self) -> i32;
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 7 |     fn get_name(&self) -> String;
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 8 |     fn move_to(&mut self, x: i32, y: i32);
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 9 |     fn attributes(&self);// -> &CommonAttributes;
[INFO] [stdout]   |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/core/world/objs/interaction.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn interaction(&self) -> Vec<InteractionType>;
[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] 17 |     fn interaction(&self) -> Vec<InteractionType<'_>>;
[INFO] [stdout]    |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Attributes` is never constructed
[INFO] [stdout]  --> src/core/world/objs/character/common_attributes.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct Attributes {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/core/world/objs/interaction.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn interact(&self, world: &mut World) -> InteractionType;
[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] 18 |     fn interact(&self, world: &mut World) -> InteractionType<'_>;
[INFO] [stdout]    |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommonAttributes` is never constructed
[INFO] [stdout]   --> src/core/world/objs/character/common_attributes.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct CommonAttributes {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `InteractionType` is never used
[INFO] [stdout]  --> src/core/world/objs/interaction.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum InteractionType<'a> {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `InteractionResult` is never used
[INFO] [stdout]  --> src/core/world/objs/interaction.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum InteractionResult<'a> {
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `name`, `description`, `interaction`, and `interact` are never used
[INFO] [stdout]   --> src/core/world/objs/interaction.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait Interactable: Debug {
[INFO] [stdout]    |           ------------ methods in this trait
[INFO] [stdout] 15 |     fn name(&self) -> String;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 16 |     fn description(&self) -> String;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 17 |     fn interaction(&self) -> Vec<InteractionType>;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 18 |     fn interact(&self, world: &mut World) -> InteractionType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Place` is never constructed
[INFO] [stdout]  --> src/core/world/objs/place.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Place {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `MapObjectEntity` is never used
[INFO] [stdout]  --> src/core/world/objs/place/traits.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait MapObjectEntity {}
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `EVENT_ID_COUNTER` is never used
[INFO] [stdout]  --> src/core/world/event.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | static EVENT_ID_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EventStatus` is never used
[INFO] [stdout]  --> src/core/world/event.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub enum EventStatus {
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `EventHandler` is never used
[INFO] [stdout]   --> src/core/world/event.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait EventHandler {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Event` is never constructed
[INFO] [stdout]   --> src/core/world/event.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct Event {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `event`, and `event_mut` are never used
[INFO] [stdout]   --> src/core/world/event.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Event {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 28 |     pub fn new(id: u64, event: Box<dyn EventHandler>) -> Event {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn event(&self) -> &dyn EventHandler {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn event_mut(&mut self) -> &mut dyn EventHandler {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Up`, `Down`, `Left`, and `Right` are never constructed
[INFO] [stdout]  --> src/core/command.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum MoveDirection {
[INFO] [stdout]   |          ------------- variants in this enum
[INFO] [stdout] 5 |     Up,
[INFO] [stdout]   |     ^^
[INFO] [stdout] 6 |     Down,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 7 |     Left,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 8 |     Right,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MoveDirection` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Move`, `MoveTo`, `Interact`, and `Pause` are never constructed
[INFO] [stdout]   --> src/core/command.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum GameCommand<'a> {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 13 |     Move(MoveDirection),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 14 |     MoveTo(i32, i32),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 15 |     Interact(&'a dyn Interactable),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 16 |     Pause,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/core/world/objs/interaction.rs:17:20
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn interaction(&self) -> Vec<InteractionType>;
[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] 17 |     fn interaction(&self) -> Vec<InteractionType<'_>>;
[INFO] [stdout]    |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/core/world/objs/interaction.rs:18:17
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn interact(&self, world: &mut World) -> InteractionType;
[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] 18 |     fn interact(&self, world: &mut World) -> InteractionType<'_>;
[INFO] [stdout]    |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.15s
[INFO] running `Command { std: "docker" "inspect" "7837d3483ad083b2e587b4ee0ed7f55d64f469a965cedda314c58b02017b4184", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7837d3483ad083b2e587b4ee0ed7f55d64f469a965cedda314c58b02017b4184", kill_on_drop: false }`
[INFO] [stdout] 7837d3483ad083b2e587b4ee0ed7f55d64f469a965cedda314c58b02017b4184
