[INFO] cloning repository https://github.com/aalam24/Rust-Practice-CLI-DND-Game [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aalam24/Rust-Practice-CLI-DND-Game" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faalam24%2FRust-Practice-CLI-DND-Game", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faalam24%2FRust-Practice-CLI-DND-Game'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4381a987de8a154f16911c2f0526c0158657092c [INFO] building aalam24/Rust-Practice-CLI-DND-Game against master#f5209000832c9d3bc29c91f4daef4ca9f28dc797+target=wasm32-wasip1 for pr-149868 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faalam24%2FRust-Practice-CLI-DND-Game" "/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/aalam24/Rust-Practice-CLI-DND-Game [INFO] finished tweaking git repo https://github.com/aalam24/Rust-Practice-CLI-DND-Game [INFO] tweaked toml for git repo https://github.com/aalam24/Rust-Practice-CLI-DND-Game written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/aalam24/Rust-Practice-CLI-DND-Game on toolchain f5209000832c9d3bc29c91f4daef4ca9f28dc797 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/aalam24/Rust-Practice-CLI-DND-Game 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" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] fafce1d6d67dd24d8100c5ec0c0edd448baf6bbf6abf8a0bf36a16442902ec59 [INFO] running `Command { std: "docker" "start" "-a" "fafce1d6d67dd24d8100c5ec0c0edd448baf6bbf6abf8a0bf36a16442902ec59", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "fafce1d6d67dd24d8100c5ec0c0edd448baf6bbf6abf8a0bf36a16442902ec59", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fafce1d6d67dd24d8100c5ec0c0edd448baf6bbf6abf8a0bf36a16442902ec59", kill_on_drop: false }` [INFO] [stdout] fafce1d6d67dd24d8100c5ec0c0edd448baf6bbf6abf8a0bf36a16442902ec59 [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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "build" "--frozen" "--message-format=json" "--target" "wasm32-wasip1", kill_on_drop: false }` [INFO] [stdout] df57a1584abc20da768be8172fd0b62afa7a8c33513c21d28242f0a5b2bb52a0 [INFO] running `Command { std: "docker" "start" "-a" "df57a1584abc20da768be8172fd0b62afa7a8c33513c21d28242f0a5b2bb52a0", kill_on_drop: false }` [INFO] [stderr] Compiling simd-adler32 v0.3.8 [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Compiling wasi v0.11.1+wasi-snapshot-preview1 [INFO] [stderr] Compiling allocator-api2 v0.2.21 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling miniquad v0.4.8 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling bytemuck v1.24.0 [INFO] [stderr] Compiling ttf-parser v0.21.1 [INFO] [stderr] Compiling macroquad_macro v0.1.8 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling quad-rand v0.2.3 [INFO] [stderr] Compiling glam v0.27.0 [INFO] [stderr] Compiling crc32fast v1.5.0 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling flate2 v1.1.5 [INFO] [stderr] Compiling png v0.17.16 [INFO] [stderr] Compiling image v0.24.9 [INFO] [stderr] Compiling fontdue v0.9.3 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling macroquad v0.4.14 [INFO] [stderr] Compiling project1 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::vec` [INFO] [stdout] --> src/classes.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::vec; [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: `crate::abilities::AbilityScores` [INFO] [stdout] --> src/classes.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::abilities::AbilityScores; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classes::Class` [INFO] [stdout] --> src/spells.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::classes::Class; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::player::Player` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::player::Player; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::races::Race` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::races::Race; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classes::Class` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::classes::Class; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::abilities::AbilityScores` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::abilities::AbilityScores; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::spells::SpellSlots` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::spells::SpellSlots; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `::rand::Rng` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ::rand::Rng; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Exploring`, `InCombat`, `Paused`, and `GameOver` are never constructed [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 15 | enum GameState { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | Exploring, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 19 | InCombat, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 20 | Paused, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 21 | GameOver [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `roll_dice` is never used [INFO] [stdout] --> src/main.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn roll_dice(numb_dice: u32, sides: u32, modifier: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Player` is never constructed [INFO] [stdout] --> src/player.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Player { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_ac` and `display_character_sheet` are never used [INFO] [stdout] --> src/player.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Player { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 23 | pub fn calculate_ac(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub async fn display_character_sheet(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Class` is never used [INFO] [stdout] --> src/classes.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Class { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `hit_die`, `starting_hp`, and `allocate_spell_slots` are never used [INFO] [stdout] --> src/classes.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 30 | impl Class { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 31 | fn hit_die(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn starting_hp(&self, constitution_mod: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn allocate_spell_slots(&self, level: i32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Race` is never used [INFO] [stdout] --> src/races.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Race { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `apply_racial_bonuses` and `choose_ability_score_increases` are never used [INFO] [stdout] --> src/races.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Race { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 28 | // Apply racial ability score increases [INFO] [stdout] 29 | pub fn apply_racial_bonuses(&self, ability_scores: &mut AbilityScores, choices: (String, String)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn choose_ability_score_increases() -> (String, String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AbilityScores` is never constructed [INFO] [stdout] --> src/abilities.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct AbilityScores { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `str_mod`, `dex_mod`, `con_mod`, `int_mod`, `wis_mod`, and `cha_mod` are never used [INFO] [stdout] --> src/abilities.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl AbilityScores { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] 15 | // Calculate the modifiers for each ability score [INFO] [stdout] 16 | pub fn str_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn dex_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn con_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn int_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn wis_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn cha_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `point_buy`, `cost_for_score`, `calculate_points_used`, and `display_scores` are never used [INFO] [stdout] --> src/abilities.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl AbilityScores { [INFO] [stdout] | ------------------ associated functions in this implementation [INFO] [stdout] 37 | pub fn point_buy() -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | fn cost_for_score(score: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | fn calculate_points_used(scores: &AbilityScores) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | fn display_scores(scores: &AbilityScores) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SpellSlots` is never constructed [INFO] [stdout] --> src/spells.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct SpellSlots { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_slots`, `full_caster`, and `use_slot` are never used [INFO] [stdout] --> src/spells.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl SpellSlots { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 17 | fn new_slots(cantrips: i32, l1 : i32, l2: i32, l3: i32, l4: i32, l5: i32, l6: i32, l7: i32, l8: i32, l9: i32,) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn full_caster(level: i32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn use_slot(&mut self, spell_level: u32) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/classes.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | self.hit_die() + constitution_mod; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 42 | let _ = self.hit_die() + constitution_mod; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 16.70s [INFO] running `Command { std: "docker" "inspect" "df57a1584abc20da768be8172fd0b62afa7a8c33513c21d28242f0a5b2bb52a0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "df57a1584abc20da768be8172fd0b62afa7a8c33513c21d28242f0a5b2bb52a0", kill_on_drop: false }` [INFO] [stdout] df57a1584abc20da768be8172fd0b62afa7a8c33513c21d28242f0a5b2bb52a0 [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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+f5209000832c9d3bc29c91f4daef4ca9f28dc797" "test" "--frozen" "--no-run" "--message-format=json" "--target" "wasm32-wasip1", kill_on_drop: false }` [INFO] [stdout] 12df9255627e8e46cb16ffc0009e29481db5111973c80797f606112c3b8bac04 [INFO] running `Command { std: "docker" "start" "-a" "12df9255627e8e46cb16ffc0009e29481db5111973c80797f606112c3b8bac04", kill_on_drop: false }` [INFO] [stderr] Compiling project1 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::vec` [INFO] [stdout] --> src/classes.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::vec; [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: `crate::abilities::AbilityScores` [INFO] [stdout] --> src/classes.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::abilities::AbilityScores; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classes::Class` [INFO] [stdout] --> src/spells.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::classes::Class; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::player::Player` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::player::Player; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::races::Race` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::races::Race; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classes::Class` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::classes::Class; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::abilities::AbilityScores` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::abilities::AbilityScores; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::spells::SpellSlots` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::spells::SpellSlots; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `::rand::Rng` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ::rand::Rng; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Exploring`, `InCombat`, `Paused`, and `GameOver` are never constructed [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 15 | enum GameState { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | Exploring, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 19 | InCombat, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 20 | Paused, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 21 | GameOver [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `roll_dice` is never used [INFO] [stdout] --> src/main.rs:23:4 [INFO] [stdout] | [INFO] [stdout] 23 | fn roll_dice(numb_dice: u32, sides: u32, modifier: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Player` is never constructed [INFO] [stdout] --> src/player.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Player { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `calculate_ac` and `display_character_sheet` are never used [INFO] [stdout] --> src/player.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Player { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] 23 | pub fn calculate_ac(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub async fn display_character_sheet(&self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Class` is never used [INFO] [stdout] --> src/classes.rs:8:10 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum Class { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `hit_die`, `starting_hp`, and `allocate_spell_slots` are never used [INFO] [stdout] --> src/classes.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 30 | impl Class { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 31 | fn hit_die(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn starting_hp(&self, constitution_mod: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn allocate_spell_slots(&self, level: i32) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Race` is never used [INFO] [stdout] --> src/races.rs:5:10 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Race { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `apply_racial_bonuses` and `choose_ability_score_increases` are never used [INFO] [stdout] --> src/races.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl Race { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 28 | // Apply racial ability score increases [INFO] [stdout] 29 | pub fn apply_racial_bonuses(&self, ability_scores: &mut AbilityScores, choices: (String, String)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn choose_ability_score_increases() -> (String, String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AbilityScores` is never constructed [INFO] [stdout] --> src/abilities.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct AbilityScores { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `str_mod`, `dex_mod`, `con_mod`, `int_mod`, `wis_mod`, and `cha_mod` are never used [INFO] [stdout] --> src/abilities.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl AbilityScores { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] 15 | // Calculate the modifiers for each ability score [INFO] [stdout] 16 | pub fn str_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn dex_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn con_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn int_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn wis_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn cha_mod(&self) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `point_buy`, `cost_for_score`, `calculate_points_used`, and `display_scores` are never used [INFO] [stdout] --> src/abilities.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl AbilityScores { [INFO] [stdout] | ------------------ associated functions in this implementation [INFO] [stdout] 37 | pub fn point_buy() -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | fn cost_for_score(score: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | fn calculate_points_used(scores: &AbilityScores) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 169 | fn display_scores(scores: &AbilityScores) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SpellSlots` is never constructed [INFO] [stdout] --> src/spells.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct SpellSlots { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_slots`, `full_caster`, and `use_slot` are never used [INFO] [stdout] --> src/spells.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 16 | impl SpellSlots { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 17 | fn new_slots(cantrips: i32, l1 : i32, l2: i32, l3: i32, l4: i32, l5: i32, l6: i32, l7: i32, l8: i32, l9: i32,) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn full_caster(level: i32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn use_slot(&mut self, spell_level: u32) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/classes.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | self.hit_die() + constitution_mod; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 42 | let _ = self.hit_die() + constitution_mod; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.53s [INFO] running `Command { std: "docker" "inspect" "12df9255627e8e46cb16ffc0009e29481db5111973c80797f606112c3b8bac04", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "12df9255627e8e46cb16ffc0009e29481db5111973c80797f606112c3b8bac04", kill_on_drop: false }` [INFO] [stdout] 12df9255627e8e46cb16ffc0009e29481db5111973c80797f606112c3b8bac04