[INFO] cloning repository https://github.com/acikek/jage
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/acikek/jage" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Facikek%2Fjage", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Facikek%2Fjage'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] aa20786ca6acc5a53b6eea3b5168395bba9d355d
[INFO] checking acikek/jage against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Facikek%2Fjage" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/acikek/jage
[INFO] finished tweaking git repo https://github.com/acikek/jage
[INFO] tweaked toml for git repo https://github.com/acikek/jage written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/acikek/jage on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/acikek/jage 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_yaml v0.8.20
[INFO] [stderr]   Downloaded clipboard-win v4.2.1
[INFO] [stderr]   Downloaded rustyline v9.0.0
[INFO] [stderr]   Downloaded fd-lock v3.0.0
[INFO] [stderr]   Downloaded nix v0.22.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae
[INFO] running `Command { std: "docker" "start" "fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.101
[INFO] [stderr]    Compiling proc-macro2 v1.0.29
[INFO] [stderr]    Compiling syn v1.0.75
[INFO] [stderr]    Compiling serde_derive v1.0.130
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]     Checking smallvec v1.6.1
[INFO] [stderr]     Checking linked-hash-map v0.5.4
[INFO] [stderr]     Checking endian-type v0.1.2
[INFO] [stderr]    Compiling memoffset v0.6.4
[INFO] [stderr]    Compiling indexmap v1.7.0
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]     Checking unicode-segmentation v1.8.0
[INFO] [stderr]     Checking utf8parse v0.2.0
[INFO] [stderr]     Checking dtoa v0.4.8
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking nibble_vec v0.1.0
[INFO] [stderr]     Checking radix_trie v0.2.1
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]     Checking nix v0.22.1
[INFO] [stderr]     Checking fd-lock v3.0.0
[INFO] [stderr]     Checking dirs-next v2.0.0
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking rustyline v9.0.0
[INFO] [stderr]     Checking serde_yaml v0.8.20
[INFO] [stderr]     Checking jage v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `LocationType::*`
[INFO] [stdout]  --> src/input/handler.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use LocationType::*;
[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: `LocationType::*`
[INFO] [stdout]  --> src/input/handler.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use LocationType::*;
[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 variable: `c`
[INFO] [stdout]   --> src/input/handler.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     Combat(c) => {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/data/attribute.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct Skill {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout]  9 |     pub name: String,
[INFO] [stdout] 10 |     pub description: String
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Skill` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `proficiency` are never read
[INFO] [stdout]   --> src/data/attribute.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Class {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     pub name: String,
[INFO] [stdout] 22 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 23 |     pub proficiency: Vec<String>
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Class` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title`, `description`, and `authors` are never read
[INFO] [stdout]   --> src/data/config.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Metadata {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout]  8 |     pub title: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]  9 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 10 |     pub authors: Vec<String>
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Metadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `singular` is never read
[INFO] [stdout]   --> src/data/config.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct CurrencyData {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 15 |     pub singular: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CurrencyData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `description` are never read
[INFO] [stdout]   --> src/data/config.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct World {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 23 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 24 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `World` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `metadata`, `prompt`, and `exposition` are never read
[INFO] [stdout]   --> src/data/config.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 30 |     pub metadata: Metadata,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 31 |     pub prompt: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 32 |     pub exposition: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `classes` and `skills` are never read
[INFO] [stdout]   --> src/data/data.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct GameData {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 26 |     pub config: Config,
[INFO] [stdout] 27 |     pub classes: HashMap<String, Class>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub skills: HashMap<String, Skill>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/data/entity.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct EntityAttack {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 14 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EntityAttack` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `inventory` are never read
[INFO] [stdout]   --> src/data/entity.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Entity {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 38 |     pub health: usize,
[INFO] [stdout] 39 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 40 |     pub inventory: Inventory,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Entity` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/data/entity.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Character {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 73 |     pub name: String,
[INFO] [stdout] 74 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Character` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Enhance(HashMap<String, isize>)
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatusEffectType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 15 -     Enhance(HashMap<String, isize>)
[INFO] [stdout] 15 +     Enhance(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/data/inventory.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct StatusEffect {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 37 |     pub name: String,
[INFO] [stdout] 38 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatusEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `restore` and `effect` are never read
[INFO] [stdout]   --> src/data/inventory.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct Consumable {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 56 |     pub restore: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 57 |     pub effect: HashMap<String, usize>
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Consumable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `strength` and `proficiency` are never read
[INFO] [stdout]   --> src/data/inventory.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct Equippable {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 62 |     pub strength: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 63 |     #[serde(alias = "prof")]
[INFO] [stdout] 64 |     pub proficiency: Vec<String>
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Equippable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:70:16
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Consumable(Consumable),
[INFO] [stdout]    |     ---------- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 70 -     Consumable(Consumable),
[INFO] [stdout] 70 +     Consumable(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 |     Weapon(Equippable),
[INFO] [stdout]    |     ------ ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 71 -     Weapon(Equippable),
[INFO] [stdout] 71 +     Weapon(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 |     Armor(Equippable),
[INFO] [stdout]    |     ----- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 72 -     Armor(Equippable),
[INFO] [stdout] 72 +     Armor(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `i_type` are never read
[INFO] [stdout]   --> src/data/inventory.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct Item {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 79 |     pub name: String,
[INFO] [stdout] 80 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 81 |     #[serde(rename = "type")]
[INFO] [stdout] 82 |     pub i_type: ItemType
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Item` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `display_list`, and `drop` are never used
[INFO] [stdout]    --> src/data/inventory.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | impl Inventory {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get(&self, item: &String) -> Option<&usize> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     pub fn display_list(&self, game: &GameData) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn drop(&self, other: &mut Inventory) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cost` is never read
[INFO] [stdout]   --> src/data/location.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct Inn {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 89 |     cost: usize
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Inn` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `shop`, and `quests` are never read
[INFO] [stdout]   --> src/data/location.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub struct Tavern {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 94 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 95 |     shop: Vec<String>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 96 |     quests: Vec<String>
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tavern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `items` are never read
[INFO] [stdout]    --> src/data/location.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct Shop {
[INFO] [stdout]     |            ---- fields in this struct
[INFO] [stdout] 101 |     name: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 102 |     items: Vec<String>
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Shop` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `ruler` are never read
[INFO] [stdout]    --> src/data/location.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct Palace {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 107 |     name: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 108 |     ruler: Character
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Palace` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inn` and `tavern` are never read
[INFO] [stdout]    --> src/data/location.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct TownData {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 113 |     houses: Vec<String>,
[INFO] [stdout] 114 |     inn: Inn,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 115 |     tavern: Tavern
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TownData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inn`, `tavern`, and `shops` are never read
[INFO] [stdout]    --> src/data/location.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct CityData {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 120 |     pub houses: Vec<String>,
[INFO] [stdout] 121 |     pub inn: Inn,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 122 |     pub tavern: Tavern,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 123 |     pub shops: Vec<Shop>
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CityData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inn`, `tavern`, `shops`, and `palace` are never read
[INFO] [stdout]    --> src/data/location.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub struct CapitalData {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 128 |     pub houses: Vec<String>,
[INFO] [stdout] 129 |     pub inn: Inn,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 130 |     pub tavern: Tavern,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 131 |     pub shops: Vec<Shop>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 132 |     pub palace: Palace
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CapitalData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `quests` are never read
[INFO] [stdout]    --> src/data/location.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub struct Location {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub quests: Option<Vec<String>>
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Location` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_night` is never used
[INFO] [stdout]   --> src/data/time.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl GameTime {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn is_night(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `encode` and `write` are never used
[INFO] [stdout]    --> src/fs/fs.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl Filesystem {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn encode<T: Serialize>(data: &T) -> Result<String, serde_yaml::Error> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn write<T: Serialize>(&self, data: &T, path: &String) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_err` and `input_from` are never used
[INFO] [stdout]   --> src/input/args.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Args {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn check_err(&self, min: usize) -> Result<(), String> {    
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn input_from(&self, offset: usize) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `prompt` is never used
[INFO] [stdout]   --> src/input/controller.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl InputController {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn prompt(&mut self, text: String) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/input/handler.rs:28:28
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     Combat(c) => {
[INFO] [stdout]    |                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/data/attribute.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct Skill {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout]  9 |     pub name: String,
[INFO] [stdout] 10 |     pub description: String
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Skill` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `proficiency` are never read
[INFO] [stdout]   --> src/data/attribute.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Class {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 21 |     pub name: String,
[INFO] [stdout] 22 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 23 |     pub proficiency: Vec<String>
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Class` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `title`, `description`, and `authors` are never read
[INFO] [stdout]   --> src/data/config.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct Metadata {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout]  8 |     pub title: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]  9 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 10 |     pub authors: Vec<String>
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Metadata` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `singular` is never read
[INFO] [stdout]   --> src/data/config.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct CurrencyData {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 15 |     pub singular: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CurrencyData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `description` are never read
[INFO] [stdout]   --> src/data/config.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct World {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 23 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 24 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `World` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `metadata`, `prompt`, and `exposition` are never read
[INFO] [stdout]   --> src/data/config.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct Config {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 30 |     pub metadata: Metadata,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 31 |     pub prompt: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 32 |     pub exposition: String,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Config` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `classes` and `skills` are never read
[INFO] [stdout]   --> src/data/data.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct GameData {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 26 |     pub config: Config,
[INFO] [stdout] 27 |     pub classes: HashMap<String, Class>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub skills: HashMap<String, Skill>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GameData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/data/entity.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct EntityAttack {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 14 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EntityAttack` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `inventory` are never read
[INFO] [stdout]   --> src/data/entity.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Entity {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 38 |     pub health: usize,
[INFO] [stdout] 39 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 40 |     pub inventory: Inventory,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Entity` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/data/entity.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Character {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 73 |     pub name: String,
[INFO] [stdout] 74 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Character` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:15:13
[INFO] [stdout]    |
[INFO] [stdout] 15 |     Enhance(HashMap<String, isize>)
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatusEffectType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 15 -     Enhance(HashMap<String, isize>)
[INFO] [stdout] 15 +     Enhance(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `description` is never read
[INFO] [stdout]   --> src/data/inventory.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct StatusEffect {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 37 |     pub name: String,
[INFO] [stdout] 38 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StatusEffect` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `restore` and `effect` are never read
[INFO] [stdout]   --> src/data/inventory.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct Consumable {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 56 |     pub restore: usize,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 57 |     pub effect: HashMap<String, usize>
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Consumable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `strength` and `proficiency` are never read
[INFO] [stdout]   --> src/data/inventory.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct Equippable {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 62 |     pub strength: usize,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 63 |     #[serde(alias = "prof")]
[INFO] [stdout] 64 |     pub proficiency: Vec<String>
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Equippable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:70:16
[INFO] [stdout]    |
[INFO] [stdout] 70 |     Consumable(Consumable),
[INFO] [stdout]    |     ---------- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 70 -     Consumable(Consumable),
[INFO] [stdout] 70 +     Consumable(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 |     Weapon(Equippable),
[INFO] [stdout]    |     ------ ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 71 -     Weapon(Equippable),
[INFO] [stdout] 71 +     Weapon(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/data/inventory.rs:72:11
[INFO] [stdout]    |
[INFO] [stdout] 72 |     Armor(Equippable),
[INFO] [stdout]    |     ----- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 72 -     Armor(Equippable),
[INFO] [stdout] 72 +     Armor(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `i_type` are never read
[INFO] [stdout]   --> src/data/inventory.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct Item {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 79 |     pub name: String,
[INFO] [stdout] 80 |     pub description: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 81 |     #[serde(rename = "type")]
[INFO] [stdout] 82 |     pub i_type: ItemType
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Item` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `display_list`, and `drop` are never used
[INFO] [stdout]    --> src/data/inventory.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | impl Inventory {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn get(&self, item: &String) -> Option<&usize> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 175 |     pub fn display_list(&self, game: &GameData) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     pub fn drop(&self, other: &mut Inventory) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cost` is never read
[INFO] [stdout]   --> src/data/location.rs:89:5
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct Inn {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 89 |     cost: usize
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Inn` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `shop`, and `quests` are never read
[INFO] [stdout]   --> src/data/location.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub struct Tavern {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 94 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 95 |     shop: Vec<String>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 96 |     quests: Vec<String>
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tavern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `items` are never read
[INFO] [stdout]    --> src/data/location.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub struct Shop {
[INFO] [stdout]     |            ---- fields in this struct
[INFO] [stdout] 101 |     name: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 102 |     items: Vec<String>
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Shop` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `ruler` are never read
[INFO] [stdout]    --> src/data/location.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub struct Palace {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 107 |     name: String,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 108 |     ruler: Character
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Palace` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inn` and `tavern` are never read
[INFO] [stdout]    --> src/data/location.rs:114:5
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub struct TownData {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 113 |     houses: Vec<String>,
[INFO] [stdout] 114 |     inn: Inn,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 115 |     tavern: Tavern
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TownData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inn`, `tavern`, and `shops` are never read
[INFO] [stdout]    --> src/data/location.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 119 | pub struct CityData {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 120 |     pub houses: Vec<String>,
[INFO] [stdout] 121 |     pub inn: Inn,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 122 |     pub tavern: Tavern,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 123 |     pub shops: Vec<Shop>
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CityData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inn`, `tavern`, `shops`, and `palace` are never read
[INFO] [stdout]    --> src/data/location.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub struct CapitalData {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] 128 |     pub houses: Vec<String>,
[INFO] [stdout] 129 |     pub inn: Inn,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 130 |     pub tavern: Tavern,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 131 |     pub shops: Vec<Shop>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 132 |     pub palace: Palace
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CapitalData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `quests` are never read
[INFO] [stdout]    --> src/data/location.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub struct Location {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub quests: Option<Vec<String>>
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Location` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_night` is never used
[INFO] [stdout]   --> src/data/time.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl GameTime {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn is_night(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `encode` and `write` are never used
[INFO] [stdout]    --> src/fs/fs.rs:113:12
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl Filesystem {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn encode<T: Serialize>(data: &T) -> Result<String, serde_yaml::Error> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn write<T: Serialize>(&self, data: &T, path: &String) -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `check_err` and `input_from` are never used
[INFO] [stdout]   --> src/input/args.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Args {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn check_err(&self, min: usize) -> Result<(), String> {    
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn input_from(&self, offset: usize) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `prompt` is never used
[INFO] [stdout]   --> src/input/controller.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl InputController {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn prompt(&mut self, text: String) -> Option<String> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.20s
[INFO] running `Command { std: "docker" "inspect" "fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae", kill_on_drop: false }`
[INFO] [stdout] fa5b1f0a61e85e7234ac9e9a14de8551685ae1662cbbdb6fddfb013f9fd9d3ae
