[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] testing alessandrome/RogueRust against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falessandrome%2FRogueRust" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/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-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/alessandrome/RogueRust on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde v1.0.218
[INFO] [stderr]   Downloaded serde_derive v1.0.218
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 742b4473a44bb48d34fb9a815fd60198a636168fa99810e35b3eba777651f57a
[INFO] running `Command { std: "docker" "start" "-a" "742b4473a44bb48d34fb9a815fd60198a636168fa99810e35b3eba777651f57a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "742b4473a44bb48d34fb9a815fd60198a636168fa99810e35b3eba777651f57a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "742b4473a44bb48d34fb9a815fd60198a636168fa99810e35b3eba777651f57a", kill_on_drop: false }`
[INFO] [stdout] 742b4473a44bb48d34fb9a815fd60198a636168fa99810e35b3eba777651f57a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] baee68d7a56992ae115c7e1dc2647787406483a500e7c353802a00e257eca72b
[INFO] running `Command { std: "docker" "start" "-a" "baee68d7a56992ae115c7e1dc2647787406483a500e7c353802a00e257eca72b", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling serde v1.0.218
[INFO] [stderr]    Compiling bitflags v2.8.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling mio v1.0.3
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling quote v1.0.39
[INFO] [stderr]    Compiling syn v2.0.99
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling serde_derive v1.0.218
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling 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: `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: `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: 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 `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 `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: 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: 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: 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: 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: 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 `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: 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: 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: 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: 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: 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: 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: 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: 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 14.16s
[INFO] running `Command { std: "docker" "inspect" "baee68d7a56992ae115c7e1dc2647787406483a500e7c353802a00e257eca72b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "baee68d7a56992ae115c7e1dc2647787406483a500e7c353802a00e257eca72b", kill_on_drop: false }`
[INFO] [stdout] baee68d7a56992ae115c7e1dc2647787406483a500e7c353802a00e257eca72b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f2523f2140bf1196821b79ea313b1b3746ca1c89d988df5c8da746cf76fae482
[INFO] running `Command { std: "docker" "start" "-a" "f2523f2140bf1196821b79ea313b1b3746ca1c89d988df5c8da746cf76fae482", kill_on_drop: false }`
[INFO] [stderr]    Compiling 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: `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: `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: 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 `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 `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: 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: 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: 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: 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: 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: 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: 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: 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 `test` profile [unoptimized + debuginfo] target(s) in 0.98s
[INFO] running `Command { std: "docker" "inspect" "f2523f2140bf1196821b79ea313b1b3746ca1c89d988df5c8da746cf76fae482", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f2523f2140bf1196821b79ea313b1b3746ca1c89d988df5c8da746cf76fae482", kill_on_drop: false }`
[INFO] [stdout] f2523f2140bf1196821b79ea313b1b3746ca1c89d988df5c8da746cf76fae482
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b2d4923826b8528fba3dd43494c8e6043e19a8b8ef3606842275603bd3ced2c3
[INFO] running `Command { std: "docker" "start" "-a" "b2d4923826b8528fba3dd43494c8e6043e19a8b8ef3606842275603bd3ced2c3", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `serde_json::Value`
[INFO] [stderr]  --> src/core/world/map/environment.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use serde_json::Value;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `CharacterEntity`
[INFO] [stderr]  --> src/core/world/objs/character.rs:4:14
[INFO] [stderr]   |
[INFO] [stderr] 4 | use traits::{CharacterEntity};
[INFO] [stderr]   |              ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GameObject`
[INFO] [stderr]  --> src/core/world/objs/character.rs:5:28
[INFO] [stderr]   |
[INFO] [stderr] 5 | use super::{ObjAttributes, GameObject, Build};
[INFO] [stderr]   |                            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `id`
[INFO] [stderr]   --> src/core/world/event.rs:28:16
[INFO] [stderr]    |
[INFO] [stderr] 28 |     pub fn new(id: u64, event: Box<dyn EventHandler>) -> Event {
[INFO] [stderr]    |                ^^ help: if this is intentional, prefix it with an underscore: `_id`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `direction`
[INFO] [stderr]   --> src/core/world.rs:46:35
[INFO] [stderr]    |
[INFO] [stderr] 46 |                 GameCommand::Move(direction) => {}
[INFO] [stderr]    |                                   ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_direction`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `x`
[INFO] [stderr]   --> src/core/world.rs:47:37
[INFO] [stderr]    |
[INFO] [stderr] 47 |                 GameCommand::MoveTo(x, y) => {}
[INFO] [stderr]    |                                     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `y`
[INFO] [stderr]   --> src/core/world.rs:47:40
[INFO] [stderr]    |
[INFO] [stderr] 47 |                 GameCommand::MoveTo(x, y) => {}
[INFO] [stderr]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `interactable`
[INFO] [stderr]   --> src/core/world.rs:48:39
[INFO] [stderr]    |
[INFO] [stderr] 48 |                 GameCommand::Interact(interactable) => {}
[INFO] [stderr]    |                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interactable`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `game_world`
[INFO] [stderr]  --> src/main.rs:4:9
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let game_world = core::World::new();
[INFO] [stderr]   |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_game_world`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `pg`, `npc_list`, `world_map`, `world_time`, and `buffered_command` are never read
[INFO] [stderr]   --> src/core/world.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct World<'a> {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr] 15 |     pg: Character,
[INFO] [stderr]    |     ^^
[INFO] [stderr] 16 |     npc_list: Vec<Box<dyn CharacterEntity>>,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 17 |     world_map: WorldGrid,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 18 |     world_time: WorldTime,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 19 |     buffered_command: Option<GameCommand<'a>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: methods `cycle` and `command` are never used
[INFO] [stderr]   --> src/core/world.rs:43:12
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl<'a> World<'a> {
[INFO] [stderr]    | ------------------ methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 43 |     pub fn cycle(&mut self) {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 54 |     pub fn command(&mut self, command: GameCommand<'a>) {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `WORLD_TIME_MINUTE_STEP` is never used
[INFO] [stderr]  --> src/core/world/world_time.rs:3:7
[INFO] [stderr]   |
[INFO] [stderr] 3 | const WORLD_TIME_MINUTE_STEP: u8 = 5;
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `WORLD_TIME_HOUR_STEP` is never used
[INFO] [stderr]  --> src/core/world/world_time.rs:4:7
[INFO] [stderr]   |
[INFO] [stderr] 4 | const WORLD_TIME_HOUR_STEP: u8 = 1;
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `WORLD_MINUTES_IN_A_HOUR` is never used
[INFO] [stderr]  --> src/core/world/world_time.rs:5:7
[INFO] [stderr]   |
[INFO] [stderr] 5 | const WORLD_MINUTES_IN_A_HOUR: u8 = 60;
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `WORLD_HOURS_IN_A_DAY` is never used
[INFO] [stderr]  --> src/core/world/world_time.rs:6:7
[INFO] [stderr]   |
[INFO] [stderr] 6 | const WORLD_HOURS_IN_A_DAY: u8 = 24;
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `time`, `day_count`, `weather`, and `day_cycle` are never read
[INFO] [stderr]   --> src/core/world/world_time.rs:9:5
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct WorldTime {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr]  9 |     time: (u8, u8),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 10 |     day_count: u32,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 11 |     weather: Weather,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 12 |     day_cycle: DayCycle,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]   --> src/core/world/world_time.rs:25:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | impl WorldTime {
[INFO] [stderr]    | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 25 |     pub fn set_time(&mut self, hour: u8, minute: u8) {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 29 |     pub fn hour_step(&mut self) {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 37 |     pub fn minute_step(&mut self) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 45 |     pub fn advance_time(&mut self) {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 49 |     pub fn get_time(&self) -> (u8, u8) {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 |     pub fn get_hour_time(&self) -> u8 {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 57 |     pub fn get_minute_time(&self) -> u8 {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 61 |     pub fn day_cycle_step(&mut self) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 70 |     pub fn set_day_cycle(&mut self, day_cycle: DayCycle) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 |     pub fn get_day_cycle(&self) -> DayCycle {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 78 |     pub fn set_weather(&mut self, weather: Weather) {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 82 |     pub fn get_weather(&self) -> Weather {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 86 |     pub fn get_day_count(&self) -> u32 {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Cloudy`, `PartiallyCloudy`, and `Rainy` are never constructed
[INFO] [stderr]  --> src/core/world/weather.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub enum Weather {
[INFO] [stderr]   |          ------- variants in this enum
[INFO] [stderr] 3 |     Clear,
[INFO] [stderr] 4 |     Cloudy,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr] 5 |     PartiallyCloudy,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 6 |     Rainy,
[INFO] [stderr]   |     ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Weather` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Sunrise`, `Sunset`, and `Night` are never constructed
[INFO] [stderr]   --> src/core/world/weather.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub enum DayCycle {
[INFO] [stderr]    |          -------- variants in this enum
[INFO] [stderr] 11 |     Sunrise,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 12 |     Day,
[INFO] [stderr] 13 |     Sunset,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 14 |     Night,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DayCycle` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `ChunkSize` is never used
[INFO] [stderr]  --> src/core/world/map/world_grid.rs:7:10
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub type ChunkSize = (ChunkWidth, ChunkHeight);
[INFO] [stderr]   |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias `MapSize` is never used
[INFO] [stderr]   --> src/core/world/map/world_grid.rs:12:10
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub type MapSize = (MapWidth, MapHeight);
[INFO] [stderr]    |          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `width`, `height`, and `tiles` are never read
[INFO] [stderr]   --> src/core/world/map/world_grid.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 20 | pub struct Chunk {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr] 21 |     width: ChunkWidth,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 22 |     height: ChunkHeight,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 23 |     tiles: Vec<Tile>,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `width`, `height`, `tile`, and `tile_mut` are never used
[INFO] [stderr]   --> src/core/world/map/world_grid.rs:27:12
[INFO] [stderr]    |
[INFO] [stderr] 26 | impl Chunk {
[INFO] [stderr]    | ---------- associated items in this implementation
[INFO] [stderr] 27 |     pub fn new(width: ChunkWidth, height: ChunkHeight) -> Chunk {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 36 |     pub fn width(&self) -> ChunkWidth {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     pub fn height(&self) -> ChunkHeight {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 43 |     pub fn tile(&self, x: usize, y: usize) -> &Tile {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 47 |     pub fn tile_mut(&mut self, x: usize, y: usize) -> &mut Tile {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `grid` is never read
[INFO] [stderr]   --> src/core/world/map/world_grid.rs:53:5
[INFO] [stderr]    |
[INFO] [stderr] 52 | pub struct WorldGrid {
[INFO] [stderr]    |            --------- field in this struct
[INFO] [stderr] 53 |     grid: HashMap<ChunkCoords, Chunk>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `chunk` and `chunk_mut` are never used
[INFO] [stderr]   --> src/core/world/map/world_grid.rs:63:12
[INFO] [stderr]    |
[INFO] [stderr] 56 | impl WorldGrid {
[INFO] [stderr]    | -------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 63 |     pub fn chunk(&self, x: MapWidth, y: MapHeight) -> &Chunk {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 72 |     pub fn chunk_mut(&mut self, x: MapWidth, y: MapHeight) -> &mut Chunk {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new_empty`, `name`, and `symbol` are never used
[INFO] [stderr]   --> src/core/world/map/tile.rs:16:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | impl Tile {
[INFO] [stderr]    | --------- associated items in this implementation
[INFO] [stderr] 16 |     pub fn new_empty() -> Tile {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 29 |     pub fn name(&self) -> &String {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 33 |     pub fn symbol(&self) -> char {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `TileType` is never used
[INFO] [stderr]  --> src/core/world/map/tile/types.rs:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub enum TileType {
[INFO] [stderr]   |          ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `Structure` is never used
[INFO] [stderr]  --> src/core/world/map/tile/structures.rs:1:10
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub enum Structure {
[INFO] [stderr]   |          ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `TileEffect` is never constructed
[INFO] [stderr]  --> src/core/world/map/tile/effect.rs:1:12
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub struct TileEffect {
[INFO] [stderr]   |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `tile_pool` are never read
[INFO] [stderr]  --> src/core/world/map/biome.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Biome {
[INFO] [stderr]   |            ----- fields in this struct
[INFO] [stderr] 5 |     name: String,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr] 6 |     tile_pool: Vec<Tile>,
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `Biome` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `probability` is never used
[INFO] [stderr]   --> src/core/world/map/environment.rs:24:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl EnvTileAttributes {
[INFO] [stderr]    | ---------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 24 |     pub fn probability(&self) -> u16 {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `name` is never used
[INFO] [stderr]   --> src/core/world/map/environment.rs:53:12
[INFO] [stderr]    |
[INFO] [stderr] 48 | impl Environment {
[INFO] [stderr]    | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 53 |     pub fn name(&self) -> &String {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BIOMES_JSON_NAME` is never used
[INFO] [stderr]   --> src/core/world/map/loader.rs:13:7
[INFO] [stderr]    |
[INFO] [stderr] 13 | const BIOMES_JSON_NAME: &str = "biomes.json";
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `CONF_DIR` is never used
[INFO] [stderr]   --> src/core/world/map/loader.rs:14:7
[INFO] [stderr]    |
[INFO] [stderr] 14 | const CONF_DIR: &str = "./conf";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `OBJS_DIR` is never used
[INFO] [stderr]   --> src/core/world/map/loader.rs:15:7
[INFO] [stderr]    |
[INFO] [stderr] 15 | const OBJS_DIR: &str = "./conf/objs";
[INFO] [stderr]    |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `biomes` is never read
[INFO] [stderr]   --> src/core/world/map/loader.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 37 | pub struct MapItemPrototypesLoader {
[INFO] [stderr]    |            ----------------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 43 |     biomes: Vec<Biome>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MapItemPrototypesLoader` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `add_path`, `get_tiles`, and `get_envs` are never used
[INFO] [stderr]    --> src/core/world/map/loader.rs:59:12
[INFO] [stderr]     |
[INFO] [stderr]  46 | impl MapItemPrototypesLoader {
[INFO] [stderr]     | ---------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  59 |     pub fn add_path<P: Into<PathBuf>>(&mut self, path: P) {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 109 |     pub fn get_tiles(&self) -> &Vec<Tile> {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 112 |     pub fn get_envs(&self) -> &Vec<Environment> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `GameObject` is never used
[INFO] [stderr]   --> src/core/world/objs.rs:11:11
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub trait GameObject {
[INFO] [stderr]    |           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Obj` is never constructed
[INFO] [stderr]   --> src/core/world/objs.rs:23:12
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct Obj {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `id`, `name`, and `health` are never read
[INFO] [stderr]   --> src/core/world/objs/character.rs:15:5
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct Character {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 15 |     id: u64,
[INFO] [stderr]    |     ^^
[INFO] [stderr] 16 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 17 |     health: i32,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Character` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Enemy` is never used
[INFO] [stderr]  --> src/core/world/objs/character/traits.rs:1:7
[INFO] [stderr]   |
[INFO] [stderr] 1 | trait Enemy {}
[INFO] [stderr]   |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Playable` is never used
[INFO] [stderr]  --> src/core/world/objs/character/traits.rs:2:7
[INFO] [stderr]   |
[INFO] [stderr] 2 | trait Playable {}
[INFO] [stderr]   |       ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Character` is never used
[INFO] [stderr]  --> src/core/world/objs/character/traits.rs:3:7
[INFO] [stderr]   |
[INFO] [stderr] 3 | trait Character {}
[INFO] [stderr]   |       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_position`, `get_health`, `get_name`, `move_to`, and `attributes` are never used
[INFO] [stderr]  --> src/core/world/objs/character/traits.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub trait CharacterEntity {
[INFO] [stderr]   |           --------------- methods in this trait
[INFO] [stderr] 5 |     fn get_position(&self) -> (i32, i32);
[INFO] [stderr]   |        ^^^^^^^^^^^^
[INFO] [stderr] 6 |     fn get_health(&self) -> i32;
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 7 |     fn get_name(&self) -> String;
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] 8 |     fn move_to(&mut self, x: i32, y: i32);
[INFO] [stderr]   |        ^^^^^^^
[INFO] [stderr] 9 |     fn attributes(&self);// -> &CommonAttributes;
[INFO] [stderr]   |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Attributes` is never constructed
[INFO] [stderr]  --> src/core/world/objs/character/common_attributes.rs:2:12
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub struct Attributes {
[INFO] [stderr]   |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CommonAttributes` is never constructed
[INFO] [stderr]   --> src/core/world/objs/character/common_attributes.rs:10:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct CommonAttributes {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `InteractionType` is never used
[INFO] [stderr]  --> src/core/world/objs/interaction.rs:4:10
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub enum InteractionType<'a> {
[INFO] [stderr]   |          ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `InteractionResult` is never used
[INFO] [stderr]  --> src/core/world/objs/interaction.rs:9:10
[INFO] [stderr]   |
[INFO] [stderr] 9 | pub enum InteractionResult<'a> {
[INFO] [stderr]   |          ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `name`, `description`, `interaction`, and `interact` are never used
[INFO] [stderr]   --> src/core/world/objs/interaction.rs:15:8
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub trait Interactable: Debug {
[INFO] [stderr]    |           ------------ methods in this trait
[INFO] [stderr] 15 |     fn name(&self) -> String;
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 16 |     fn description(&self) -> String;
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 17 |     fn interaction(&self) -> Vec<InteractionType>;
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr] 18 |     fn interact(&self, world: &mut World) -> InteractionType;
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Place` is never constructed
[INFO] [stderr]  --> src/core/world/objs/place.rs:7:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct Place {
[INFO] [stderr]   |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `MapObjectEntity` is never used
[INFO] [stderr]  --> src/core/world/objs/place/traits.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub trait MapObjectEntity {}
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `EVENT_ID_COUNTER` is never used
[INFO] [stderr]  --> src/core/world/event.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 4 | static EVENT_ID_COUNTER: AtomicU64 = AtomicU64::new(0);
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `EventStatus` is never used
[INFO] [stderr]  --> src/core/world/event.rs:7:10
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub enum EventStatus {
[INFO] [stderr]   |          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `EventHandler` is never used
[INFO] [stderr]   --> src/core/world/event.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub trait EventHandler {
[INFO] [stderr]    |           ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Event` is never constructed
[INFO] [stderr]   --> src/core/world/event.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub struct Event {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `event`, and `event_mut` are never used
[INFO] [stderr]   --> src/core/world/event.rs:28:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl Event {
[INFO] [stderr]    | ---------- associated items in this implementation
[INFO] [stderr] 28 |     pub fn new(id: u64, event: Box<dyn EventHandler>) -> Event {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 |     pub fn event(&self) -> &dyn EventHandler {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 36 |     pub fn event_mut(&mut self) -> &mut dyn EventHandler {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Up`, `Down`, `Left`, and `Right` are never constructed
[INFO] [stderr]  --> src/core/command.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub enum MoveDirection {
[INFO] [stderr]   |          ------------- variants in this enum
[INFO] [stderr] 5 |     Up,
[INFO] [stderr]   |     ^^
[INFO] [stderr] 6 |     Down,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr] 7 |     Left,
[INFO] [stderr]   |     ^^^^
[INFO] [stderr] 8 |     Right,
[INFO] [stderr]   |     ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `MoveDirection` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Move`, `MoveTo`, `Interact`, and `Pause` are never constructed
[INFO] [stderr]   --> src/core/command.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | pub enum GameCommand<'a> {
[INFO] [stderr]    |          ----------- variants in this enum
[INFO] [stderr] 13 |     Move(MoveDirection),
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 14 |     MoveTo(i32, i32),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 15 |     Interact(&'a dyn Interactable),
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 16 |     Pause,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `GameCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/core/world/objs/interaction.rs:17:20
[INFO] [stderr]    |
[INFO] [stderr] 17 |     fn interaction(&self) -> Vec<InteractionType>;
[INFO] [stderr]    |                    ^^^^^         ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                    |
[INFO] [stderr]    |                    the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 17 |     fn interaction(&self) -> Vec<InteractionType<'_>>;
[INFO] [stderr]    |                                                 ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/core/world/objs/interaction.rs:18:17
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn interact(&self, world: &mut World) -> InteractionType;
[INFO] [stderr]    |                 ^^^^^                        ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 18 |     fn interact(&self, world: &mut World) -> InteractionType<'_>;
[INFO] [stderr]    |                                                             ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `RogueRust` (bin "RogueRust" test) generated 60 warnings (run `cargo fix --bin "RogueRust" -p RogueRust --tests` to apply 10 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/RogueRust-2353788b83dbd0af)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test core::world::map::tests::loader::load ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- core::world::map::tests::loader::load stdout ----
[INFO] [stdout] Err(
[INFO] [stdout]     "Tile ID \"tree\" doesn't exists!",
[INFO] [stdout] )
[INFO] [stdout] 
[INFO] [stdout] thread 'core::world::map::tests::loader::load' (25) panicked at src/core/world/map/tests/loader.rs:14:5:
[INFO] [stdout] assertion failed: load_result.is_ok()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x586815609072 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x586815609072 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized::<std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x586815609072 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x586815609072 - <<std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x58681561da6a - <core[c5ed12ab89cc536a]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x58681561da6a - core[c5ed12ab89cc536a]::fmt::write
[INFO] [stdout]    6:     0x58681560dee6 - std[716c9a7a72e5c14e]::io::default_write_fmt::<alloc[9c68fdf4f4f29218]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x58681560dee6 - <alloc[9c68fdf4f4f29218]::vec::Vec<u8> as std[716c9a7a72e5c14e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x5868155e73bf - <std[716c9a7a72e5c14e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5868155e73bf - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x586815601359 - std[716c9a7a72e5c14e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x58681558adbe - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x58681558adbe - test[64760d2bdea328cc]::test_main_with_exit_callback::<test[64760d2bdea328cc]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x586815601512 - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn for<'a, 'b> core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x586815601512 - std[716c9a7a72e5c14e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5868155e74aa - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:691:13
[INFO] [stdout]   16:     0x5868155dee49 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace::<std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5868155e82cd - __rustc[4f0b026143eab78e]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x58681561e17c - core[c5ed12ab89cc536a]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x58681561e142 - core[c5ed12ab89cc536a]::panicking::panic
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:150:5
[INFO] [stdout]   20:     0x58681557eafd - RogueRust[8394dd52faa86430]::core::world::map::tests::loader::load
[INFO] [stdout]                                at /opt/rustwide/workdir/src/core/world/map/tests/loader.rs:14:5
[INFO] [stdout]   21:     0x58681557e297 - RogueRust[8394dd52faa86430]::core::world::map::tests::loader::load::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/core/world/map/tests/loader.rs:4:10
[INFO] [stdout]   22:     0x586815562e76 - <RogueRust[8394dd52faa86430]::core::world::map::tests::loader::load::{closure#0} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x58681557f16b - <fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x58681557f16b - test[64760d2bdea328cc]::__rust_begin_short_backtrace::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18
[INFO] [stdout]   25:     0x58681558b9ca - test[64760d2bdea328cc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74
[INFO] [stdout]   26:     0x58681558b9ca - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   27:     0x58681558b9ca - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   28:     0x58681558b9ca - std[716c9a7a72e5c14e]::panicking::catch_unwind::<core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x58681558b9ca - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<test[64760d2bdea328cc]::run_test_in_process::{closure#0}>, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x58681558b9ca - test[64760d2bdea328cc]::run_test_in_process
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27
[INFO] [stdout]   31:     0x58681558b9ca - test[64760d2bdea328cc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43
[INFO] [stdout]   32:     0x586815585e94 - test[64760d2bdea328cc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41
[INFO] [stdout]   33:     0x586815585e94 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x58681558e4c2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   35:     0x58681558e4c2 - <core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   36:     0x58681558e4c2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40
[INFO] [stdout]   37:     0x58681558e4c2 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x58681558e4c2 - std[716c9a7a72e5c14e]::panic::catch_unwind::<core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe<std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x58681558e4c2 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   40:     0x58681558e4c2 - <std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked<test[64760d2bdea328cc]::run_test::{closure#1}, ()>::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x58681560891f - <alloc[9c68fdf4f4f29218]::boxed::Box<dyn core[c5ed12ab89cc536a]::ops::function::FnOnce<(), Output = ()> + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   42:     0x58681560891f - <std[716c9a7a72e5c14e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17
[INFO] [stdout]   43:     0x7f187a8e8aa4 - <unknown>
[INFO] [stdout]   44:     0x7f187a975a64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     core::world::map::tests::loader::load
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin RogueRust`
[INFO] running `Command { std: "docker" "inspect" "b2d4923826b8528fba3dd43494c8e6043e19a8b8ef3606842275603bd3ced2c3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b2d4923826b8528fba3dd43494c8e6043e19a8b8ef3606842275603bd3ced2c3", kill_on_drop: false }`
[INFO] [stdout] b2d4923826b8528fba3dd43494c8e6043e19a8b8ef3606842275603bd3ced2c3
