[INFO] cloning repository https://github.com/mert-d/Tales-of-Fantasy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mert-d/Tales-of-Fantasy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmert-d%2FTales-of-Fantasy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmert-d%2FTales-of-Fantasy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fc48cdde87bbb69e9ab2c8344e13311699e63300
[INFO] testing mert-d/Tales-of-Fantasy against 1.98.0-beta.8+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmert-d%2FTales-of-Fantasy" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mert-d/Tales-of-Fantasy
[INFO] finished tweaking git repo https://github.com/mert-d/Tales-of-Fantasy
[INFO] tweaked toml for git repo https://github.com/mert-d/Tales-of-Fantasy written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mert-d/Tales-of-Fantasy on toolchain 1.98.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mert-d/Tales-of-Fantasy 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.98.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded noise v0.9.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1
[INFO] running `Command { std: "docker" "start" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1", 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" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling noise v0.9.0
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling fantasy_map_simulator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `offset_to_axial`
[INFO] [stdout]  --> src/world/pathfinding.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::hex::{HEX_NEIGHBORS, offset_to_axial, axial_to_offset};
[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: `RACE_TRAITS`
[INFO] [stdout]  --> src/simulation/logistics.rs:2:48
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stdout]   |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RACE_TRAITS`
[INFO] [stdout]  --> src/simulation/tech_magic.rs:2:48
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stdout]   |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/simulation/tech_magic.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 |             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout]     |                      ^                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 101 -             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout] 101 +             g_inc *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HEX_NEIGHBORS`, `axial_to_offset`, and `hex_distance`
[INFO] [stdout]  --> src/simulation/trade.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::world::hex::{hex_distance, HEX_NEIGHBORS, axial_to_offset};
[INFO] [stdout]   |                         ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/simulation/trade.rs:89:73
[INFO] [stdout]    |
[INFO] [stdout] 89 |             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stdout]    |                                                                         ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 89 -             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stdout] 89 +             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= 1.0 + DIPLO_ALLIANCE_GOLD_BONUS; }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/simulation/trade.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout]    |                                ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout] 92 +                 trade_value *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/simulation/trade.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]  --> src/core/spatial.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         count,
[INFO] [stdout]   |         ^^^^^ help: try ignoring the field: `count: _`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cb`
[INFO] [stdout]   --> src/simulation/warfare.rs:28:94
[INFO] [stdout]    |
[INFO] [stdout] 28 | ...ore, width: i32, height: i32, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nations`
[INFO] [stdout]    --> src/simulation/warfare.rs:108:44
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub fn tick_warfare(cells: &mut CellStore, nations: &NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]     |                                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/tech_magic.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut final_g = g;
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/tech_magic.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut m_inc = nation_accum[n].2;
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cells`
[INFO] [stdout]    --> src/simulation/tech_magic.rs:141:36
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub fn tick_tech_magic_progression(cells: &mut CellStore, nations: &mut NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags`
[INFO] [stdout]   --> src/simulation/stability.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         flags,
[INFO] [stdout]    |         ^^^^^ help: try ignoring the field: `flags: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `highest_score`
[INFO] [stdout]   --> src/simulation/stability.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let (highest_score, best_rebellion_cell) = revolt_risk.par_iter_mut().enumerate().map(|(i, risk_ptr)| {
[INFO] [stdout]    |          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_highest_score`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> src/simulation/religion.rs:26:72
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/simulation/religion.rs:26:84
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> src/simulation/trade.rs:32:65
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/simulation/trade.rs:32:77
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx_ji`
[INFO] [stdout]   --> src/simulation/trade.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |             let idx_ji = j * MAX_NATIONS + i;
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_ji`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `owner`
[INFO] [stdout]   --> src/simulation/heroes.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let owner = heroes.owner_id[h] as usize;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nations`
[INFO] [stdout]    --> src/simulation/heroes.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     nations: &NationStore,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 17.51s
[INFO] running `Command { std: "docker" "inspect" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `offset_to_axial`
[INFO] [stdout]  --> src/world/pathfinding.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::hex::{HEX_NEIGHBORS, offset_to_axial, axial_to_offset};
[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: `RACE_TRAITS`
[INFO] [stdout]  --> src/simulation/logistics.rs:2:48
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stdout]   |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RACE_TRAITS`
[INFO] [stdout]  --> src/simulation/tech_magic.rs:2:48
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stdout]   |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/simulation/tech_magic.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 |             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout]     |                      ^                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 101 -             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout] 101 +             g_inc *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HEX_NEIGHBORS`, `axial_to_offset`, and `hex_distance`
[INFO] [stdout]  --> src/simulation/trade.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::world::hex::{hex_distance, HEX_NEIGHBORS, axial_to_offset};
[INFO] [stdout]   |                         ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/simulation/trade.rs:89:73
[INFO] [stdout]    |
[INFO] [stdout] 89 |             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stdout]    |                                                                         ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 89 -             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stdout] 89 +             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= 1.0 + DIPLO_ALLIANCE_GOLD_BONUS; }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/simulation/trade.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout]    |                                ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout] 92 +                 trade_value *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/simulation/trade.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]  --> src/core/spatial.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         count,
[INFO] [stdout]   |         ^^^^^ help: try ignoring the field: `count: _`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cb`
[INFO] [stdout]   --> src/simulation/warfare.rs:28:94
[INFO] [stdout]    |
[INFO] [stdout] 28 | ...ore, width: i32, height: i32, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nations`
[INFO] [stdout]    --> src/simulation/warfare.rs:108:44
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub fn tick_warfare(cells: &mut CellStore, nations: &NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]     |                                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/tech_magic.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut final_g = g;
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/tech_magic.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut m_inc = nation_accum[n].2;
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cells`
[INFO] [stdout]    --> src/simulation/tech_magic.rs:141:36
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub fn tick_tech_magic_progression(cells: &mut CellStore, nations: &mut NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags`
[INFO] [stdout]   --> src/simulation/stability.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         flags,
[INFO] [stdout]    |         ^^^^^ help: try ignoring the field: `flags: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `highest_score`
[INFO] [stdout]   --> src/simulation/stability.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let (highest_score, best_rebellion_cell) = revolt_risk.par_iter_mut().enumerate().map(|(i, risk_ptr)| {
[INFO] [stdout]    |          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_highest_score`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> src/simulation/religion.rs:26:72
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/simulation/religion.rs:26:84
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> src/simulation/trade.rs:32:65
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/simulation/trade.rs:32:77
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx_ji`
[INFO] [stdout]   --> src/simulation/trade.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |             let idx_ji = j * MAX_NATIONS + i;
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_ji`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `owner`
[INFO] [stdout]   --> src/simulation/heroes.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let owner = heroes.owner_id[h] as usize;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling fantasy_map_simulator v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `nations`
[INFO] [stdout]    --> src/simulation/heroes.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     nations: &NationStore,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fantasy_map_simulator::SimulationCore`
[INFO] [stdout]  --> tests/integration_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use fantasy_map_simulator::SimulationCore;
[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: `offset_to_axial`
[INFO] [stdout]  --> src/world/pathfinding.rs:5:33
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::hex::{HEX_NEIGHBORS, offset_to_axial, axial_to_offset};
[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: `RACE_TRAITS`
[INFO] [stdout]  --> src/simulation/logistics.rs:2:48
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stdout]   |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RACE_TRAITS`
[INFO] [stdout]  --> src/simulation/tech_magic.rs:2:48
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stdout]   |                                                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/simulation/tech_magic.rs:101:22
[INFO] [stdout]     |
[INFO] [stdout] 101 |             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout]     |                      ^                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 101 -             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout] 101 +             g_inc *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `HEX_NEIGHBORS`, `axial_to_offset`, and `hex_distance`
[INFO] [stdout]  --> src/simulation/trade.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::world::hex::{hex_distance, HEX_NEIGHBORS, axial_to_offset};
[INFO] [stdout]   |                         ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/simulation/trade.rs:89:73
[INFO] [stdout]    |
[INFO] [stdout] 89 |             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stdout]    |                                                                         ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 89 -             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stdout] 89 +             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= 1.0 + DIPLO_ALLIANCE_GOLD_BONUS; }
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/simulation/trade.rs:92:32
[INFO] [stdout]    |
[INFO] [stdout] 92 |                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout]    |                                ^                               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stdout] 92 +                 trade_value *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]  --> src/simulation/trade.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use rayon::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]  --> src/core/spatial.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |         count,
[INFO] [stdout]   |         ^^^^^ help: try ignoring the field: `count: _`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cb`
[INFO] [stdout]   --> src/simulation/warfare.rs:28:94
[INFO] [stdout]    |
[INFO] [stdout] 28 | ...ore, width: i32, height: i32, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nations`
[INFO] [stdout]    --> src/simulation/warfare.rs:108:44
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub fn tick_warfare(cells: &mut CellStore, nations: &NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]     |                                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/tech_magic.rs:81:13
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut final_g = g;
[INFO] [stdout]    |             ----^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/tech_magic.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |         let mut m_inc = nation_accum[n].2;
[INFO] [stdout]    |             ----^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cells`
[INFO] [stdout]    --> src/simulation/tech_magic.rs:141:36
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub fn tick_tech_magic_progression(cells: &mut CellStore, nations: &mut NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stdout]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_cells`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flags`
[INFO] [stdout]   --> src/simulation/stability.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 |         flags,
[INFO] [stdout]    |         ^^^^^ help: try ignoring the field: `flags: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `highest_score`
[INFO] [stdout]   --> src/simulation/stability.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let (highest_score, best_rebellion_cell) = revolt_risk.par_iter_mut().enumerate().map(|(i, risk_ptr)| {
[INFO] [stdout]    |          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_highest_score`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> src/simulation/religion.rs:26:72
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/simulation/religion.rs:26:84
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]   --> src/simulation/trade.rs:32:65
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> src/simulation/trade.rs:32:77
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stdout]    |                                                                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx_ji`
[INFO] [stdout]   --> src/simulation/trade.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |             let idx_ji = j * MAX_NATIONS + i;
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_ji`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `owner`
[INFO] [stdout]   --> src/simulation/heroes.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let owner = heroes.owner_id[h] as usize;
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nations`
[INFO] [stdout]    --> src/simulation/heroes.rs:194:5
[INFO] [stdout]     |
[INFO] [stdout] 194 |     nations: &NationStore,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 23.03s
[INFO] running `Command { std: "docker" "inspect" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1", 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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `offset_to_axial`
[INFO] [stderr]  --> src/world/pathfinding.rs:5:33
[INFO] [stderr]   |
[INFO] [stderr] 5 | use super::hex::{HEX_NEIGHBORS, offset_to_axial, axial_to_offset};
[INFO] [stderr]   |                                 ^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RACE_TRAITS`
[INFO] [stderr]  --> src/simulation/logistics.rs:2:48
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stderr]   |                                                ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RACE_TRAITS`
[INFO] [stderr]  --> src/simulation/tech_magic.rs:2:48
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::core::ecs::{CellStore, NationStore, RACE_TRAITS};
[INFO] [stderr]   |                                                ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/simulation/tech_magic.rs:101:22
[INFO] [stderr]     |
[INFO] [stderr] 101 |             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr]     |                      ^                               ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 101 -             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr] 101 +             g_inc *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `HEX_NEIGHBORS`, `axial_to_offset`, and `hex_distance`
[INFO] [stderr]  --> src/simulation/trade.rs:4:25
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::world::hex::{hex_distance, HEX_NEIGHBORS, axial_to_offset};
[INFO] [stderr]   |                         ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/simulation/trade.rs:89:73
[INFO] [stderr]    |
[INFO] [stderr] 89 |             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stderr]    |                                                                         ^                               ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 89 -             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stderr] 89 +             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= 1.0 + DIPLO_ALLIANCE_GOLD_BONUS; }
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/simulation/trade.rs:92:32
[INFO] [stderr]    |
[INFO] [stderr] 92 |                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr]    |                                ^                               ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 92 -                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr] 92 +                 trade_value *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rayon::prelude`
[INFO] [stderr]  --> src/simulation/trade.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use rayon::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `count`
[INFO] [stderr]  --> src/core/spatial.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |         count,
[INFO] [stderr]   |         ^^^^^ help: try ignoring the field: `count: _`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cb`
[INFO] [stderr]   --> src/simulation/warfare.rs:28:94
[INFO] [stderr]    |
[INFO] [stderr] 28 | ...ore, width: i32, height: i32, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stderr]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `nations`
[INFO] [stderr]    --> src/simulation/warfare.rs:108:44
[INFO] [stderr]     |
[INFO] [stderr] 108 | pub fn tick_warfare(cells: &mut CellStore, nations: &NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stderr]     |                                            ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/simulation/tech_magic.rs:81:13
[INFO] [stderr]    |
[INFO] [stderr] 81 |         let mut final_g = g;
[INFO] [stderr]    |             ----^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/simulation/tech_magic.rs:97:13
[INFO] [stderr]    |
[INFO] [stderr] 97 |         let mut m_inc = nation_accum[n].2;
[INFO] [stderr]    |             ----^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cells`
[INFO] [stderr]    --> src/simulation/tech_magic.rs:141:36
[INFO] [stderr]     |
[INFO] [stderr] 141 | pub fn tick_tech_magic_progression(cells: &mut CellStore, nations: &mut NationStore, cb: Option<crate::api::events::EventCallback>) {
[INFO] [stderr]     |                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_cells`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `flags`
[INFO] [stderr]   --> src/simulation/stability.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 |         flags,
[INFO] [stderr]    |         ^^^^^ help: try ignoring the field: `flags: _`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `highest_score`
[INFO] [stderr]   --> src/simulation/stability.rs:18:10
[INFO] [stderr]    |
[INFO] [stderr] 18 |     let (highest_score, best_rebellion_cell) = revolt_risk.par_iter_mut().enumerate().map(|(i, risk_ptr)| {
[INFO] [stderr]    |          ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_highest_score`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `width`
[INFO] [stderr]   --> src/simulation/religion.rs:26:72
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stderr]    |                                                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `height`
[INFO] [stderr]   --> src/simulation/religion.rs:26:84
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub fn tick_religion(cells: &mut CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stderr]    |                                                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `width`
[INFO] [stderr]   --> src/simulation/trade.rs:32:65
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stderr]    |                                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `height`
[INFO] [stderr]   --> src/simulation/trade.rs:32:77
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub fn tick_trade(cells: &CellStore, nations: &mut NationStore, width: i32, height: i32) {
[INFO] [stderr]    |                                                                             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `idx_ji`
[INFO] [stderr]   --> src/simulation/trade.rs:50:17
[INFO] [stderr]    |
[INFO] [stderr] 50 |             let idx_ji = j * MAX_NATIONS + i;
[INFO] [stderr]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_ji`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `owner`
[INFO] [stderr]   --> src/simulation/heroes.rs:64:13
[INFO] [stderr]    |
[INFO] [stderr] 64 |         let owner = heroes.owner_id[h] as usize;
[INFO] [stderr]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_owner`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `nations`
[INFO] [stderr]    --> src/simulation/heroes.rs:194:5
[INFO] [stderr]     |
[INFO] [stderr] 194 |     nations: &NationStore,
[INFO] [stderr]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nations`
[INFO] [stderr] 
[INFO] [stderr] warning: `fantasy_map_simulator` (lib) generated 23 warnings (run `cargo fix --lib -p fantasy_map_simulator` to apply 22 suggestions)
[INFO] [stderr] warning: `fantasy_map_simulator` (lib test) generated 23 warnings (23 duplicates)
[INFO] [stderr] warning: unused import: `fantasy_map_simulator::SimulationCore`
[INFO] [stderr]  --> tests/integration_test.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use fantasy_map_simulator::SimulationCore;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `fantasy_map_simulator` (test "integration_test") generated 1 warning (run `cargo fix --test "integration_test" -p fantasy_map_simulator` to apply 1 suggestion)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/fantasy_map_simulator-822f459e6b1460f2)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_test.rs (/opt/rustwide/target/release/deps/integration_test-4374687c1c7e0e90)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test test_army_buffers ... ok
[INFO] [stdout] test test_core_lifecycle_and_tick ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/threading_test.rs (/opt/rustwide/target/release/deps/threading_test-8e50e550ef52d015)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]    Doc-tests fantasy_map_simulator
[INFO] [stdout] test test_multithreading_determinism ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.81s
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]    --> src/simulation/tech_magic.rs:101:22
[INFO] [stderr]     |
[INFO] [stderr] 101 |             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr]     |                      ^                               ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 101 -             g_inc *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr] 101 +             g_inc *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/simulation/trade.rs:89:73
[INFO] [stderr]    |
[INFO] [stderr] 89 |             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stderr]    |                                                                         ^                               ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 89 -             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= (1.0 + DIPLO_ALLIANCE_GOLD_BONUS); }
[INFO] [stderr] 89 +             if nations.relations[idx_ij] == DIPLO_ALLY { trade_value *= 1.0 + DIPLO_ALLIANCE_GOLD_BONUS; }
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/simulation/trade.rs:92:32
[INFO] [stderr]    |
[INFO] [stderr] 92 |                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr]    |                                ^                               ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 92 -                 trade_value *= (1.0 + RELIGION_TRADE_GOLD_BONUS);
[INFO] [stderr] 92 +                 trade_value *= 1.0 + RELIGION_TRADE_GOLD_BONUS;
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 3 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1", kill_on_drop: false }`
[INFO] [stdout] 1a4f5d8d058dd7f986220f98d592b01adbe603166e55f189476a268eea7cb4b1
