[INFO] cloning repository https://github.com/vinogradnick/soak_overflow_rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vinogradnick/soak_overflow_rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvinogradnick%2Fsoak_overflow_rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvinogradnick%2Fsoak_overflow_rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 15da97ee18abc0b1b47167155a2a1ca37520e035
[INFO] checking vinogradnick/soak_overflow_rs against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvinogradnick%2Fsoak_overflow_rs" "/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/vinogradnick/soak_overflow_rs
[INFO] finished tweaking git repo https://github.com/vinogradnick/soak_overflow_rs
[INFO] tweaked toml for git repo https://github.com/vinogradnick/soak_overflow_rs written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/vinogradnick/soak_overflow_rs 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/vinogradnick/soak_overflow_rs 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] warning: binary `soak_ovevflow` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /workspace/builds/worker-3-tc1/source/target/.../soak_ovevflow
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `soak-ovevflow`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:6:8
[INFO] [stderr]    |
[INFO] [stderr]  6 - name = "soak_ovevflow"
[INFO] [stderr]  6 + name = "soak-ovevflow"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `soak-ovevflow`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:14:14
[INFO] [stderr]    |
[INFO] [stderr] 14 ~ debug = true
[INFO] [stderr] 15 + [[bin]]
[INFO] [stderr] 16 + name = "soak-ovevflow"
[INFO] [stderr] 17 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `soak_ovevflow` (manifest) generated 1 warning
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded macroquad_macro v0.1.8
[INFO] [stderr]   Downloaded objc-rs v0.2.8
[INFO] [stderr]   Downloaded miniquad v0.4.8
[INFO] [stderr]   Downloaded macroquad v0.4.14
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498
[INFO] running `Command { std: "docker" "start" "1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498", 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" "1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498", 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" "1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: binary `soak_ovevflow` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /opt/rustwide/target/.../soak_ovevflow
[INFO] [stderr]    |                          ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `soak-ovevflow`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:6:8
[INFO] [stderr]    |
[INFO] [stderr]  6 - name = "soak_ovevflow"
[INFO] [stderr]  6 + name = "soak-ovevflow"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `soak-ovevflow`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:14:14
[INFO] [stderr]    |
[INFO] [stderr] 14 ~ debug = true
[INFO] [stderr] 15 + [[bin]]
[INFO] [stderr] 16 + name = "soak-ovevflow"
[INFO] [stderr] 17 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `soak_ovevflow` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]    Compiling miniquad v0.4.8
[INFO] [stderr]     Checking bytemuck v1.23.2
[INFO] [stderr]     Checking ttf-parser v0.21.1
[INFO] [stderr]     Checking quad-rand v0.2.3
[INFO] [stderr]    Compiling macroquad_macro v0.1.8
[INFO] [stderr]     Checking glam v0.27.0
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking fontdue v0.9.3
[INFO] [stderr]     Checking macroquad v0.4.14
[INFO] [stderr]     Checking soak_ovevflow v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `position::Position`
[INFO] [stdout]  --> src/core/ai_system.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         position::Position,
[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: `core::agg_system::AggSystem`
[INFO] [stdout]  --> src/core/cover_system.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     core::agg_system::AggSystem,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/core/predict_system.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `position::Position`
[INFO] [stdout]  --> src/core/predict_system.rs:4:39
[INFO] [stdout]   |
[INFO] [stdout] 4 |     data::{game_context::GameContext, position::Position},
[INFO] [stdout]   |                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/infra/input_reader.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, io};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HeroAction` and `TileType`
[INFO] [stdout]  --> src/infra/input_reader.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 |         hero::{Hero, HeroAction},
[INFO] [stdout]   |                      ^^^^^^^^^^
[INFO] [stdout] 7 |         position::Position,
[INFO] [stdout] 8 |         tile::{Occupant, TileType, TileView},
[INFO] [stdout]   |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger`
[INFO] [stdout]  --> src/infra/simulator.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |     infra::{logger, pathfinder},
[INFO] [stdout]   |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `position::Position`
[INFO] [stdout]  --> src/core/ai_system.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |         position::Position,
[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: `core::agg_system::AggSystem`
[INFO] [stdout]  --> src/core/cover_system.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     core::agg_system::AggSystem,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HashSet` and `VecDeque`
[INFO] [stdout]  --> src/core/predict_system.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::{HashSet, VecDeque};
[INFO] [stdout]   |                        ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `position::Position`
[INFO] [stdout]  --> src/core/predict_system.rs:4:39
[INFO] [stdout]   |
[INFO] [stdout] 4 |     data::{game_context::GameContext, position::Position},
[INFO] [stdout]   |                                       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::Error`
[INFO] [stdout]  --> src/infra/input_reader.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{error::Error, io};
[INFO] [stdout]   |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HeroAction` and `TileType`
[INFO] [stdout]  --> src/infra/input_reader.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 |         hero::{Hero, HeroAction},
[INFO] [stdout]   |                      ^^^^^^^^^^
[INFO] [stdout] 7 |         position::Position,
[INFO] [stdout] 8 |         tile::{Occupant, TileType, TileView},
[INFO] [stdout]   |                          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger`
[INFO] [stdout]  --> src/infra/simulator.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |     infra::{logger, pathfinder},
[INFO] [stdout]   |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limit`
[INFO] [stdout]   --> src/core/ai_system.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let limit = 2;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_limit`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/core/ai_system.rs:70:48
[INFO] [stdout]    |
[INFO] [stdout] 70 |                     HeroActionVariant::Shoot { id } => {
[INFO] [stdout]    |                                                ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/core/cover_system.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn process(&mut self, ctx: &GameContext) {}
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/core/predict_system.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn process(ctx: &GameContext) {}
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/infra/input_reader.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     for i in 0..agent_data_count as usize {
[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]   --> src/infra/input_reader.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     for i in 0..height as usize {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `limit`
[INFO] [stdout]   --> src/core/ai_system.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let limit = 2;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_limit`
[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]    --> src/infra/input_reader.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     for i in 0..agent_count as usize {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `id`
[INFO] [stdout]   --> src/core/ai_system.rs:70:48
[INFO] [stdout]    |
[INFO] [stdout] 70 |                     HeroActionVariant::Shoot { id } => {
[INFO] [stdout]    |                                                ^^ help: try ignoring the field: `id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `my_agent_count`
[INFO] [stdout]    --> src/infra/input_reader.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |     let my_agent_count = parse_input!(input_line, i32); // Number of alive agents controlled by you
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_agent_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/core/cover_system.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 |     pub fn process(&mut self, ctx: &GameContext) {}
[INFO] [stdout]    |                               ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ctx`
[INFO] [stdout]   --> src/core/predict_system.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn process(ctx: &GameContext) {}
[INFO] [stdout]    |                    ^^^ help: if this is intentional, prefix it with an underscore: `_ctx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hero`
[INFO] [stdout]   --> src/infra/simulator.rs:34:25
[INFO] [stdout]    |
[INFO] [stdout] 34 |                     let hero = ctx
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_hero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hero`
[INFO] [stdout]   --> src/infra/simulator.rs:41:25
[INFO] [stdout]    |
[INFO] [stdout] 41 |                     let hero = ctx
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_hero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]   --> src/infra/simulator.rs:47:46
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 HeroActionVariant::Message { text } => {}
[INFO] [stdout]    |                                              ^^^^ help: try ignoring the field: `text: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_hero`
[INFO] [stdout]   --> src/infra/simulator.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let target_hero = hero.unwrap();
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_hero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_point`
[INFO] [stdout]    --> src/viz/render.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let mouse_point = vec2(mouse_position().0, mouse_position().1);
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rec`
[INFO] [stdout]    --> src/viz/render.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let rec = Rect::new(
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/infra/input_reader.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     for i in 0..agent_data_count as usize {
[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]   --> src/infra/input_reader.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     for i in 0..height as usize {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cover` is never read
[INFO] [stdout]  --> src/core/agg_system.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct AggSystem {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 7 |     ai: AiSystem,
[INFO] [stdout] 8 |     cover: CoverSystem,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/infra/input_reader.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     for i in 0..agent_count as usize {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `my_agent_count`
[INFO] [stdout]    --> src/infra/input_reader.rs:151:9
[INFO] [stdout]     |
[INFO] [stdout] 151 |     let my_agent_count = parse_input!(input_line, i32); // Number of alive agents controlled by you
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_my_agent_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hero_cache` is never read
[INFO] [stdout]   --> src/core/ai_system.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct AiSystem {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 14 |     tile_cache: LruCache<&'static str, Vec<TileView>>,
[INFO] [stdout] 15 |     hero_cache: LruCache<&'static str, Vec<Hero>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AiSystem` 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 `covers` is never read
[INFO] [stdout]  --> src/core/cover_system.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CoverSystem {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] 8 |     covers: Vec<TileView>,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `CoverSystem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hero`
[INFO] [stdout]   --> src/infra/simulator.rs:34:25
[INFO] [stdout]    |
[INFO] [stdout] 34 |                     let hero = ctx
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_hero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hero`
[INFO] [stdout]   --> src/infra/simulator.rs:41:25
[INFO] [stdout]    |
[INFO] [stdout] 41 |                     let hero = ctx
[INFO] [stdout]    |                         ^^^^ help: if this is intentional, prefix it with an underscore: `_hero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]   --> src/infra/simulator.rs:47:46
[INFO] [stdout]    |
[INFO] [stdout] 47 |                 HeroActionVariant::Message { text } => {}
[INFO] [stdout]    |                                              ^^^^ help: try ignoring the field: `text: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/infra/simulator.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     apply_move_action(ctx, position, hero_entity.clone());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[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] 28 |                     let _ = apply_move_action(ctx, position, hero_entity.clone());
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_hero`
[INFO] [stdout]   --> src/infra/simulator.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 55 |     let target_hero = hero.unwrap();
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_hero`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mouse_point`
[INFO] [stdout]    --> src/viz/render.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let mouse_point = vec2(mouse_position().0, mouse_position().1);
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mouse_point`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rec`
[INFO] [stdout]    --> src/viz/render.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let rec = Rect::new(
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_rec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cover` is never read
[INFO] [stdout]  --> src/core/agg_system.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct AggSystem {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] 7 |     ai: AiSystem,
[INFO] [stdout] 8 |     cover: CoverSystem,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hero_cache` is never read
[INFO] [stdout]   --> src/core/ai_system.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct AiSystem {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 14 |     tile_cache: LruCache<&'static str, Vec<TileView>>,
[INFO] [stdout] 15 |     hero_cache: LruCache<&'static str, Vec<Hero>>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AiSystem` 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 `covers` is never read
[INFO] [stdout]  --> src/core/cover_system.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CoverSystem {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] 8 |     covers: Vec<TileView>,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `CoverSystem` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/infra/simulator.rs:28:21
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     apply_move_action(ctx, position, hero_entity.clone());
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[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] 28 |                     let _ = apply_move_action(ctx, position, hero_entity.clone());
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.40s
[INFO] running `Command { std: "docker" "inspect" "1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498", kill_on_drop: false }`
[INFO] [stdout] 1d6cc46fd0f8edd31649680e8df97a22b859b2fd887865ec41b4780b59fad498
