[INFO] cloning repository https://github.com/Wava11/City-Builder-CLI
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Wava11/City-Builder-CLI" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWava11%2FCity-Builder-CLI", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWava11%2FCity-Builder-CLI'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a4888eaa3dac5b6de0bb7f900ae9a3865dbd0201
[INFO] checking Wava11/City-Builder-CLI against master#f5e2df741b4a9820a7579f0c8eccc951706a8782 for pr-147995
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWava11%2FCity-Builder-CLI" "/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/Wava11/City-Builder-CLI
[INFO] finished tweaking git repo https://github.com/Wava11/City-Builder-CLI
[INFO] tweaked toml for git repo https://github.com/Wava11/City-Builder-CLI written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Wava11/City-Builder-CLI on toolchain f5e2df741b4a9820a7579f0c8eccc951706a8782
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Wava11/City-Builder-CLI 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" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded coreaudio-sys v0.2.16
[INFO] [stderr]   Downloaded gilrs v0.10.10
[INFO] [stderr]   Downloaded ratatui v0.28.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e43b699f452f891d386b96eae6bcf7cebc2ac614ffa1723862d0539071b5d39f
[INFO] running `Command { std: "docker" "start" "-a" "e43b699f452f891d386b96eae6bcf7cebc2ac614ffa1723862d0539071b5d39f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e43b699f452f891d386b96eae6bcf7cebc2ac614ffa1723862d0539071b5d39f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e43b699f452f891d386b96eae6bcf7cebc2ac614ffa1723862d0539071b5d39f", kill_on_drop: false }`
[INFO] [stdout] e43b699f452f891d386b96eae6bcf7cebc2ac614ffa1723862d0539071b5d39f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ef84eb5d7eed654ce5d0b352f2d29da8a8cc039cfe5006758bc650c29ff45384
[INFO] running `Command { std: "docker" "start" "-a" "ef84eb5d7eed654ce5d0b352f2d29da8a8cc039cfe5006758bc650c29ff45384", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]     Checking once_cell v1.20.1
[INFO] [stderr]    Compiling hashbrown v0.15.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling libc v0.2.159
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]    Compiling typeid v1.0.2
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking nonmax v0.5.5
[INFO] [stderr]     Checking web-time v0.2.4
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]     Checking bevy_ptr v0.13.2
[INFO] [stderr]     Checking futures-lite v2.3.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking regex v1.11.0
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]    Compiling cc v1.1.24
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling indexmap v2.6.0
[INFO] [stderr]     Checking event-listener v5.3.1
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking unicode-xid v0.2.6
[INFO] [stderr]    Compiling syn v2.0.79
[INFO] [stderr]    Compiling ash v0.37.3+1.3.251
[INFO] [stderr]     Checking piper v0.2.4
[INFO] [stderr]    Compiling wgpu-hal v0.19.5
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking event-listener-strategy v0.5.2
[INFO] [stderr]     Checking accesskit v0.12.3
[INFO] [stderr]     Checking khronos-egl v6.0.0
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking tracing-log v0.1.4
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling wgpu-core v0.19.4
[INFO] [stderr]     Checking async-channel v2.3.1
[INFO] [stderr]     Checking async-lock v3.4.0
[INFO] [stderr]    Compiling uuid v1.10.0
[INFO] [stderr]     Checking async-executor v1.13.1
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking profiling v1.0.15
[INFO] [stderr]     Checking async-broadcast v0.5.1
[INFO] [stderr]    Compiling wgpu v0.19.4
[INFO] [stderr]     Checking const_soft_float v0.1.4
[INFO] [stderr]     Checking blocking v1.6.1
[INFO] [stderr]     Checking bevy_tasks v0.13.2
[INFO] [stderr]     Checking twox-hash v1.6.3
[INFO] [stderr]    Compiling toml_edit v0.21.1
[INFO] [stderr]     Checking unicode-ident v1.0.13
[INFO] [stderr]     Checking constgebra v0.1.4
[INFO] [stderr]     Checking const_panic v0.2.10
[INFO] [stderr]     Checking ktx2 v0.3.0
[INFO] [stderr]    Compiling rustix v0.38.37
[INFO] [stderr]     Checking linux-raw-sys v0.4.14
[INFO] [stderr]     Checking async-fs v2.1.2
[INFO] [stderr]     Checking radsort v0.1.1
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]     Checking euclid v0.22.11
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]     Checking svg_fmt v0.4.3
[INFO] [stderr]     Checking ttf-parser v0.24.1
[INFO] [stderr]    Compiling serde_json v1.0.128
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]    Compiling cpal v0.15.3
[INFO] [stderr]    Compiling inflections v1.1.1
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking rectangle-pack v0.4.2
[INFO] [stderr]     Checking guillotiere v0.6.2
[INFO] [stderr]    Compiling blake3 v1.5.4
[INFO] [stderr]     Checking x11rb-protocol v0.13.1
[INFO] [stderr]     Checking inotify v0.10.2
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking ogg v0.8.0
[INFO] [stderr]     Checking xi-unicode v0.3.0
[INFO] [stderr]    Compiling gilrs v0.10.10
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking grid v0.10.0
[INFO] [stderr]     Checking sysinfo v0.30.13
[INFO] [stderr]     Checking mio v1.0.2
[INFO] [stderr]     Checking const-fnv1a-hash v1.1.0
[INFO] [stderr]     Checking lewton v0.10.2
[INFO] [stderr]     Checking taffy v0.3.19
[INFO] [stderr]     Checking castaway v0.2.3
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking signal-hook v0.3.17
[INFO] [stderr]     Checking compact_str v0.8.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.4
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking owned_ttf_parser v0.24.0
[INFO] [stderr]     Checking ab_glyph v0.2.28
[INFO] [stderr]     Checking glyph_brush_layout v0.2.4
[INFO] [stderr]    Compiling bevy_macro_utils v0.13.2
[INFO] [stderr]    Compiling encase_derive_impl v0.7.0
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling thiserror-impl v1.0.64
[INFO] [stderr]    Compiling bytemuck_derive v1.7.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling bevy_utils_proc_macros v0.13.2
[INFO] [stderr]    Compiling bevy_reflect_derive v0.13.2
[INFO] [stderr]    Compiling bevy_ecs_macros v0.13.2
[INFO] [stderr]    Compiling bevy_derive v0.13.2
[INFO] [stderr]    Compiling bevy_asset_macros v0.13.2
[INFO] [stderr]    Compiling encase_derive v0.7.0
[INFO] [stderr]    Compiling derive_more v0.99.18
[INFO] [stderr]    Compiling bevy_render_macros v0.13.2
[INFO] [stderr]    Compiling bevy_encase_derive v0.13.2
[INFO] [stderr]    Compiling gltf-derive v1.4.1
[INFO] [stderr]    Compiling bevy_gizmos_macros v0.13.2
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling instability v0.3.2
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking thiserror v1.0.64
[INFO] [stderr]     Checking bytemuck v1.18.0
[INFO] [stderr]     Checking ruzstd v0.5.0
[INFO] [stderr]     Checking ahash v0.8.11
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking bitflags v2.6.0
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking glam v0.25.0
[INFO] [stderr]     Checking erased-serde v0.4.5
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking wgpu-types v0.19.2
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking gilrs-core v0.5.15
[INFO] [stderr]     Checking bevy_utils v0.13.2
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]     Checking lru v0.12.4
[INFO] [stderr]     Checking gltf-json v1.4.1
[INFO] [stderr]     Checking naga v0.19.2
[INFO] [stderr]     Checking rodio v0.17.3
[INFO] [stderr]     Checking bevy_math v0.13.2
[INFO] [stderr]     Checking bevy_mikktspace v0.13.2
[INFO] [stderr]     Checking hexasphere v10.0.0
[INFO] [stderr]     Checking encase v0.7.0
[INFO] [stderr]     Checking gltf v1.4.1
[INFO] [stderr]     Checking bevy_reflect v0.13.2
[INFO] [stderr]     Checking polling v3.7.3
[INFO] [stderr]     Checking x11rb v0.13.1
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking ratatui v0.28.1
[INFO] [stderr]     Checking naga_oil v0.13.0
[INFO] [stderr]     Checking accesskit_winit v0.17.0
[INFO] [stderr]     Checking bevy_ecs v0.13.2
[INFO] [stderr]     Checking bevy_app v0.13.2
[INFO] [stderr]     Checking bevy_log v0.13.2
[INFO] [stderr]     Checking bevy_core v0.13.2
[INFO] [stderr]     Checking bevy_input v0.13.2
[INFO] [stderr]     Checking bevy_a11y v0.13.2
[INFO] [stderr]     Checking bevy_time v0.13.2
[INFO] [stderr]     Checking bevy_asset v0.13.2
[INFO] [stderr]     Checking bevy_hierarchy v0.13.2
[INFO] [stderr]     Checking bevy_transform v0.13.2
[INFO] [stderr]     Checking bevy_diagnostic v0.13.2
[INFO] [stderr]     Checking bevy_window v0.13.2
[INFO] [stderr]     Checking bevy_gilrs v0.13.2
[INFO] [stderr]     Checking bevy_winit v0.13.2
[INFO] [stderr]     Checking bevy_audio v0.13.2
[INFO] [stderr]     Checking bevy_render v0.13.2
[INFO] [stderr]     Checking bevy_core_pipeline v0.13.2
[INFO] [stderr]     Checking bevy_animation v0.13.2
[INFO] [stderr]     Checking bevy_scene v0.13.2
[INFO] [stderr]     Checking bevy_sprite v0.13.2
[INFO] [stderr]     Checking bevy_pbr v0.13.2
[INFO] [stderr]     Checking bevy_text v0.13.2
[INFO] [stderr]     Checking bevy_ui v0.13.2
[INFO] [stderr]     Checking bevy_gizmos v0.13.2
[INFO] [stderr]     Checking bevy_gltf v0.13.2
[INFO] [stderr]     Checking bevy_internal v0.13.2
[INFO] [stderr]     Checking bevy v0.13.2
[INFO] [stderr]     Checking city-build-cli v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Segment`
[INFO] [stdout]  --> src/world/zone.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 |     map::{Position, Segment},
[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: `Rotation`
[INFO] [stdout]  --> src/world/zone.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::{Area, Rotation};
[INFO] [stdout]   |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy::prelude::*`
[INFO] [stdout]  --> src/world/pathway.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::map::Segment`
[INFO] [stdout]  --> src/world/pathway.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::map::Segment;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rotation` and `structure::Pathway`
[INFO] [stdout]  --> src/world/pathway.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{structure::Pathway, Rotation};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::clone`
[INFO] [stdout]  --> src/tui/map.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::clone;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::map::Segment`
[INFO] [stdout]  --> src/geometry/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::map::Segment;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::layout::Rect`
[INFO] [stdout]  --> src/geometry/rectangle/test.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::layout::Rect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tui::Terminal`
[INFO] [stdout]  --> src/app.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::tui::Terminal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Segment`
[INFO] [stdout]  --> src/world/zone.rs:5:21
[INFO] [stdout]   |
[INFO] [stdout] 5 |     map::{Position, Segment},
[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: `Rotation`
[INFO] [stdout]  --> src/world/zone.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::{Area, Rotation};
[INFO] [stdout]   |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy::prelude::*`
[INFO] [stdout]  --> src/world/pathway.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::map::Segment`
[INFO] [stdout]  --> src/world/pathway.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::map::Segment;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rotation` and `structure::Pathway`
[INFO] [stdout]  --> src/world/pathway.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{structure::Pathway, Rotation};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::clone`
[INFO] [stdout]  --> src/tui/map.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::clone;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::map::Segment`
[INFO] [stdout]  --> src/geometry/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::map::Segment;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::layout::Rect`
[INFO] [stdout]  --> src/geometry/rectangle/test.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ratatui::layout::Rect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::tui::Terminal`
[INFO] [stdout]  --> src/app.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::tui::Terminal;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]   --> src/world/zone.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn build(&self, app: &mut App) {
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/tui/cursor.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut log: ResMut<LogMessage>,
[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: unused variable: `log`
[INFO] [stdout]   --> src/tui/cursor.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut log: ResMut<LogMessage>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SingleFamilyHome` is never constructed
[INFO] [stdout]   --> src/housing.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub enum HousingType {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 36 |     Apartment,
[INFO] [stdout] 37 |     SingleFamilyHome,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_housing_vacancy` is never used
[INFO] [stdout]   --> src/housing.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_housing_vacancy<'a>(housing: &'a mut Housing<'a>) -> &mut HousingVacancy {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Segment` is never constructed
[INFO] [stdout]   --> src/map/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Segment {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entity` is never read
[INFO] [stdout]   --> src/world/mod.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct MapTile {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 42 |     pub terrain: TerrainType,
[INFO] [stdout] 43 |     pub entity: Option<Entity>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MapTile` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Building` is never constructed
[INFO] [stdout]   --> src/world/structure.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Structure {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 19 |     Building(Building),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Structure` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Zoned` is never constructed
[INFO] [stdout]   --> src/world/structure.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub enum Building {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 35 |     Zoned(Zone),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Building` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Water` is never constructed
[INFO] [stdout]  --> src/world/terrain.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum TerrainType {
[INFO] [stdout]   |          ----------- variant in this enum
[INFO] [stdout] 3 |     Ground,
[INFO] [stdout] 4 |     Water,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `TerrainType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZonePlugin` is never constructed
[INFO] [stdout]   --> src/world/zone.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ZonePlugin;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZoneBundle` is never constructed
[INFO] [stdout]   --> src/world/zone.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct ZoneBundle {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Residential`, `Commerce`, `Office`, and `Industry` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum Zone {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 27 |     Residential(Residential),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     Commerce(Commerce),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 29 |     Office(Office),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 30 |     Industry(Industry),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Zone` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `LowDensity`, `MediumDensity`, `MediumDensityMixedUse`, `HighDensity`, and `HighDensityMixedUse` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub enum Residential {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 35 |     LowDensity,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 36 |     MediumDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 37 |     MediumDensityMixedUse,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 38 |     HighDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 39 |     HighDensityMixedUse,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Residential` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `LowDensity` and `HighDensity` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum Commerce {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 44 |     LowDensity,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 45 |     HighDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Commerce` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `LowDensity` and `HighDensity` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub enum Office {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] 50 |     LowDensity,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 51 |     HighDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Office` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zone_area` is never used
[INFO] [stdout]   --> src/world/zone.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn zone_area(
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AgeGroup` is never used
[INFO] [stdout]   --> src/population/mod.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AgeGroup {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_age_group` is never used
[INFO] [stdout]   --> src/population/mod.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Age {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] 27 |     fn to_age_group(&self) -> AgeGroup {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_intersecting` and `complement` are never used
[INFO] [stdout]   --> src/geometry/interval/mod.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Interval {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn is_intersecting(&self, other: &Self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn complement(&self) -> (Option<Self>, Option<Self>) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_top_left_and_area`, `to_area`, `intersects_segment`, and `from_segment_end_points` are never used
[INFO] [stdout]   --> src/geometry/rectangle/mod.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Rectangle {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn from_top_left_and_area(top_left: &Point, area: &Area) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn to_area(&self) -> Area {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn intersects_segment(&self, segment_p1: &Point, segment_p2: &Point) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     fn from_segment_end_points(segment_p1: &Point, segment_p2: &Point) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/housing.rs:53:65
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_housing_vacancy<'a>(housing: &'a mut Housing<'a>) -> &mut HousingVacancy {
[INFO] [stdout]    |                                          --             --      ^^^^^^^^^^^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]    |                                          |              |
[INFO] [stdout]    |                                          |              the lifetime is named here
[INFO] [stdout]    |                                          the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_housing_vacancy<'a>(housing: &'a mut Housing<'a>) -> &'a mut HousingVacancy {
[INFO] [stdout]    |                                                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `app`
[INFO] [stdout]   --> src/world/zone.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn build(&self, app: &mut App) {
[INFO] [stdout]    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_app`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/tui/cursor.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut log: ResMut<LogMessage>,
[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: unused variable: `log`
[INFO] [stdout]   --> src/tui/cursor.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut log: ResMut<LogMessage>,
[INFO] [stdout]    |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_log`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SingleFamilyHome` is never constructed
[INFO] [stdout]   --> src/housing.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub enum HousingType {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 36 |     Apartment,
[INFO] [stdout] 37 |     SingleFamilyHome,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_housing_vacancy` is never used
[INFO] [stdout]   --> src/housing.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_housing_vacancy<'a>(housing: &'a mut Housing<'a>) -> &mut HousingVacancy {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Segment` is never constructed
[INFO] [stdout]   --> src/map/mod.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Segment {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entity` is never read
[INFO] [stdout]   --> src/world/mod.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct MapTile {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 42 |     pub terrain: TerrainType,
[INFO] [stdout] 43 |     pub entity: Option<Entity>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MapTile` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Building` is never constructed
[INFO] [stdout]   --> src/world/structure.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Structure {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 19 |     Building(Building),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Structure` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Zoned` is never constructed
[INFO] [stdout]   --> src/world/structure.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub enum Building {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] 35 |     Zoned(Zone),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Building` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Water` is never constructed
[INFO] [stdout]  --> src/world/terrain.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum TerrainType {
[INFO] [stdout]   |          ----------- variant in this enum
[INFO] [stdout] 3 |     Ground,
[INFO] [stdout] 4 |     Water,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `TerrainType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZonePlugin` is never constructed
[INFO] [stdout]   --> src/world/zone.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ZonePlugin;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ZoneBundle` is never constructed
[INFO] [stdout]   --> src/world/zone.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct ZoneBundle {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Residential`, `Commerce`, `Office`, and `Industry` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum Zone {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 27 |     Residential(Residential),
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 28 |     Commerce(Commerce),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 29 |     Office(Office),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 30 |     Industry(Industry),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Zone` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `LowDensity`, `MediumDensity`, `MediumDensityMixedUse`, `HighDensity`, and `HighDensityMixedUse` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub enum Residential {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 35 |     LowDensity,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 36 |     MediumDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 37 |     MediumDensityMixedUse,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 38 |     HighDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 39 |     HighDensityMixedUse,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Residential` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `LowDensity` and `HighDensity` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum Commerce {
[INFO] [stdout]    |          -------- variants in this enum
[INFO] [stdout] 44 |     LowDensity,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 45 |     HighDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Commerce` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `LowDensity` and `HighDensity` are never constructed
[INFO] [stdout]   --> src/world/zone.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub enum Office {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] 50 |     LowDensity,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 51 |     HighDensity,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Office` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `zone_area` is never used
[INFO] [stdout]   --> src/world/zone.rs:57:4
[INFO] [stdout]    |
[INFO] [stdout] 57 | fn zone_area(
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AgeGroup` is never used
[INFO] [stdout]   --> src/population/mod.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum AgeGroup {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_age_group` is never used
[INFO] [stdout]   --> src/population/mod.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl Age {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] 27 |     fn to_age_group(&self) -> AgeGroup {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Interval` is never constructed
[INFO] [stdout]  --> src/geometry/interval/mod.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Interval {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `MAX`, `intersection`, `is_intersecting`, and `complement` are never used
[INFO] [stdout]   --> src/geometry/interval/mod.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Interval {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new(start: usize, end: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub const MAX: Self = Self {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn intersection(&self, other: &Self) -> Option<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn is_intersecting(&self, other: &Self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn complement(&self) -> (Option<Self>, Option<Self>) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/geometry/rectangle/mod.rs:13:12
[INFO] [stdout]     |
[INFO] [stdout]  12 | impl Rectangle {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  13 |     pub fn from_coordinates((left, top): (usize, usize), (right, bottom): (usize, usize)) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  22 |     pub fn from_top_left_and_area(top_left: &Point, area: &Area) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  31 |     fn from_intervals(x: &Interval, y: &Interval) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  41 |     pub fn to_area(&self) -> Area {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     fn intersection(&self, other: &Self) -> Option<Self> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub fn intersects_segment(&self, segment_p1: &Point, segment_p2: &Point) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     fn from_segment_end_points(segment_p1: &Point, segment_p2: &Point) -> Self {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     fn top(&self) -> usize {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     fn right(&self) -> usize {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     fn bottom(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     fn left(&self) -> usize {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     fn complement(&self) -> Vec<Self> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn subtract(&self, other: &Rectangle) -> Vec<Rectangle> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn x_interval(&self) -> Interval {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     fn y_interval(&self) -> Interval {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/housing.rs:53:65
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_housing_vacancy<'a>(housing: &'a mut Housing<'a>) -> &mut HousingVacancy {
[INFO] [stdout]    |                                          --             --      ^^^^^^^^^^^^^^^^^^^ the same lifetime is elided here
[INFO] [stdout]    |                                          |              |
[INFO] [stdout]    |                                          |              the lifetime is named here
[INFO] [stdout]    |                                          the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn get_housing_vacancy<'a>(housing: &'a mut Housing<'a>) -> &'a mut HousingVacancy {
[INFO] [stdout]    |                                                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 20s
[INFO] running `Command { std: "docker" "inspect" "ef84eb5d7eed654ce5d0b352f2d29da8a8cc039cfe5006758bc650c29ff45384", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ef84eb5d7eed654ce5d0b352f2d29da8a8cc039cfe5006758bc650c29ff45384", kill_on_drop: false }`
[INFO] [stdout] ef84eb5d7eed654ce5d0b352f2d29da8a8cc039cfe5006758bc650c29ff45384
