[INFO] cloning repository https://github.com/Jandhi/Tome
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jandhi/Tome" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJandhi%2FTome", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJandhi%2FTome'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a96418b42cd88c474e4781ff94ce727fd930176b
[INFO] checking Jandhi/Tome against 656a9da186dacaf3bf8f7f7296a825d256cb4ae3 for pr-158915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJandhi%2FTome" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  52% (338/642)
Updating files:  53% (341/642)
Updating files:  53% (346/642)
Updating files:  54% (347/642)
Updating files:  55% (354/642)
Updating files:  56% (360/642)
Updating files:  57% (366/642)
Updating files:  58% (373/642)
Updating files:  59% (379/642)
Updating files:  60% (386/642)
Updating files:  61% (392/642)
Updating files:  62% (399/642)
Updating files:  63% (405/642)
Updating files:  64% (411/642)
Updating files:  65% (418/642)
Updating files:  66% (424/642)
Updating files:  67% (431/642)
Updating files:  68% (437/642)
Updating files:  69% (443/642)
Updating files:  70% (450/642)
Updating files:  71% (456/642)
Updating files:  72% (463/642)
Updating files:  73% (469/642)
Updating files:  74% (476/642)
Updating files:  75% (482/642)
Updating files:  76% (488/642)
Updating files:  77% (495/642)
Updating files:  78% (501/642)
Updating files:  79% (508/642)
Updating files:  80% (514/642)
Updating files:  81% (521/642)
Updating files:  82% (527/642)
Updating files:  83% (533/642)
Updating files:  84% (540/642)
Updating files:  85% (546/642)
Updating files:  86% (553/642)
Updating files:  87% (559/642)
Updating files:  88% (565/642)
Updating files:  89% (572/642)
Updating files:  90% (578/642)
Updating files:  91% (585/642)
Updating files:  92% (591/642)
Updating files:  93% (598/642)
Updating files:  94% (604/642)
Updating files:  95% (610/642)
Updating files:  96% (617/642)
Updating files:  97% (623/642)
Updating files:  98% (630/642)
Updating files:  99% (636/642)
Updating files: 100% (642/642)
Updating files: 100% (642/642), done.
[INFO] started tweaking git repo https://github.com/Jandhi/Tome
[INFO] finished tweaking git repo https://github.com/Jandhi/Tome
[INFO] tweaked toml for git repo https://github.com/Jandhi/Tome written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Jandhi/Tome on toolchain 656a9da186dacaf3bf8f7f7296a825d256cb4ae3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+656a9da186dacaf3bf8f7f7296a825d256cb4ae3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Jandhi/Tome 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" "+656a9da186dacaf3bf8f7f7296a825d256cb4ae3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: binary `Tome` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /workspace/builds/worker-4-tc1/source/target/.../Tome
[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 `tome`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:50:8
[INFO] [stderr]    |
[INFO] [stderr] 50 - name = "Tome"
[INFO] [stderr] 50 + name = "tome"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `tome`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:51:19
[INFO] [stderr]    |
[INFO] [stderr] 51 ~ version = "0.1.0"
[INFO] [stderr] 52 + [[bin]]
[INFO] [stderr] 53 + name = "tome"
[INFO] [stderr] 54 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `Tome` (manifest) generated 1 warning
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dyn-clone v1.0.19
[INFO] [stderr]   Downloaded reqwest-retry v0.7.0
[INFO] [stderr]   Downloaded retry-policies v0.4.0
[INFO] [stderr]   Downloaded errno v0.3.12
[INFO] [stderr]   Downloaded miniz_oxide v0.8.8
[INFO] [stderr]   Downloaded lerp v0.5.0
[INFO] [stderr]   Downloaded hyper-rustls v0.27.6
[INFO] [stderr]   Downloaded openai v1.1.1
[INFO] [stderr]   Downloaded fastnbt v2.5.0
[INFO] [stderr]   Downloaded openssl-sys v0.9.108
[INFO] [stderr]   Downloaded noise v0.9.0
[INFO] [stderr]   Downloaded hyper-util v0.1.12
[INFO] [stderr]   Downloaded h2 v0.4.10
[INFO] [stderr]   Downloaded rustls v0.23.27
[INFO] [stderr]   Downloaded fastsnbt v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f
[INFO] running `Command { std: "docker" "start" "3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f", 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" "3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f" "/opt/rustwide/cargo-home/bin/cargo" "+656a9da186dacaf3bf8f7f7296a825d256cb4ae3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f", 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" "3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f" "/opt/rustwide/cargo-home/bin/cargo" "+656a9da186dacaf3bf8f7f7296a825d256cb4ae3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: binary `Tome` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /opt/rustwide/target/.../Tome
[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 `tome`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:50:8
[INFO] [stderr]    |
[INFO] [stderr] 50 - name = "Tome"
[INFO] [stderr] 50 + name = "tome"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `tome`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:51:19
[INFO] [stderr]    |
[INFO] [stderr] 51 ~ version = "0.1.0"
[INFO] [stderr] 52 + [[bin]]
[INFO] [stderr] 53 + name = "tome"
[INFO] [stderr] 54 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `Tome` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]     Checking smallvec v1.15.2
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]    Compiling openssl-sys v0.9.108
[INFO] [stderr]     Checking hashbrown v0.15.3
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]    Compiling openssl v0.10.72
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking adler2 v2.0.0
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]     Checking miniz_oxide v0.8.8
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking indexmap v2.9.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking crc32fast v1.4.2
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking mio v1.0.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.5
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking float-cmp v0.9.0
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking flate2 v1.1.1
[INFO] [stderr]     Checking core_maths v0.1.1
[INFO] [stderr]     Checking ttf-parser v0.24.1
[INFO] [stderr]     Checking roxmltree v0.20.0
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking fontconfig-parser v0.5.8
[INFO] [stderr]     Checking kurbo v0.11.3
[INFO] [stderr]     Checking memmap2 v0.9.10
[INFO] [stderr]     Checking unicode-properties v0.1.4
[INFO] [stderr]     Checking unicode-bidi-mirroring v0.3.0
[INFO] [stderr]     Checking unicode-script v0.5.8
[INFO] [stderr]     Checking unicode-ccc v0.3.0
[INFO] [stderr]     Checking siphasher v1.0.3
[INFO] [stderr]    Compiling rustversion v1.0.21
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking simplecss v0.2.2
[INFO] [stderr]     Checking zune-core v0.4.12
[INFO] [stderr]    Compiling schemars v0.8.22
[INFO] [stderr]     Checking xmlwriter v0.1.0
[INFO] [stderr]     Checking imagesize v0.13.0
[INFO] [stderr]     Checking data-url v0.3.2
[INFO] [stderr]     Checking pico-args v0.5.0
[INFO] [stderr]     Checking eventsource-stream v0.2.3
[INFO] [stderr]     Checking unicode-vo v0.1.0
[INFO] [stderr]     Checking gif v0.13.3
[INFO] [stderr]     Checking image-webp v0.1.3
[INFO] [stderr]     Checking zune-jpeg v0.4.21
[INFO] [stderr]     Checking svgtypes v0.15.3
[INFO] [stderr]     Checking retry-policies v0.4.0
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking rgb v0.8.53
[INFO] [stderr]     Checking cesu8 v1.1.0
[INFO] [stderr]     Checking iana-time-zone v0.1.65
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking dyn-clone v1.0.19
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking noise v0.9.0
[INFO] [stderr]     Checking lerp v0.5.0
[INFO] [stderr]     Checking fontdb v0.22.0
[INFO] [stderr]     Checking rustybuzz v0.18.0
[INFO] [stderr]     Checking strum v0.27.1
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]     Checking tokio v1.45.1
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking yoke v0.8.0
[INFO] [stderr]     Checking zerovec v0.11.2
[INFO] [stderr]     Checking zerotrie v0.2.2
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling schemars_derive v0.8.22
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]     Checking tinystr v0.8.1
[INFO] [stderr]     Checking icu_locale_core v2.0.0
[INFO] [stderr]     Checking potential_utf v0.1.2
[INFO] [stderr]     Checking icu_collections v2.0.0
[INFO] [stderr]     Checking icu_provider v2.0.0
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]     Checking usvg v0.44.0
[INFO] [stderr]     Checking derive_builder v0.20.2
[INFO] [stderr]     Checking icu_normalizer v2.0.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking icu_properties v2.0.1
[INFO] [stderr]    Compiling strum_macros v0.27.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking serde_json v1.0.140
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_bytes v0.11.17
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking fastsnbt v0.2.0
[INFO] [stderr]     Checking fastnbt v2.5.0
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stderr]     Checking resvg v0.44.0
[INFO] [stderr]     Checking tokio-util v0.7.15
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking h2 v0.4.10
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking hyper-util v0.1.12
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.15
[INFO] [stderr]     Checking reqwest-middleware v0.4.2
[INFO] [stderr]     Checking reqwest-eventsource v0.6.0
[INFO] [stderr]     Checking openai v1.1.1
[INFO] [stderr]     Checking reqwest-retry v0.7.0
[INFO] [stderr]     Checking Tome v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `MaterialId`, `Material`, `Placer`, `WallType`, `build_wall`, `buildings::place_buildings`, `chronicle::generate_chronicle`, `data::Loadable`, `data::LoadedData`, `generate_parcels`, `noise::RNG`, `style::Style`, and `terrain::log_trees`
[INFO] [stdout]  --> src/main.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...::{data::Loadable, editor::World, generator::{buildings::place_buildings, chronicle::generate_chronicle, data::LoadedData, districts::{build_wall, generate_parcels, WallType}, materials::{Material, MaterialId, Placer}, style::Style, terrain::log_trees}, http_mod::GDMCHTTPProvider, noise::RNG, u...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^                             ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^              ^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^               ^^^^^^^^  ^^^^^^^^^^  ^^^^^^   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^                               ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::generator::buildings_v2::roof::RoofStyle`
[INFO] [stdout]     --> src/generator/settlement.rs:1039:9
[INFO] [stdout]      |
[INFO] [stdout] 1039 |     use crate::generator::buildings_v2::roof::RoofStyle;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::generator::buildings_v2::roof::gable::GablePitch`
[INFO] [stdout]     --> src/generator/settlement.rs:1040:9
[INFO] [stdout]      |
[INFO] [stdout] 1040 |     use crate::generator::buildings_v2::roof::gable::GablePitch;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Footprint`
[INFO] [stdout]     --> src/generator/settlement.rs:1041:53
[INFO] [stdout]      |
[INFO] [stdout] 1041 |     use crate::generator::buildings_v2::footprint::{Footprint, SizeClass};
[INFO] [stdout]      |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Palette`
[INFO] [stdout]     --> src/generator/settlement.rs:1046:39
[INFO] [stdout]      |
[INFO] [stdout] 1046 |     use crate::generator::materials::{Palette, PaletteId};
[INFO] [stdout]      |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MaterialId`, `Material`, `Placer`, `WallType`, `build_wall`, `buildings::place_buildings`, `chronicle::generate_chronicle`, `data::Loadable`, `data::LoadedData`, `generate_parcels`, `noise::RNG`, `style::Style`, and `terrain::log_trees`
[INFO] [stdout]  --> src/main.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | ...::{data::Loadable, editor::World, generator::{buildings::place_buildings, chronicle::generate_chronicle, data::LoadedData, districts::{build_wall, generate_parcels, WallType}, materials::{Material, MaterialId, Placer}, style::Style, terrain::log_trees}, http_mod::GDMCHTTPProvider, noise::RNG, u...
[INFO] [stdout]   |       ^^^^^^^^^^^^^^                             ^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^              ^^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^               ^^^^^^^^  ^^^^^^^^^^  ^^^^^^   ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^                               ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::generator::buildings_v2::roof::RoofStyle`
[INFO] [stdout]    --> src/generator/placement/test.rs:807:13
[INFO] [stdout]     |
[INFO] [stdout] 807 |         use crate::generator::buildings_v2::roof::RoofStyle;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::generator::buildings_v2::roof::gable::GablePitch`
[INFO] [stdout]    --> src/generator/placement/test.rs:808:13
[INFO] [stdout]     |
[INFO] [stdout] 808 |         use crate::generator::buildings_v2::roof::gable::GablePitch;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::generator::buildings_v2::roof::RoofStyle`
[INFO] [stdout]     --> src/generator/settlement.rs:1039:9
[INFO] [stdout]      |
[INFO] [stdout] 1039 |     use crate::generator::buildings_v2::roof::RoofStyle;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::generator::buildings_v2::roof::gable::GablePitch`
[INFO] [stdout]     --> src/generator/settlement.rs:1040:9
[INFO] [stdout]      |
[INFO] [stdout] 1040 |     use crate::generator::buildings_v2::roof::gable::GablePitch;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Footprint`
[INFO] [stdout]     --> src/generator/settlement.rs:1041:53
[INFO] [stdout]      |
[INFO] [stdout] 1041 |     use crate::generator::buildings_v2::footprint::{Footprint, SizeClass};
[INFO] [stdout]      |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Palette`
[INFO] [stdout]     --> src/generator/settlement.rs:1046:39
[INFO] [stdout]      |
[INFO] [stdout] 1046 |     use crate::generator::materials::{Palette, PaletteId};
[INFO] [stdout]      |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::i32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/generator/buildings/placement.rs:1:59
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cell::RefCell, collections::{HashMap, HashSet}, i32};
[INFO] [stdout]   |                                                           ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::i32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/generator/buildings/placement.rs:1:59
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{cell::RefCell, collections::{HashMap, HashSet}, i32};
[INFO] [stdout]   |                                                           ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `interior_pool`
[INFO] [stdout]    --> src/generator/districts/test.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |         let interior_pool = vec![SizeClass::House];
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_interior_pool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sv`
[INFO] [stdout]    --> src/generator/buildings_v2/floors/stairs.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |     let sv: Point2D = dir.into();
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_sv`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frac`
[INFO] [stdout]    --> src/generator/buildings_v2/roof/hipped_roof.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |             let frac = h_adj - h_adj.floor();
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_frac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rect`
[INFO] [stdout]    --> src/generator/buildings_v2/rooms/attic.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let rect = room_plan.rooms[room_idx].rect;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `workplace_count` is never read
[INFO] [stdout]     --> src/generator/settlement.rs:1819:31
[INFO] [stdout]      |
[INFO] [stdout] 1819 |     let mut workplace_count = 0usize;
[INFO] [stdout]      |                               ^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1892 |         workplace_count = n_workplaces;
[INFO] [stdout]      |         ------------------------------ `workplace_count` is overwritten here before the previous value is read
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `population_count` is never read
[INFO] [stdout]     --> src/generator/settlement.rs:1825:32
[INFO] [stdout]      |
[INFO] [stdout] 1825 |     let mut population_count = 0usize;
[INFO] [stdout]      |                                ^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1840 |         population_count = budget;
[INFO] [stdout]      |         ------------------------- `population_count` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `frac`
[INFO] [stdout]    --> src/generator/buildings_v2/roof/hipped_roof.rs:151:17
[INFO] [stdout]     |
[INFO] [stdout] 151 |             let frac = h_adj - h_adj.floor();
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_frac`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rect`
[INFO] [stdout]    --> src/generator/buildings_v2/rooms/attic.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |         let rect = room_plan.rooms[room_idx].rect;
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_rect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `workplace_count` is never read
[INFO] [stdout]     --> src/generator/settlement.rs:1819:31
[INFO] [stdout]      |
[INFO] [stdout] 1819 |     let mut workplace_count = 0usize;
[INFO] [stdout]      |                               ^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1892 |         workplace_count = n_workplaces;
[INFO] [stdout]      |         ------------------------------ `workplace_count` is overwritten here before the previous value is read
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `population_count` is never read
[INFO] [stdout]     --> src/generator/settlement.rs:1825:32
[INFO] [stdout]      |
[INFO] [stdout] 1825 |     let mut population_count = 0usize;
[INFO] [stdout]      |                                ^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1840 |         population_count = budget;
[INFO] [stdout]      |         ------------------------- `population_count` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LandmarkLink` is more private than the item `give_player_book`
[INFO] [stdout]    --> src/generator/chronicle.rs:516:1
[INFO] [stdout]     |
[INFO] [stdout] 516 | / pub async fn give_player_book(
[INFO] [stdout] 517 | |     editor: &Editor,
[INFO] [stdout] 518 | |     instruction: &str,
[INFO] [stdout] 519 | |     links: &[LandmarkLink],
[INFO] [stdout] 520 | |     town_name: &str,
[INFO] [stdout] 521 | | ) -> anyhow::Result<()> {
[INFO] [stdout]     | |_______________________^ function `give_player_book` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `LandmarkLink` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/generator/chronicle.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | struct LandmarkLink {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `consumed_by` is never read
[INFO] [stdout]    --> src/generator/resource_chain/registry.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct ResourceRegistry {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 164 |     consumed_by: HashMap<String, Vec<String>>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResourceRegistry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assign_roles` is never used
[INFO] [stdout]    --> src/generator/buildings_v2/rooms/assign.rs:170:15
[INFO] [stdout]     |
[INFO] [stdout] 170 | pub(super) fn assign_roles(
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `flatness`, `water_margin`, `edge_penalty`, and `road_bonus` are never read
[INFO] [stdout]   --> src/generator/placement/placement.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct CandidateScore {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 84 |     pub flatness: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub water_margin: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 89 |     pub edge_penalty: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 90 |     pub road_bonus: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CandidateScore` 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: function `furnish_plaza_as` is never used
[INFO] [stdout]    --> src/generator/open_space/plaza.rs:105:21
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub(crate) async fn furnish_plaza_as(
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sv`
[INFO] [stdout]    --> src/generator/buildings_v2/floors/stairs.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |     let sv: Point2D = dir.into();
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_sv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `build_area`
[INFO] [stdout]   --> src/generator/placement/test.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let build_area = provider.get_build_area().await.expect("Failed to get build area");
[INFO] [stdout]    |             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_build_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `chronicle::LandmarkLink` is more private than the item `give_player_book`
[INFO] [stdout]    --> src/generator/chronicle.rs:516:1
[INFO] [stdout]     |
[INFO] [stdout] 516 | / pub async fn give_player_book(
[INFO] [stdout] 517 | |     editor: &Editor,
[INFO] [stdout] 518 | |     instruction: &str,
[INFO] [stdout] 519 | |     links: &[LandmarkLink],
[INFO] [stdout] 520 | |     town_name: &str,
[INFO] [stdout] 521 | | ) -> anyhow::Result<()> {
[INFO] [stdout]     | |_______________________^ function `give_player_book` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `chronicle::LandmarkLink` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/generator/chronicle.rs:367:1
[INFO] [stdout]     |
[INFO] [stdout] 367 | struct LandmarkLink {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mark_footprint_used` is never used
[INFO] [stdout]    --> src/generator/districts/test.rs:586:12
[INFO] [stdout]     |
[INFO] [stdout] 586 |         fn mark_footprint_used(plot: &mut crate::generator::buildings_v2::footprint::Plot, footprint: &Footprint, buffer: i32) {
[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 `consumed_by` is never read
[INFO] [stdout]    --> src/generator/resource_chain/registry.rs:164:5
[INFO] [stdout]     |
[INFO] [stdout] 158 | pub struct ResourceRegistry {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 164 |     consumed_by: HashMap<String, Vec<String>>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ResourceRegistry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_double_door` is never used
[INFO] [stdout]   --> src/generator/buildings_v2/door_ramp/test.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn add_double_door(wall_segs: &mut WallSegments, facing: Cardinal, offset: u32) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_frame` is never used
[INFO] [stdout]   --> src/generator/buildings_v2/roof/test.rs:15:4
[INFO] [stdout]    |
[INFO] [stdout] 15 | fn make_frame(rects: Vec<Rect2D>, floor_counts: Vec<u32>) -> Frame {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `flatness`, `water_margin`, `edge_penalty`, and `road_bonus` are never read
[INFO] [stdout]   --> src/generator/placement/placement.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct CandidateScore {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 84 |     pub flatness: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub water_margin: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 89 |     pub edge_penalty: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 90 |     pub road_bonus: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CandidateScore` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `town_type`, and `description` are never read
[INFO] [stdout]   --> src/ai/test.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |         struct Town {
[INFO] [stdout]    |                ---- fields in this struct
[INFO] [stdout] 33 |             name: String,
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 34 |             town_type : TownType,
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 35 |             description: String,
[INFO] [stdout]    |             ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Town` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 09s
[INFO] running `Command { std: "docker" "inspect" "3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f", kill_on_drop: false }`
[INFO] [stdout] 3e18a30a295ff365483193a460852a47cec9f2205edea50dd6f47e9903484f3f
