[INFO] cloning repository https://github.com/KristianWahlroos/turn_based_ai_research
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/KristianWahlroos/turn_based_ai_research" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKristianWahlroos%2Fturn_based_ai_research", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKristianWahlroos%2Fturn_based_ai_research'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 07120eb08eae6a68d6c68116819a05e18871836d
[INFO] checking KristianWahlroos/turn_based_ai_research against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKristianWahlroos%2Fturn_based_ai_research" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/KristianWahlroos/turn_based_ai_research
[INFO] finished tweaking git repo https://github.com/KristianWahlroos/turn_based_ai_research
[INFO] tweaked toml for git repo https://github.com/KristianWahlroos/turn_based_ai_research written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/KristianWahlroos/turn_based_ai_research on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/KristianWahlroos/turn_based_ai_research 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded is-terminal v0.4.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ff259f5232c547839fe75c7e4dc30692f8114d5719fba015021865fe00de438f
[INFO] running `Command { std: "docker" "start" "-a" "ff259f5232c547839fe75c7e4dc30692f8114d5719fba015021865fe00de438f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ff259f5232c547839fe75c7e4dc30692f8114d5719fba015021865fe00de438f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ff259f5232c547839fe75c7e4dc30692f8114d5719fba015021865fe00de438f", kill_on_drop: false }`
[INFO] [stdout] ff259f5232c547839fe75c7e4dc30692f8114d5719fba015021865fe00de438f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d88d0eaf1e134b994aa55748eefe7761b5d830bffb004f62d14995572fb790fa
[INFO] running `Command { std: "docker" "start" "-a" "d88d0eaf1e134b994aa55748eefe7761b5d830bffb004f62d14995572fb790fa", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling proc-macro2 v1.0.50
[INFO] [stderr]    Compiling io-lifetimes v1.0.5
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling rustix v0.36.8
[INFO] [stderr]     Checking linux-raw-sys v0.1.4
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling serde v1.0.152
[INFO] [stderr]    Compiling serde_json v1.0.91
[INFO] [stderr]     Checking termcolor v1.2.0
[INFO] [stderr]     Checking aho-corasick v0.7.20
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]     Checking regex v1.7.1
[INFO] [stderr]     Checking getrandom v0.2.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.152
[INFO] [stderr]     Checking is-terminal v0.4.3
[INFO] [stderr]     Checking env_logger v0.10.0
[INFO] [stderr]     Checking turn_based_ai_research v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Env` and `Logger`
[INFO] [stdout]  --> src/lib.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use env_logger::{Env, Logger};
[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 imports: `Level`, `debug`, `error`, `info`, `log_enabled`, and `warn`
[INFO] [stdout]  --> src/lib.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, error, info, log_enabled, warn, Level};
[INFO] [stdout]   |           ^^^^^  ^^^^^  ^^^^  ^^^^^^^^^^^  ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `creature_generator::*`
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use creature_generator::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::fs;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Env` and `Logger`
[INFO] [stdout]  --> src/lib.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use env_logger::{Env, Logger};
[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 imports: `Level`, `debug`, `error`, `info`, `log_enabled`, and `warn`
[INFO] [stdout]  --> src/lib.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{debug, error, info, log_enabled, warn, Level};
[INFO] [stdout]   |           ^^^^^  ^^^^^  ^^^^  ^^^^^^^^^^^  ^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `creature_generator::*`
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use creature_generator::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fs`
[INFO] [stdout]   --> src/lib.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::fs;
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]   --> src/ai.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         battle_instance: &BattleInstance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]   --> src/ai.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         battle_settings: &BattleSettings,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]   --> src/ai.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]   --> src/ai.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actioner`
[INFO] [stdout]   --> src/ai.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         actioner: bool,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actioner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]   --> src/ai.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         battle_instance: &BattleInstance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]   --> src/ai.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         battle_settings: &BattleSettings,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]   --> src/ai.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]   --> src/ai.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]   --> src/ai.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         battle_instance: &BattleInstance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]   --> src/ai.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |         battle_settings: &BattleSettings,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]   --> src/ai.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]   --> src/ai.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]    --> src/ai.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]    --> src/ai.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         battle_instance: &BattleInstance,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]    --> src/ai.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |         battle_settings: &BattleSettings,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]    --> src/ai.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 197 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]   --> src/ai.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 |         battle_instance: &BattleInstance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]   --> src/ai.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |         battle_settings: &BattleSettings,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]   --> src/ai.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]   --> src/ai.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 29 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `actioner`
[INFO] [stdout]   --> src/ai.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |         actioner: bool,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_actioner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]   --> src/ai.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         battle_instance: &BattleInstance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]   --> src/ai.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         battle_settings: &BattleSettings,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]   --> src/ai.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]   --> src/ai.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]   --> src/ai.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         battle_instance: &BattleInstance,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]   --> src/ai.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |         battle_settings: &BattleSettings,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]   --> src/ai.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]   --> src/ai.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creature_instances`
[INFO] [stdout]    --> src/ai.rs:137:9
[INFO] [stdout]     |
[INFO] [stdout] 137 |         creature_instances: &[Vec<CreatureInstance>; 2],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creature_instances`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_instance`
[INFO] [stdout]    --> src/ai.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         battle_instance: &BattleInstance,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_instance`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `battle_settings`
[INFO] [stdout]    --> src/ai.rs:196:9
[INFO] [stdout]     |
[INFO] [stdout] 196 |         battle_settings: &BattleSettings,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_battle_settings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `creatures`
[INFO] [stdout]    --> src/ai.rs:197:9
[INFO] [stdout]     |
[INFO] [stdout] 197 |         creatures: &[Vec<Creature>; 2],
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_creatures`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `RandomRoll` and `AverageRoll` are never constructed
[INFO] [stdout]    --> src/lib.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 130 | enum Roll {
[INFO] [stdout]     |      ---- variants in this enum
[INFO] [stdout] 131 |     RandomRoll,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 132 |     HighRoll,
[INFO] [stdout] 133 |     AverageRoll,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/lib.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 141 | impl BattleSettings {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] 142 |     fn new(crit_enabled: bool, always_hits: bool, roll: Roll) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_then_try_remove_value_volatile_status`, `get_value_from_value_volatile_status`, `get_move_id`, `get_highest_effect_damage_moves`, `get_turns_to_win_with_highest_damage_move`, and `volatile_status_with_turn_range` are never used
[INFO] [stdout]    --> src/lib.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl BattleInstance {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 268 |     fn has_then_try_remove_value_volatile_status(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |     fn get_value_from_value_volatile_status(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     fn get_move_id(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     fn get_highest_effect_damage_moves(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 499 |     fn get_turns_to_win_with_highest_damage_move(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 967 |     fn volatile_status_with_turn_range(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveManager` is never constructed
[INFO] [stdout]     --> src/lib.rs:1161:8
[INFO] [stdout]      |
[INFO] [stdout] 1161 | struct MoveManager {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `needs_target` is never read
[INFO] [stdout]     --> src/lib.rs:1180:5
[INFO] [stdout]      |
[INFO] [stdout] 1176 | pub struct MoveUnit {
[INFO] [stdout]      |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1180 |     needs_target: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `MoveUnit` 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: variant `Unimplemented` is never constructed
[INFO] [stdout]     --> src/lib.rs:1190:5
[INFO] [stdout]      |
[INFO] [stdout] 1186 | enum Effect {
[INFO] [stdout]      |      ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 1190 |     Unimplemented,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `Effect` 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: associated function `no_random` is never used
[INFO] [stdout]   --> src/creature_generator.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl CreatureGenerator {
[INFO] [stdout]    | ---------------------- associated function in this implementation
[INFO] [stdout] 92 |     fn no_random() -> Self {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]     --> src/lib.rs:1153:85
[INFO] [stdout]      |
[INFO] [stdout] 1153 |     fn get_battler<'a>(&'a self, side: usize, creatures: &'a [Vec<Creature>; 2]) -> &Creature {
[INFO] [stdout]      |                         --                                --                        ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]      |                         |                                 |
[INFO] [stdout]      |                         the lifetime is named here        the lifetime is named 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: consistently use `'a`
[INFO] [stdout]      |
[INFO] [stdout] 1153 |     fn get_battler<'a>(&'a self, side: usize, creatures: &'a [Vec<Creature>; 2]) -> &'a Creature {
[INFO] [stdout]      |                                                                                      ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `RandomRoll` and `AverageRoll` are never constructed
[INFO] [stdout]    --> src/lib.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 130 | enum Roll {
[INFO] [stdout]     |      ---- variants in this enum
[INFO] [stdout] 131 |     RandomRoll,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 132 |     HighRoll,
[INFO] [stdout] 133 |     AverageRoll,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/lib.rs:142:8
[INFO] [stdout]     |
[INFO] [stdout] 141 | impl BattleSettings {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] 142 |     fn new(crit_enabled: bool, always_hits: bool, roll: Roll) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_then_try_remove_value_volatile_status`, `get_value_from_value_volatile_status`, `get_move_id`, `get_highest_effect_damage_moves`, `get_turns_to_win_with_highest_damage_move`, and `volatile_status_with_turn_range` are never used
[INFO] [stdout]    --> src/lib.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl BattleInstance {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 268 |     fn has_then_try_remove_value_volatile_status(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 282 |     fn get_value_from_value_volatile_status(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     fn get_move_id(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 434 |     fn get_highest_effect_damage_moves(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 499 |     fn get_turns_to_win_with_highest_damage_move(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 967 |     fn volatile_status_with_turn_range(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveManager` is never constructed
[INFO] [stdout]     --> src/lib.rs:1161:8
[INFO] [stdout]      |
[INFO] [stdout] 1161 | struct MoveManager {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `needs_target` is never read
[INFO] [stdout]     --> src/lib.rs:1180:5
[INFO] [stdout]      |
[INFO] [stdout] 1176 | pub struct MoveUnit {
[INFO] [stdout]      |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1180 |     needs_target: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `MoveUnit` 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: variant `Unimplemented` is never constructed
[INFO] [stdout]     --> src/lib.rs:1190:5
[INFO] [stdout]      |
[INFO] [stdout] 1186 | enum Effect {
[INFO] [stdout]      |      ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 1190 |     Unimplemented,
[INFO] [stdout]      |     ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `Effect` 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: associated function `no_random` is never used
[INFO] [stdout]   --> src/creature_generator.rs:92:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl CreatureGenerator {
[INFO] [stdout]    | ---------------------- associated function in this implementation
[INFO] [stdout] 92 |     fn no_random() -> Self {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]     --> src/lib.rs:1153:85
[INFO] [stdout]      |
[INFO] [stdout] 1153 |     fn get_battler<'a>(&'a self, side: usize, creatures: &'a [Vec<Creature>; 2]) -> &Creature {
[INFO] [stdout]      |                         --                                --                        ^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]      |                         |                                 |
[INFO] [stdout]      |                         the lifetime is named here        the lifetime is named 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: consistently use `'a`
[INFO] [stdout]      |
[INFO] [stdout] 1153 |     fn get_battler<'a>(&'a self, side: usize, creatures: &'a [Vec<Creature>; 2]) -> &'a Creature {
[INFO] [stdout]      |                                                                                      ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> tests/tests.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     for i in 0..100000 {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |         for i in 0..500 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |     for i in 0..6000 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:253:13
[INFO] [stdout]     |
[INFO] [stdout] 253 |         for i in 0..500 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:381:9
[INFO] [stdout]     |
[INFO] [stdout] 381 |     for i in 0..1000 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:406:13
[INFO] [stdout]     |
[INFO] [stdout] 406 |         for i in 0..500 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:534:9
[INFO] [stdout]     |
[INFO] [stdout] 534 |     for i in 0..10000 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:559:13
[INFO] [stdout]     |
[INFO] [stdout] 559 |         for i in 0..500 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:619:13
[INFO] [stdout]     |
[INFO] [stdout] 619 |         for i in 0..1000 {
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/tests.rs:699:9
[INFO] [stdout]     |
[INFO] [stdout] 699 |     for i in 0..100000 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.89s
[INFO] running `Command { std: "docker" "inspect" "d88d0eaf1e134b994aa55748eefe7761b5d830bffb004f62d14995572fb790fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d88d0eaf1e134b994aa55748eefe7761b5d830bffb004f62d14995572fb790fa", kill_on_drop: false }`
[INFO] [stdout] d88d0eaf1e134b994aa55748eefe7761b5d830bffb004f62d14995572fb790fa
