[INFO] cloning repository https://github.com/McArthur-Alford/planets
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/McArthur-Alford/planets" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMcArthur-Alford%2Fplanets", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMcArthur-Alford%2Fplanets'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e1f92d784ab7c67ece3bac579267b6bf944489c9
[INFO] checking McArthur-Alford/planets against try#f77b5bc6c7c84df104f86b0dd01d9490e3923fa8 for pr-147834
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMcArthur-Alford%2Fplanets" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/McArthur-Alford/planets
[INFO] finished tweaking git repo https://github.com/McArthur-Alford/planets
[INFO] tweaked toml for git repo https://github.com/McArthur-Alford/planets written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/McArthur-Alford/planets on toolchain f77b5bc6c7c84df104f86b0dd01d9490e3923fa8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/McArthur-Alford/planets 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" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 669b3302632756179355f3300f362597fe65ded7c1e3edc41196219567ba59ce
[INFO] running `Command { std: "docker" "start" "-a" "669b3302632756179355f3300f362597fe65ded7c1e3edc41196219567ba59ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "669b3302632756179355f3300f362597fe65ded7c1e3edc41196219567ba59ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "669b3302632756179355f3300f362597fe65ded7c1e3edc41196219567ba59ce", kill_on_drop: false }`
[INFO] [stdout] 669b3302632756179355f3300f362597fe65ded7c1e3edc41196219567ba59ce
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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" "+f77b5bc6c7c84df104f86b0dd01d9490e3923fa8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fea215889d13f801e09abbbb94ca307f057d52ff62187edf59049ec5aba39aee
[INFO] running `Command { std: "docker" "start" "-a" "fea215889d13f801e09abbbb94ca307f057d52ff62187edf59049ec5aba39aee", kill_on_drop: false }`
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling bevy_reflect_derive v0.15.1
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking emath v0.30.0
[INFO] [stderr]    Compiling zerocopy v0.8.17
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.8
[INFO] [stderr]    Compiling getrandom v0.3.1
[INFO] [stderr]     Checking epaint_default_fonts v0.30.0
[INFO] [stderr]     Checking nohash-hasher v0.2.0
[INFO] [stderr]     Checking arboard v3.4.1
[INFO] [stderr]     Checking fuzzy-matcher v0.3.7
[INFO] [stderr]     Checking ecolor v0.30.0
[INFO] [stderr]    Compiling bevy-inspector-egui-derive v0.29.0
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking bevy_utils v0.15.1
[INFO] [stderr]     Checking owned_ttf_parser v0.25.0
[INFO] [stderr]     Checking ab_glyph v0.2.29
[INFO] [stderr]     Checking epaint v0.30.0
[INFO] [stderr]     Checking rand_core v0.9.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.0
[INFO] [stderr]     Checking egui v0.30.0
[INFO] [stderr]     Checking bevy_reflect v0.15.1
[INFO] [stderr]     Checking bevy_ecs v0.15.1
[INFO] [stderr]     Checking bevy_math v0.15.1
[INFO] [stderr]     Checking bevy_color v0.15.2
[INFO] [stderr]     Checking bevy_app v0.15.1
[INFO] [stderr]     Checking bevy_core v0.15.1
[INFO] [stderr]     Checking bevy_asset v0.15.1
[INFO] [stderr]     Checking bevy_time v0.15.1
[INFO] [stderr]     Checking bevy_a11y v0.15.1
[INFO] [stderr]     Checking bevy_log v0.15.1
[INFO] [stderr]     Checking bevy_hierarchy v0.15.1
[INFO] [stderr]     Checking bevy_input v0.15.1
[INFO] [stderr]     Checking bevy_diagnostic v0.15.1
[INFO] [stderr]     Checking bevy_transform v0.15.1
[INFO] [stderr]     Checking bevy_state v0.15.1
[INFO] [stderr]     Checking bevy_image v0.15.1
[INFO] [stderr]     Checking bevy_audio v0.15.1
[INFO] [stderr]     Checking bevy_window v0.15.1
[INFO] [stderr]     Checking bevy_gilrs v0.15.1
[INFO] [stderr]     Checking bevy_mesh v0.15.1
[INFO] [stderr]     Checking bevy_winit v0.15.1
[INFO] [stderr]     Checking bevy_render v0.15.1
[INFO] [stderr]     Checking bevy_core_pipeline v0.15.1
[INFO] [stderr]     Checking bevy_picking v0.15.1
[INFO] [stderr]     Checking bevy_animation v0.15.1
[INFO] [stderr]     Checking bevy_scene v0.15.1
[INFO] [stderr]     Checking bevy_egui v0.32.0
[INFO] [stderr]     Checking bevy_pbr v0.15.1
[INFO] [stderr]     Checking bevy_sprite v0.15.1
[INFO] [stderr]     Checking bevy_text v0.15.1
[INFO] [stderr]     Checking bevy_ui v0.15.1
[INFO] [stderr]     Checking bevy_gltf v0.15.1
[INFO] [stderr]     Checking bevy_gizmos v0.15.1
[INFO] [stderr]     Checking bevy-inspector-egui v0.29.1
[INFO] [stderr]     Checking bevy_internal v0.15.1
[INFO] [stderr]     Checking bevy_dylib v0.15.1
[INFO] [stderr]     Checking bevy v0.15.1
[INFO] [stderr]     Checking bevy-fps-counter v0.6.0
[INFO] [stderr]     Checking bevy_panorbit_camera v0.22.0
[INFO] [stderr]     Checking noisy_bevy v0.8.0
[INFO] [stderr]     Checking planets v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `bevy::time::common_conditions::on_timer`
[INFO] [stdout]  --> src/chunking.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bevy::time::common_conditions::on_timer;
[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: `bevy::utils::HashMap`
[INFO] [stdout]  --> src/chunking.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bevy::utils::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/colors.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{BTreeMap, BTreeSet},
[INFO] [stdout]   |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `pbr::ExtendedMaterial` and `utils::tracing::instrument::WithSubscriber`
[INFO] [stdout]  --> src/colors.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pbr::ExtendedMaterial, prelude::*, render::mesh::VertexAttributeValues,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     utils::tracing::instrument::WithSubscriber,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flatnormal::FlatNormalMaterial`
[INFO] [stdout]   --> src/colors.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     flatnormal::FlatNormalMaterial,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/colors.rs:29:49
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn randomize_colors(mut hexes: Query<(&mut HexColors)>) {
[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] 29 - pub(crate) fn randomize_colors(mut hexes: Query<(&mut HexColors)>) {
[INFO] [stdout] 29 + pub(crate) fn randomize_colors(mut hexes: Query<&mut HexColors >) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `color::LinearRgba`, `self`, and `self`
[INFO] [stdout]   --> src/flatnormal.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     color::LinearRgba,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |         self,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |             self, AsBindGroup, RenderPipelineDescriptor, ShaderRef, SpecializedMeshPipelineError,
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_inspector_egui::quick::WorldInspectorPlugin`
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use bevy_inspector_egui::quick::WorldInspectorPlugin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_panorbit_camera::PanOrbitCameraPlugin`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use bevy_panorbit_camera::PanOrbitCameraPlugin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `spawn_ready_chunks`
[INFO] [stdout]   --> src/main.rs:27:37
[INFO] [stdout]    |
[INFO] [stdout] 27 | use chunk_storage::{despawn_chunks, spawn_ready_chunks, ChunkingPlugin};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chunking::ChunkManagerDemoPlugin`
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use chunking::ChunkManagerDemoPlugin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/main.rs:58:22
[INFO] [stdout]    |
[INFO] [stdout] 58 |         .add_plugins((WireframePlugin))
[INFO] [stdout]    |                      ^               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 58 -         .add_plugins((WireframePlugin))
[INFO] [stdout] 58 +         .add_plugins(WireframePlugin )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy::time::common_conditions::on_timer`
[INFO] [stdout]  --> src/chunking.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bevy::time::common_conditions::on_timer;
[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: `bevy::utils::HashMap`
[INFO] [stdout]  --> src/chunking.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bevy::utils::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeMap`
[INFO] [stdout]  --> src/colors.rs:2:19
[INFO] [stdout]   |
[INFO] [stdout] 2 |     collections::{BTreeMap, BTreeSet},
[INFO] [stdout]   |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `pbr::ExtendedMaterial` and `utils::tracing::instrument::WithSubscriber`
[INFO] [stdout]  --> src/colors.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     pbr::ExtendedMaterial, prelude::*, render::mesh::VertexAttributeValues,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 8 |     utils::tracing::instrument::WithSubscriber,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `flatnormal::FlatNormalMaterial`
[INFO] [stdout]   --> src/colors.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     flatnormal::FlatNormalMaterial,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/colors.rs:29:49
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub(crate) fn randomize_colors(mut hexes: Query<(&mut HexColors)>) {
[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] 29 - pub(crate) fn randomize_colors(mut hexes: Query<(&mut HexColors)>) {
[INFO] [stdout] 29 + pub(crate) fn randomize_colors(mut hexes: Query<&mut HexColors >) {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `color::LinearRgba`, `self`, and `self`
[INFO] [stdout]   --> src/flatnormal.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     color::LinearRgba,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |         self,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |             self, AsBindGroup, RenderPipelineDescriptor, ShaderRef, SpecializedMeshPipelineError,
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_inspector_egui::quick::WorldInspectorPlugin`
[INFO] [stdout]   --> src/main.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use bevy_inspector_egui::quick::WorldInspectorPlugin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_panorbit_camera::PanOrbitCameraPlugin`
[INFO] [stdout]   --> src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use bevy_panorbit_camera::PanOrbitCameraPlugin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `spawn_ready_chunks`
[INFO] [stdout]   --> src/main.rs:27:37
[INFO] [stdout]    |
[INFO] [stdout] 27 | use chunk_storage::{despawn_chunks, spawn_ready_chunks, ChunkingPlugin};
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `chunking::ChunkManagerDemoPlugin`
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use chunking::ChunkManagerDemoPlugin;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/main.rs:58:22
[INFO] [stdout]    |
[INFO] [stdout] 58 |         .add_plugins((WireframePlugin))
[INFO] [stdout]    |                      ^               ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 58 -         .add_plugins((WireframePlugin))
[INFO] [stdout] 58 +         .add_plugins(WireframePlugin )
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `math::NormedVectorSpace`
[INFO] [stdout]  --> src/octree.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bevy::{math::NormedVectorSpace, pbr::wireframe::Wireframe, prelude::*};
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cell_map`
[INFO] [stdout]    --> src/chunking.rs:105:46
[INFO] [stdout]     |
[INFO] [stdout] 105 |                         let (local_geometry, cell_map) = geometry.sub_geometry(&cells);
[INFO] [stdout]     |                                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cell_map`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/chunking.rs:222:18
[INFO] [stdout]     |
[INFO] [stdout] 222 |         .retain(|index, chunk_data| !(chunk_data.entity.is_none()));
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/chunking.rs:301:12
[INFO] [stdout]     |
[INFO] [stdout] 301 |     let Ok(mut manager) = query.get_single_mut() else {
[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: `geometry`
[INFO] [stdout]    --> src/chunking.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 306 |         geometry,
[INFO] [stdout]     |         ^^^^^^^^ help: try ignoring the field: `geometry: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octree`
[INFO] [stdout]    --> src/chunking.rs:307:9
[INFO] [stdout]     |
[INFO] [stdout] 307 |         octree,
[INFO] [stdout]     |         ^^^^^^ help: try ignoring the field: `octree: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pov`
[INFO] [stdout]    --> src/chunking.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         pov,
[INFO] [stdout]     |         ^^^ help: try ignoring the field: `pov: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]    --> src/chunking.rs:311:9
[INFO] [stdout]     |
[INFO] [stdout] 311 |         sender,
[INFO] [stdout]     |         ^^^^^^ help: try ignoring the field: `sender: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]    --> src/chunking.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |         receiver,
[INFO] [stdout]     |         ^^^^^^^^ help: try ignoring the field: `receiver: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `workers`
[INFO] [stdout]    --> src/chunking.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |         workers,
[INFO] [stdout]     |         ^^^^^^^ help: try ignoring the field: `workers: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/colors.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let mut r = dark[0] + t * (bright[0] - dark[0]);
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/colors.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let mut g = dark[1] + t * (bright[1] - dark[1]);
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/colors.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |             let mut b = dark[2] + t * (bright[2] - dark[2]);
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fib`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) fn more_balls(fib: ResMut<FibonacciConfig>) {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_fib`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pipeline`
[INFO] [stdout]   --> src/flatnormal.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pipeline: &MaterialExtensionPipeline,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pipeline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/flatnormal.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         key: MaterialExtensionKey<Self>,
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flat_materials`
[INFO] [stdout]    --> src/geometry_data.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     flat_materials: ResMut<Assets<ExtendedMaterial<StandardMaterial, FlatNormalMaterial>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flat_materials`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meshes`
[INFO] [stdout]    --> src/geometry_data.rs:495:5
[INFO] [stdout]     |
[INFO] [stdout] 495 |     meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_meshes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chunker`
[INFO] [stdout]    --> src/geometry_data.rs:505:9
[INFO] [stdout]     |
[INFO] [stdout] 505 |     let chunker = ChunkManager::new(geom);
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunker`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/octree.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let mut k = 14.0;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/octree.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let mut m = 2.0 * self.capacity as f32 / cell_count as f32;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/main.rs:42:17
[INFO] [stdout]    |
[INFO] [stdout] 42 |     for (mut t, d) in query.iter_mut() {
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ChunkRequest` is more private than the item `ChunkManager::sender`
[INFO] [stdout]   --> src/chunking.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub sender: (Sender<ChunkRequest>, Receiver<ChunkRequest>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ChunkManager::sender` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `ChunkRequest` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/chunking.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct ChunkRequest {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ChunkResponse` is more private than the item `ChunkManager::receiver`
[INFO] [stdout]   --> src/chunking.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub receiver: (Sender<ChunkResponse>, Receiver<ChunkResponse>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ChunkManager::receiver` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `ChunkResponse` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/chunking.rs:25:1
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct ChunkResponse {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FibonacciConfig` is more private than the item `more_balls`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) fn more_balls(fib: ResMut<FibonacciConfig>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `more_balls` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `FibonacciConfig` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | struct FibonacciConfig(usize, Vec<Vec3>);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `fibonacci_sphere_visualiser::Point` is more private than the item `move_balls`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub(crate) fn move_balls(mut points: Query<(&mut Point, &mut Transform)>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `move_balls` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `fibonacci_sphere_visualiser::Point` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | struct Point {
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FibonacciConfig` is more private than the item `manage_fibonacci`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub(crate) fn manage_fibonacci(
[INFO] [stdout] 37 | |     fib: ResMut<FibonacciConfig>,
[INFO] [stdout] 38 | |     mut points: Query<&mut Point>,
[INFO] [stdout] 39 | |     mut commands: Commands,
[INFO] [stdout] 40 | |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout] 41 | |     mut materials: ResMut<Assets<StandardMaterial>>,
[INFO] [stdout] 42 | | ) {
[INFO] [stdout]    | |_^ function `manage_fibonacci` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `FibonacciConfig` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | struct FibonacciConfig(usize, Vec<Vec3>);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `fibonacci_sphere_visualiser::Point` is more private than the item `manage_fibonacci`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub(crate) fn manage_fibonacci(
[INFO] [stdout] 37 | |     fib: ResMut<FibonacciConfig>,
[INFO] [stdout] 38 | |     mut points: Query<&mut Point>,
[INFO] [stdout] 39 | |     mut commands: Commands,
[INFO] [stdout] 40 | |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout] 41 | |     mut materials: ResMut<Assets<StandardMaterial>>,
[INFO] [stdout] 42 | | ) {
[INFO] [stdout]    | |_^ function `manage_fibonacci` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `fibonacci_sphere_visualiser::Point` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | struct Point {
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Gizmos` is never constructed
[INFO] [stdout]   --> src/main.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Gizmos;
[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 `cells_to_vert` is never read
[INFO] [stdout]   --> src/chunk_storage.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct ChunkData {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub cells_to_vert: Option<BTreeMap<usize, usize>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ChunkIndex` is never used
[INFO] [stdout]   --> src/chunking.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) type ChunkIndex = Vec<u8>;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_WORKERS` is never used
[INFO] [stdout]   --> src/chunking.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const NUM_WORKERS: usize = 16;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkRequest` is never constructed
[INFO] [stdout]   --> src/chunking.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct ChunkRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkResponse` is never constructed
[INFO] [stdout]   --> src/chunking.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct ChunkResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ChunkState` is never used
[INFO] [stdout]   --> src/chunking.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ChunkState {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkData` is never constructed
[INFO] [stdout]   --> src/chunking.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct ChunkData {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkManager` is never constructed
[INFO] [stdout]   --> src/chunking.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct ChunkManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `print_self`, `spawn_workers`, `new`, `check_and_respawn_workers`, and `update_pov` are never used
[INFO] [stdout]    --> src/chunking.rs:69:8
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl ChunkManager {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout]  69 |     fn print_self(&self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     fn spawn_workers(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn new(geometry: GeometryData) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn check_and_respawn_workers(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn update_pov(&mut self, new_pov: Vec3) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_old_handles` is never used
[INFO] [stdout]    --> src/chunking.rs:213:8
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub fn cleanup_old_handles(mut query: Query<&mut ChunkManager>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_chunk_responses_system` is never used
[INFO] [stdout]    --> src/chunking.rs:231:8
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub fn process_chunk_responses_system(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_material` is never used
[INFO] [stdout]    --> src/chunking.rs:264:4
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn create_material(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_chunk_pov_system` is never used
[INFO] [stdout]    --> src/chunking.rs:280:15
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) fn update_chunk_pov_system(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_chunk_backlog_system` is never used
[INFO] [stdout]    --> src/chunking.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn process_chunk_backlog_system(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_workers_system` is never used
[INFO] [stdout]    --> src/chunking.rs:357:8
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub fn check_workers_system(mut query: Query<&mut ChunkManager>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_demo_chunk_manager` is never used
[INFO] [stdout]    --> src/chunking.rs:363:8
[INFO] [stdout]     |
[INFO] [stdout] 363 | pub fn setup_demo_chunk_manager(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkManagerDemoPlugin` is never constructed
[INFO] [stdout]    --> src/chunking.rs:383:12
[INFO] [stdout]     |
[INFO] [stdout] 383 | pub struct ChunkManagerDemoPlugin;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_sphere_point` is never used
[INFO] [stdout]  --> src/fibonacci_sphere.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub(crate) fn fibonacci_sphere_point(i: u32, n: u32) -> Vec3 {
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_sphere` is never used
[INFO] [stdout]   --> src/fibonacci_sphere.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) fn fibonacci_sphere(n: u32) -> Vec<Vec3> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FibonacciConfig` is never constructed
[INFO] [stdout]  --> src/fibonacci_sphere_visualiser.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct FibonacciConfig(usize, Vec<Vec3>);
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/fibonacci_sphere_visualiser.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct Point {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `more_balls` is never used
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) fn more_balls(fib: ResMut<FibonacciConfig>) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_balls` is never used
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub(crate) fn move_balls(mut points: Query<(&mut Point, &mut Transform)>) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manage_fibonacci` is never used
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) fn manage_fibonacci(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `deregulate`, `relax`, and `create_octree` are never used
[INFO] [stdout]    --> src/geometry_data.rs:178:19
[INFO] [stdout]     |
[INFO] [stdout]  27 | impl GeometryData {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub(crate) fn deregulate(self) -> Self {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub(crate) fn relax(self) -> Self {
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 394 |     pub(crate) fn create_octree(&self) -> Octree {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_demo_sphere` is never used
[INFO] [stdout]    --> src/geometry_data.rs:493:15
[INFO] [stdout]     |
[INFO] [stdout] 493 | pub(crate) fn setup_demo_sphere(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ordered_3tuple` is never used
[INFO] [stdout]  --> src/helpers.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn ordered_3tuple<T: Ord + Copy>((u, v, w): (T, T, T)) -> (T, T, T) {
[INFO] [stdout]   |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_chunks` is never used
[INFO] [stdout]    --> src/octree.rs:128:19
[INFO] [stdout]     |
[INFO] [stdout]  32 | impl Octree {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub(crate) fn get_chunks(&self, target: Vec3) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OctreeVisualiser` is never constructed
[INFO] [stdout]    --> src/octree.rs:238:19
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub(crate) struct OctreeVisualiser;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `octree_visualiser` is never used
[INFO] [stdout]    --> src/octree.rs:240:15
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub(crate) fn octree_visualiser(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OctreeVisualiserPlugin` is never constructed
[INFO] [stdout]    --> src/octree.rs:283:19
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub(crate) struct OctreeVisualiserPlugin;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `octree_visualiser_startup` is never used
[INFO] [stdout]    --> src/octree.rs:285:15
[INFO] [stdout]     |
[INFO] [stdout] 285 | pub(crate) fn octree_visualiser_startup(mut commands: Commands) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `math::NormedVectorSpace`
[INFO] [stdout]  --> src/octree.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bevy::{math::NormedVectorSpace, pbr::wireframe::Wireframe, prelude::*};
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cell_map`
[INFO] [stdout]    --> src/chunking.rs:105:46
[INFO] [stdout]     |
[INFO] [stdout] 105 |                         let (local_geometry, cell_map) = geometry.sub_geometry(&cells);
[INFO] [stdout]     |                                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cell_map`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> src/chunking.rs:222:18
[INFO] [stdout]     |
[INFO] [stdout] 222 |         .retain(|index, chunk_data| !(chunk_data.entity.is_none()));
[INFO] [stdout]     |                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/chunking.rs:301:12
[INFO] [stdout]     |
[INFO] [stdout] 301 |     let Ok(mut manager) = query.get_single_mut() else {
[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: `geometry`
[INFO] [stdout]    --> src/chunking.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 306 |         geometry,
[INFO] [stdout]     |         ^^^^^^^^ help: try ignoring the field: `geometry: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `octree`
[INFO] [stdout]    --> src/chunking.rs:307:9
[INFO] [stdout]     |
[INFO] [stdout] 307 |         octree,
[INFO] [stdout]     |         ^^^^^^ help: try ignoring the field: `octree: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pov`
[INFO] [stdout]    --> src/chunking.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         pov,
[INFO] [stdout]     |         ^^^ help: try ignoring the field: `pov: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sender`
[INFO] [stdout]    --> src/chunking.rs:311:9
[INFO] [stdout]     |
[INFO] [stdout] 311 |         sender,
[INFO] [stdout]     |         ^^^^^^ help: try ignoring the field: `sender: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `receiver`
[INFO] [stdout]    --> src/chunking.rs:312:9
[INFO] [stdout]     |
[INFO] [stdout] 312 |         receiver,
[INFO] [stdout]     |         ^^^^^^^^ help: try ignoring the field: `receiver: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `workers`
[INFO] [stdout]    --> src/chunking.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |         workers,
[INFO] [stdout]     |         ^^^^^^^ help: try ignoring the field: `workers: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/colors.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let mut r = dark[0] + t * (bright[0] - dark[0]);
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/colors.rs:53:17
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let mut g = dark[1] + t * (bright[1] - dark[1]);
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/colors.rs:54:17
[INFO] [stdout]    |
[INFO] [stdout] 54 |             let mut b = dark[2] + t * (bright[2] - dark[2]);
[INFO] [stdout]    |                 ----^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fib`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) fn more_balls(fib: ResMut<FibonacciConfig>) {
[INFO] [stdout]    |                          ^^^ help: if this is intentional, prefix it with an underscore: `_fib`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pipeline`
[INFO] [stdout]   --> src/flatnormal.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 41 |         pipeline: &MaterialExtensionPipeline,
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pipeline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]   --> src/flatnormal.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         key: MaterialExtensionKey<Self>,
[INFO] [stdout]    |         ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `flat_materials`
[INFO] [stdout]    --> src/geometry_data.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     flat_materials: ResMut<Assets<ExtendedMaterial<StandardMaterial, FlatNormalMaterial>>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_flat_materials`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `meshes`
[INFO] [stdout]    --> src/geometry_data.rs:495:5
[INFO] [stdout]     |
[INFO] [stdout] 495 |     meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_meshes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chunker`
[INFO] [stdout]    --> src/geometry_data.rs:505:9
[INFO] [stdout]     |
[INFO] [stdout] 505 |     let chunker = ChunkManager::new(geom);
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunker`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/octree.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let mut k = 14.0;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/octree.rs:173:13
[INFO] [stdout]     |
[INFO] [stdout] 173 |         let mut m = 2.0 * self.capacity as f32 / cell_count as f32;
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]   --> src/main.rs:42:17
[INFO] [stdout]    |
[INFO] [stdout] 42 |     for (mut t, d) in query.iter_mut() {
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ChunkRequest` is more private than the item `ChunkManager::sender`
[INFO] [stdout]   --> src/chunking.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub sender: (Sender<ChunkRequest>, Receiver<ChunkRequest>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ChunkManager::sender` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `ChunkRequest` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/chunking.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct ChunkRequest {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ChunkResponse` is more private than the item `ChunkManager::receiver`
[INFO] [stdout]   --> src/chunking.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub receiver: (Sender<ChunkResponse>, Receiver<ChunkResponse>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ChunkManager::receiver` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `ChunkResponse` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/chunking.rs:25:1
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct ChunkResponse {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FibonacciConfig` is more private than the item `more_balls`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) fn more_balls(fib: ResMut<FibonacciConfig>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `more_balls` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `FibonacciConfig` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | struct FibonacciConfig(usize, Vec<Vec3>);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `fibonacci_sphere_visualiser::Point` is more private than the item `move_balls`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub(crate) fn move_balls(mut points: Query<(&mut Point, &mut Transform)>) {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `move_balls` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `fibonacci_sphere_visualiser::Point` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | struct Point {
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FibonacciConfig` is more private than the item `manage_fibonacci`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub(crate) fn manage_fibonacci(
[INFO] [stdout] 37 | |     fib: ResMut<FibonacciConfig>,
[INFO] [stdout] 38 | |     mut points: Query<&mut Point>,
[INFO] [stdout] 39 | |     mut commands: Commands,
[INFO] [stdout] 40 | |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout] 41 | |     mut materials: ResMut<Assets<StandardMaterial>>,
[INFO] [stdout] 42 | | ) {
[INFO] [stdout]    | |_^ function `manage_fibonacci` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `FibonacciConfig` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | struct FibonacciConfig(usize, Vec<Vec3>);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `fibonacci_sphere_visualiser::Point` is more private than the item `manage_fibonacci`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub(crate) fn manage_fibonacci(
[INFO] [stdout] 37 | |     fib: ResMut<FibonacciConfig>,
[INFO] [stdout] 38 | |     mut points: Query<&mut Point>,
[INFO] [stdout] 39 | |     mut commands: Commands,
[INFO] [stdout] 40 | |     mut meshes: ResMut<Assets<Mesh>>,
[INFO] [stdout] 41 | |     mut materials: ResMut<Assets<StandardMaterial>>,
[INFO] [stdout] 42 | | ) {
[INFO] [stdout]    | |_^ function `manage_fibonacci` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `fibonacci_sphere_visualiser::Point` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | struct Point {
[INFO] [stdout]    | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Gizmos` is never constructed
[INFO] [stdout]   --> src/main.rs:33:8
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Gizmos;
[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 `cells_to_vert` is never read
[INFO] [stdout]   --> src/chunk_storage.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct ChunkData {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub cells_to_vert: Option<BTreeMap<usize, usize>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `ChunkIndex` is never used
[INFO] [stdout]   --> src/chunking.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) type ChunkIndex = Vec<u8>;
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NUM_WORKERS` is never used
[INFO] [stdout]   --> src/chunking.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const NUM_WORKERS: usize = 16;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkRequest` is never constructed
[INFO] [stdout]   --> src/chunking.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct ChunkRequest {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkResponse` is never constructed
[INFO] [stdout]   --> src/chunking.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct ChunkResponse {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ChunkState` is never used
[INFO] [stdout]   --> src/chunking.rs:32:10
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum ChunkState {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkData` is never constructed
[INFO] [stdout]   --> src/chunking.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub struct ChunkData {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkManager` is never constructed
[INFO] [stdout]   --> src/chunking.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct ChunkManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `print_self`, `spawn_workers`, `new`, `check_and_respawn_workers`, and `update_pov` are never used
[INFO] [stdout]    --> src/chunking.rs:69:8
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl ChunkManager {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout]  69 |     fn print_self(&self) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     fn spawn_workers(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn new(geometry: GeometryData) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn check_and_respawn_workers(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn update_pov(&mut self, new_pov: Vec3) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cleanup_old_handles` is never used
[INFO] [stdout]    --> src/chunking.rs:213:8
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub fn cleanup_old_handles(mut query: Query<&mut ChunkManager>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_chunk_responses_system` is never used
[INFO] [stdout]    --> src/chunking.rs:231:8
[INFO] [stdout]     |
[INFO] [stdout] 231 | pub fn process_chunk_responses_system(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_material` is never used
[INFO] [stdout]    --> src/chunking.rs:264:4
[INFO] [stdout]     |
[INFO] [stdout] 264 | fn create_material(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_chunk_pov_system` is never used
[INFO] [stdout]    --> src/chunking.rs:280:15
[INFO] [stdout]     |
[INFO] [stdout] 280 | pub(crate) fn update_chunk_pov_system(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_chunk_backlog_system` is never used
[INFO] [stdout]    --> src/chunking.rs:296:8
[INFO] [stdout]     |
[INFO] [stdout] 296 | pub fn process_chunk_backlog_system(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_workers_system` is never used
[INFO] [stdout]    --> src/chunking.rs:357:8
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub fn check_workers_system(mut query: Query<&mut ChunkManager>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_demo_chunk_manager` is never used
[INFO] [stdout]    --> src/chunking.rs:363:8
[INFO] [stdout]     |
[INFO] [stdout] 363 | pub fn setup_demo_chunk_manager(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChunkManagerDemoPlugin` is never constructed
[INFO] [stdout]    --> src/chunking.rs:383:12
[INFO] [stdout]     |
[INFO] [stdout] 383 | pub struct ChunkManagerDemoPlugin;
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_sphere_point` is never used
[INFO] [stdout]  --> src/fibonacci_sphere.rs:3:15
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub(crate) fn fibonacci_sphere_point(i: u32, n: u32) -> Vec3 {
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fibonacci_sphere` is never used
[INFO] [stdout]   --> src/fibonacci_sphere.rs:17:15
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub(crate) fn fibonacci_sphere(n: u32) -> Vec<Vec3> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FibonacciConfig` is never constructed
[INFO] [stdout]  --> src/fibonacci_sphere_visualiser.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct FibonacciConfig(usize, Vec<Vec3>);
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point` is never constructed
[INFO] [stdout]  --> src/fibonacci_sphere_visualiser.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct Point {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `more_balls` is never used
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub(crate) fn more_balls(fib: ResMut<FibonacciConfig>) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_balls` is never used
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub(crate) fn move_balls(mut points: Query<(&mut Point, &mut Transform)>) {
[INFO] [stdout]    |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manage_fibonacci` is never used
[INFO] [stdout]   --> src/fibonacci_sphere_visualiser.rs:36:15
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub(crate) fn manage_fibonacci(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `deregulate`, `relax`, and `create_octree` are never used
[INFO] [stdout]    --> src/geometry_data.rs:178:19
[INFO] [stdout]     |
[INFO] [stdout]  27 | impl GeometryData {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub(crate) fn deregulate(self) -> Self {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 182 |     pub(crate) fn relax(self) -> Self {
[INFO] [stdout]     |                   ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 394 |     pub(crate) fn create_octree(&self) -> Octree {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_demo_sphere` is never used
[INFO] [stdout]    --> src/geometry_data.rs:493:15
[INFO] [stdout]     |
[INFO] [stdout] 493 | pub(crate) fn setup_demo_sphere(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ordered_3tuple` is never used
[INFO] [stdout]  --> src/helpers.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub(crate) fn ordered_3tuple<T: Ord + Copy>((u, v, w): (T, T, T)) -> (T, T, T) {
[INFO] [stdout]   |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_chunks` is never used
[INFO] [stdout]    --> src/octree.rs:128:19
[INFO] [stdout]     |
[INFO] [stdout]  32 | impl Octree {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub(crate) fn get_chunks(&self, target: Vec3) -> Vec<Vec<usize>> {
[INFO] [stdout]     |                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OctreeVisualiser` is never constructed
[INFO] [stdout]    --> src/octree.rs:238:19
[INFO] [stdout]     |
[INFO] [stdout] 238 | pub(crate) struct OctreeVisualiser;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `octree_visualiser` is never used
[INFO] [stdout]    --> src/octree.rs:240:15
[INFO] [stdout]     |
[INFO] [stdout] 240 | pub(crate) fn octree_visualiser(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OctreeVisualiserPlugin` is never constructed
[INFO] [stdout]    --> src/octree.rs:283:19
[INFO] [stdout]     |
[INFO] [stdout] 283 | pub(crate) struct OctreeVisualiserPlugin;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `octree_visualiser_startup` is never used
[INFO] [stdout]    --> src/octree.rs:285:15
[INFO] [stdout]     |
[INFO] [stdout] 285 | pub(crate) fn octree_visualiser_startup(mut commands: Commands) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [optimized + debuginfo] target(s) in 2m 19s
[INFO] running `Command { std: "docker" "inspect" "fea215889d13f801e09abbbb94ca307f057d52ff62187edf59049ec5aba39aee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fea215889d13f801e09abbbb94ca307f057d52ff62187edf59049ec5aba39aee", kill_on_drop: false }`
[INFO] [stdout] fea215889d13f801e09abbbb94ca307f057d52ff62187edf59049ec5aba39aee
