[INFO] cloning repository https://github.com/bigbali/solar-system
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bigbali/solar-system" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbigbali%2Fsolar-system", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbigbali%2Fsolar-system'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 39a6abe0dcabd8acf07b3f9e91a0b22b3ad0500a
[INFO] checking bigbali/solar-system against try#0bdee9e879c87b7211d316e9152109cfd46c576b for pr-150097
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbigbali%2Fsolar-system" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-1-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/bigbali/solar-system
[INFO] finished tweaking git repo https://github.com/bigbali/solar-system
[INFO] tweaked toml for git repo https://github.com/bigbali/solar-system written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bigbali/solar-system on toolchain 0bdee9e879c87b7211d316e9152109cfd46c576b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/bigbali/solar-system 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" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8acb85919d0e750e818f788c5f747e03d400d12ad2ad5b62c635f10c85af8de2
[INFO] running `Command { std: "docker" "start" "-a" "8acb85919d0e750e818f788c5f747e03d400d12ad2ad5b62c635f10c85af8de2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8acb85919d0e750e818f788c5f747e03d400d12ad2ad5b62c635f10c85af8de2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8acb85919d0e750e818f788c5f747e03d400d12ad2ad5b62c635f10c85af8de2", kill_on_drop: false }`
[INFO] [stdout] 8acb85919d0e750e818f788c5f747e03d400d12ad2ad5b62c635f10c85af8de2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0bdee9e879c87b7211d316e9152109cfd46c576b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9fef878bebb62f1891b91d808533033344fbef1a73c8783942282be634c400ad
[INFO] running `Command { std: "docker" "start" "-a" "9fef878bebb62f1891b91d808533033344fbef1a73c8783942282be634c400ad", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling unicode-ident v1.0.16
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling winnow v0.7.1
[INFO] [stderr]    Compiling toml_datetime v0.6.8
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling getrandom v0.3.1
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]    Compiling indexmap v2.7.1
[INFO] [stderr]    Compiling crunchy v0.2.3
[INFO] [stderr]    Compiling syn v2.0.98
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking event-listener v5.4.0
[INFO] [stderr]    Compiling typeid v1.0.2
[INFO] [stderr]    Compiling toml_edit v0.22.23
[INFO] [stderr]    Compiling const-random-macro v0.1.16
[INFO] [stderr]     Checking event-listener-strategy v0.5.3
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling uuid v1.13.1
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling libm v0.2.11
[INFO] [stderr]     Checking async-channel v2.3.1
[INFO] [stderr]     Checking async-executor v1.13.1
[INFO] [stderr]     Checking const-random v0.1.18
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking bevy_tasks v0.15.1
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling cc v1.2.12
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling naga v23.1.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.14
[INFO] [stderr]    Compiling ash v0.38.0+1.3.281
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling pkg-config v0.3.31
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]    Compiling wgpu-hal v23.0.1
[INFO] [stderr]     Checking blocking v1.6.1
[INFO] [stderr]    Compiling wgpu-core v23.0.1
[INFO] [stderr]     Checking async-lock v3.4.0
[INFO] [stderr]    Compiling litrs v0.4.1
[INFO] [stderr]    Compiling wgpu v23.0.1
[INFO] [stderr]     Checking async-fs v2.1.2
[INFO] [stderr]     Checking zune-core v0.4.12
[INFO] [stderr]     Checking zune-jpeg v0.4.14
[INFO] [stderr]     Checking sysinfo v0.32.1
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling slotmap v1.0.7
[INFO] [stderr]    Compiling document-features v0.2.10
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling bevy_macro_utils v0.15.1
[INFO] [stderr]    Compiling encase_derive_impl v0.10.0
[INFO] [stderr]     Checking euclid v0.22.11
[INFO] [stderr]    Compiling serde_json v1.0.138
[INFO] [stderr]     Checking guillotiere v0.6.2
[INFO] [stderr]     Checking memmap2 v0.9.5
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]    Compiling winit v0.30.9
[INFO] [stderr]     Checking rectangle-pack v0.4.2
[INFO] [stderr]    Compiling cpal v0.15.3
[INFO] [stderr]     Checking unicode-ccc v0.2.0
[INFO] [stderr]    Compiling inflections v1.1.1
[INFO] [stderr]     Checking fontdb v0.16.2
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking ogg v0.8.0
[INFO] [stderr]    Compiling blake3 v1.5.5
[INFO] [stderr]    Compiling gilrs v0.11.0
[INFO] [stderr]     Checking unicode-bidi v0.3.18
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking sys-locale v0.3.2
[INFO] [stderr]     Checking unicode-linebreak v0.1.5
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking rangemap v1.5.1
[INFO] [stderr]     Checking self_cell v1.1.0
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]     Checking cursor-icon v1.1.0
[INFO] [stderr]     Checking dpi v0.1.1
[INFO] [stderr]     Checking lewton v0.10.2
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking grid v0.14.0
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]    Compiling imgui-sys v0.12.0
[INFO] [stderr]     Checking taffy v0.5.2
[INFO] [stderr]     Checking chlorine v1.0.13
[INFO] [stderr]     Checking mint v0.5.9
[INFO] [stderr]     Checking iana-time-zone v0.1.61
[INFO] [stderr]     Checking chrono v0.4.39
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]    Compiling bytemuck_derive v1.8.1
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling bevy_utils_proc_macros v0.15.1
[INFO] [stderr]    Compiling derive_more-impl v1.0.0
[INFO] [stderr]    Compiling bevy_reflect_derive v0.15.1
[INFO] [stderr]    Compiling assert_type_match v0.1.1
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling bevy_ecs_macros v0.15.1
[INFO] [stderr]    Compiling bevy_derive v0.15.1
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking bytemuck v1.21.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]    Compiling encase_derive v0.10.0
[INFO] [stderr]    Compiling bevy_asset_macros v0.15.1
[INFO] [stderr]     Checking image v0.25.5
[INFO] [stderr]    Compiling bevy_encase_derive v0.15.1
[INFO] [stderr]    Compiling bevy_render_macros v0.15.1
[INFO] [stderr]     Checking font-types v0.7.3
[INFO] [stderr]     Checking read-fonts v0.22.7
[INFO] [stderr]     Checking tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling gltf-derive v1.4.1
[INFO] [stderr]     Checking bitflags v2.8.0
[INFO] [stderr]     Checking glam v0.29.2
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking bevy_utils v0.15.1
[INFO] [stderr]     Checking petgraph v0.6.5
[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.2.0
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking wgpu-types v23.0.0
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking gpu-descriptor v0.3.1
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking ctrlc v3.4.5
[INFO] [stderr]     Checking skrifa v0.22.3
[INFO] [stderr]     Checking rustybuzz v0.14.1
[INFO] [stderr]     Checking alsa v0.9.1
[INFO] [stderr]     Checking derive_more v1.0.0
[INFO] [stderr]     Checking encase v0.10.0
[INFO] [stderr]     Checking bevy_reflect v0.15.1
[INFO] [stderr]     Checking bevy_mikktspace v0.15.1
[INFO] [stderr]     Checking hexasphere v15.1.0
[INFO] [stderr]     Checking inotify v0.11.0
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking gilrs-core v0.6.1
[INFO] [stderr]     Checking swash v0.1.19
[INFO] [stderr]     Checking rodio v0.19.0
[INFO] [stderr]     Checking gltf-json v1.4.1
[INFO] [stderr]    Compiling bevy_gizmos_macros v0.15.1
[INFO] [stderr]    Compiling bevy_state_macros v0.15.1
[INFO] [stderr]     Checking polling v3.7.4
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking x11rb v0.13.1
[INFO] [stderr]     Checking gltf v1.4.1
[INFO] [stderr]     Checking cosmic-text v0.12.1
[INFO] [stderr]     Checking bevy_ecs v0.15.1
[INFO] [stderr]     Checking bevy_math v0.15.1
[INFO] [stderr]     Checking naga_oil v0.16.0
[INFO] [stderr]     Checking imgui v0.12.0
[INFO] [stderr]    Compiling delegate v0.13.2
[INFO] [stderr]     Checking accesskit_winit v0.23.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_window v0.15.1
[INFO] [stderr]     Checking bevy_gilrs v0.15.1
[INFO] [stderr]     Checking bevy_image v0.15.1
[INFO] [stderr]     Checking bevy_audio 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_scene v0.15.1
[INFO] [stderr]     Checking bevy_animation v0.15.1
[INFO] [stderr]     Checking bevy_sprite v0.15.1
[INFO] [stderr]     Checking bevy_pbr 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_internal v0.15.1
[INFO] [stderr]     Checking bevy v0.15.1
[INFO] [stderr]     Checking bevy_flycam v0.15.0
[INFO] [stderr]     Checking iyes_perf_ui v0.4.0-rc.1 (https://github.com/IyesGames/iyes_perf_ui#d8f3cbb2)
[INFO] [stderr]     Checking bevy_mod_imgui v0.6.0
[INFO] [stderr]     Checking solar-system v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `RefCell` and `Ref`
[INFO] [stdout]  --> src/simulation/body.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cell::{Ref, RefCell};
[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: `sync::Mutex`
[INFO] [stdout]  --> src/simulation/settings.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{env, sync::Mutex};
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `color` and `render::camera`
[INFO] [stdout]  --> src/simulation/setup.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{color, prelude::*, render::camera};
[INFO] [stdout]   |            ^^^^^              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `transform`
[INFO] [stdout]  --> src/simulation/trajectory.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{prelude::*, transform};
[INFO] [stdout]   |                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParentProperties`
[INFO] [stdout]  --> src/ui/element/button.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::{Border, Builder, Computed, ParentProperties, Size, UiElement, UiElementType, UiNode};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RefMut` and `any::Any`
[INFO] [stdout]  --> src/ui/element/input.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     any::Any,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 3 |     cell::{RefCell, RefMut},
[INFO] [stdout]   |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `color::LinearRgba` and `scene::ron::value`
[INFO] [stdout]   --> src/ui/element/input.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | use bevy::{color::LinearRgba, scene::ron::value};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ColorStackToken`
[INFO] [stdout]   --> src/ui/element/input.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 | use imgui::{ColorStackToken, StyleStackToken};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HasChildren`
[INFO] [stdout]   --> src/ui/element/input.rs:18:44
[INFO] [stdout]    |
[INFO] [stdout] 18 |     rect::Rect, Border, Builder, Computed, HasChildren, Size, UiElement, UiElementType, UiNode,
[INFO] [stdout]    |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParentProperties`
[INFO] [stdout]  --> src/ui/element/rect.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{Border, Computed, ParentProperties, Size, UiElement, UiElementType, UiNode};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fmt` and `sync::Arc`
[INFO] [stdout]  --> src/ui/element/text.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt, sync::Arc};
[INFO] [stdout]   |           ^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cosmic_text::Color` and `self`
[INFO] [stdout]  --> src/ui/element/text.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     text::{self, cosmic_text::Color},
[INFO] [stdout]   |            ^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `apply_button_color` and `clear_button_color`
[INFO] [stdout]  --> src/ui/element/text.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::ui::{apply_button_color, clear_button_color, element::rect::Rect, UiColor};
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FlexAxisAlign` and `ParentProperties`
[INFO] [stdout]   --> src/ui/element/text.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 |     flex::{FlexAxisAlign, FlexCrossAxisAlign},
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 12 |     Border, Builder, Computed, ParentProperties, Size, UiElement, UiElementType, UiNode,
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `log::error` and `log::warn`
[INFO] [stdout]  --> src/ui/element/window.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{color::LinearRgba, log::error, log::warn};
[INFO] [stdout]   |                               ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `imgui::Condition`
[INFO] [stdout]  --> src/ui/element/window.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use imgui::Condition;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FlexChild`
[INFO] [stdout]   --> src/ui/element/window.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |     flex::{Flex, FlexChild},
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FlexAxisAlign`
[INFO] [stdout]  --> src/ui/window/spawn_window.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 |             flex::{self, FlexAxisAlign, FlexChild, FlexCrossAxisAlign},
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RefCell` and `Ref`
[INFO] [stdout]  --> src/simulation/body.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::cell::{Ref, RefCell};
[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: `sync::Mutex`
[INFO] [stdout]  --> src/simulation/settings.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{env, sync::Mutex};
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `color` and `render::camera`
[INFO] [stdout]  --> src/simulation/setup.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{color, prelude::*, render::camera};
[INFO] [stdout]   |            ^^^^^              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `transform`
[INFO] [stdout]  --> src/simulation/trajectory.rs:1:24
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{prelude::*, transform};
[INFO] [stdout]   |                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParentProperties`
[INFO] [stdout]  --> src/ui/element/button.rs:8:40
[INFO] [stdout]   |
[INFO] [stdout] 8 | use super::{Border, Builder, Computed, ParentProperties, Size, UiElement, UiElementType, UiNode};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RefMut` and `any::Any`
[INFO] [stdout]  --> src/ui/element/input.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     any::Any,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 3 |     cell::{RefCell, RefMut},
[INFO] [stdout]   |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `color::LinearRgba` and `scene::ron::value`
[INFO] [stdout]   --> src/ui/element/input.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | use bevy::{color::LinearRgba, scene::ron::value};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ColorStackToken`
[INFO] [stdout]   --> src/ui/element/input.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 | use imgui::{ColorStackToken, StyleStackToken};
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HasChildren`
[INFO] [stdout]   --> src/ui/element/input.rs:18:44
[INFO] [stdout]    |
[INFO] [stdout] 18 |     rect::Rect, Border, Builder, Computed, HasChildren, Size, UiElement, UiElementType, UiNode,
[INFO] [stdout]    |                                            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParentProperties`
[INFO] [stdout]  --> src/ui/element/rect.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use super::{Border, Computed, ParentProperties, Size, UiElement, UiElementType, UiNode};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `fmt` and `sync::Arc`
[INFO] [stdout]  --> src/ui/element/text.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{fmt, sync::Arc};
[INFO] [stdout]   |           ^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `cosmic_text::Color` and `self`
[INFO] [stdout]  --> src/ui/element/text.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 |     text::{self, cosmic_text::Color},
[INFO] [stdout]   |            ^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `apply_button_color` and `clear_button_color`
[INFO] [stdout]  --> src/ui/element/text.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::ui::{apply_button_color, clear_button_color, element::rect::Rect, UiColor};
[INFO] [stdout]   |                 ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FlexAxisAlign` and `ParentProperties`
[INFO] [stdout]   --> src/ui/element/text.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 |     flex::{FlexAxisAlign, FlexCrossAxisAlign},
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 12 |     Border, Builder, Computed, ParentProperties, Size, UiElement, UiElementType, UiNode,
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `log::error` and `log::warn`
[INFO] [stdout]  --> src/ui/element/window.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use bevy::{color::LinearRgba, log::error, log::warn};
[INFO] [stdout]   |                               ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `imgui::Condition`
[INFO] [stdout]  --> src/ui/element/window.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use imgui::Condition;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FlexChild`
[INFO] [stdout]   --> src/ui/element/window.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |     flex::{Flex, FlexChild},
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FlexAxisAlign`
[INFO] [stdout]  --> src/ui/window/spawn_window.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 |             flex::{self, FlexAxisAlign, FlexChild, FlexCrossAxisAlign},
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/physics.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     mut body_query: Query<(&mut Transform, &mut Body, Entity)>,
[INFO] [stdout]    |     ----^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/physics.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     mut body_query: Query<(&mut Transform, &mut Body, Entity)>,
[INFO] [stdout]    |     ----^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `step`
[INFO] [stdout]   --> src/simulation/trajectory.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     for step in 0..trajectory.steps {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_step`
[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/spawn/mod.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     mut commands: Commands,
[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/spawn/mod.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut gizmos: Gizmos,
[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/spawn/mod.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     mut camera: Query<&mut Transform, With<Camera>>,
[INFO] [stdout]    |     ----^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commands`
[INFO] [stdout]   --> src/spawn/mod.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     mut commands: Commands,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gizmos`
[INFO] [stdout]   --> src/spawn/mod.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut gizmos: Gizmos,
[INFO] [stdout]    |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gizmos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/spawn/mod.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     mut camera: Query<&mut Transform, With<Camera>>,
[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/spawn/mod.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let mut entity = commands.spawn((
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/spawn/mod.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     c: Query<&Projection>,
[INFO] [stdout]    |     ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/spawn/mod.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let mut entity = commands.spawn((
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/spawn/mod.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     mut commands: Commands,
[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/spawn/mod.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     mut preview: Res<SpawnBodyPreview>,
[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/spawn/mod.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     mut camera: Query<&mut Transform, With<Camera>>,
[INFO] [stdout]     |     ----^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commands`
[INFO] [stdout]    --> src/spawn/mod.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     mut commands: Commands,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/spawn/mod.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     c: Query<&Projection>,
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/spawn/mod.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |     if let Some(p) = &preview.0 {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor_right_before_drawing_child`
[INFO] [stdout]    --> src/ui/element/flex.rs:478:21
[INFO] [stdout]     |
[INFO] [stdout] 478 |                 let cursor_right_before_drawing_child = context.cursor_screen_pos();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_right_before_drawing_child`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ui/element/input.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut style_stack: Vec<StyleStackToken> = Vec::new();
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style_stack`
[INFO] [stdout]    --> src/ui/element/input.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut style_stack: Vec<StyleStackToken> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_style_stack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/ui/element/input.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let x = context.clone_style().frame_border_size;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> src/ui/element/mod.rs:57:35
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn calculate_min_width(&self, context: &imgui::Ui) -> Option<f32> {
[INFO] [stdout]    |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> src/ui/element/mod.rs:62:36
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn calculate_min_height(&self, context: &imgui::Ui) -> Option<f32> {
[INFO] [stdout]    |                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> src/ui/element/mod.rs:73:41
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn compute_children_size(&mut self, context: &imgui::Ui, parent_properties: &ParentProperties) {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_properties`
[INFO] [stdout]   --> src/ui/element/mod.rs:73:62
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn compute_children_size(&mut self, context: &imgui::Ui, parent_properties: &ParentProperties) {
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/physics.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 84 |     mut body_query: Query<(&mut Transform, &mut Body, Entity)>,
[INFO] [stdout]    |     ----^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/simulation/physics.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     mut body_query: Query<(&mut Transform, &mut Body, Entity)>,
[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/ui/left_window.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     mut elapsed_time: ResMut<crate::simulation::settings::ElapsedTime>,
[INFO] [stdout]    |     ----^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cb`
[INFO] [stdout]   --> src/ui/left_window.rs:68:29
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 if let Some(cb) = ui.begin_combo(
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cb`
[INFO] [stdout]   --> src/ui/left_window.rs:98:29
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 if let Some(cb) = ui.begin_combo(
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `outer_distance_from_body` and `gradient` are never read
[INFO] [stdout]   --> src/material/saturn_rings.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct SaturnRingMaterial {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub outer_distance_from_body: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     pub gradient: Vec4,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SaturnRingMaterial` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inclination`, `longitude_of_ascending_node`, `true_anomaly`, and `argument_of_perifocus` are never read
[INFO] [stdout]   --> src/simulation/body.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct BodyOrbitalElements {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 23 |     /// Tilt of the body's orbit
[INFO] [stdout] 24 |     pub inclination: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 25 |     pub longitude_of_ascending_node: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub true_anomaly: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub argument_of_perifocus: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BodyOrbitalElements` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `temperature`, `density`, `rotation`, `obliquity`, and `orbital_elements` are never read
[INFO] [stdout]   --> src/simulation/body.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct BodyData {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub temperature: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub density: f32,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub rotation: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub obliquity: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub orbital_elements: Option<BodyOrbitalElements>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BodyData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `downscaled` is never used
[INFO] [stdout]   --> src/simulation/body.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl BodyData {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 92 |     /// No need for it now, but might be useful in the future
[INFO] [stdout] 93 |     pub fn downscaled(&self, parameters: &SimulationParameters) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Other` is never constructed
[INFO] [stdout]    --> src/simulation/body.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub enum BodyType {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 157 |     Other,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BodyType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entity` is never read
[INFO] [stdout]   --> src/simulation/settings.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct SelectedBody {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 62 |     pub entity: Option<Entity>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `start` is never read
[INFO] [stdout]   --> src/simulation/trajectory.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct TrajectoryPosition {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 11 |     pub start: Vec3,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TrajectoryPosition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `color` and `body_id` are never read
[INFO] [stdout]   --> src/simulation/trajectory.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct LiveTrajectoryPreviewPositions {
[INFO] [stdout]    |            ------------------------------ fields in this struct
[INFO] [stdout] 32 |     pub points: Vec<Vec3>,
[INFO] [stdout] 33 |     pub color: Color,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 34 |     pub body_id: Entity,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LiveTrajectoryPreviewPositions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SpawnBody` is never constructed
[INFO] [stdout]   --> src/spawn/mod.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SpawnBody {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/spawn/mod.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl SpawnBodyPreview {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 37 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `velocity`, `from`, and `to` are never read
[INFO] [stdout]   --> src/spawn/mod.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct SpawnBodyPreviewData {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 44 |     pub velocity: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 45 |     pub from: Vec3,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub to: Vec3,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnBodyPreviewData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_preview_system` is never used
[INFO] [stdout]    --> src/spawn/mod.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn render_preview_system(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `INPUT_BORDER` is never used
[INFO] [stdout]    --> src/ui/mod.rs:103:15
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl DefaultColor {
[INFO] [stdout]     | ----------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub const INPUT_BORDER: [f32; 4] = rgba([38.0, 38.0, 38.0, 1.0]);
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/ui/mod.rs:111:18
[INFO] [stdout]     |
[INFO] [stdout] 110 | impl UiColor {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 111 |     pub const fn new(color: Color) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_border`, `get_children`, and `get_type` are never used
[INFO] [stdout]   --> src/ui/element/mod.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub trait UiNode {
[INFO] [stdout]    |           ------ methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn get_border(&self) -> Option<Border>;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn get_children(&self) -> Option<&Vec<UiElement>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 40 |     fn get_children_mut(&mut self) -> Option<&mut Vec<UiElement>>;
[INFO] [stdout] 41 |     fn get_type(&self) -> UiElementType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HasChildren` is never used
[INFO] [stdout]   --> src/ui/element/mod.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub trait HasChildren {
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `computed_width`, `computed_height`, `width_sizing`, `height_sizing`, and `padding` are never read
[INFO] [stdout]   --> src/ui/element/mod.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub struct ParentProperties<'a> {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 87 |     computed_width: Option<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 88 |     computed_height: Option<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 89 |     width_sizing: &'a Size,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 90 |     height_sizing: &'a Size,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 91 |     padding: f32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UiElementType` is never used
[INFO] [stdout]    --> src/ui/element/mod.rs:109:10
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub enum UiElementType {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Button` and `Rect` are never constructed
[INFO] [stdout]    --> src/ui/element/mod.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub enum UiElement {
[INFO] [stdout]     |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 124 |     Button(Button),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     Rect(Rect),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UiElement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/ui/element/button.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Button {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 23 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ButtonChild` is never used
[INFO] [stdout]    --> src/ui/element/button.rs:137:11
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub trait ButtonChild: Builder {
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `border` and `background` are never read
[INFO] [stdout]   --> src/ui/element/dropdown.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Dropdown<T>
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub border: Option<Border>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 42 |     pub background: UiColor,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Dropdown` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `manual_id` is never used
[INFO] [stdout]   --> src/ui/element/dropdown.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl Dropdown<()> {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn manual_id(id: usize) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_value`, `get_selected`, `get_value`, `border`, and `background` are never used
[INFO] [stdout]    --> src/ui/element/dropdown.rs:81:12
[INFO] [stdout]     |
[INFO] [stdout]  60 | impl<T: PartialEq + Clone> Dropdown<T> {
[INFO] [stdout]     | -------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn add_value(&mut self, value: T, label: String) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn get_selected(&self) -> &DropdownValue<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn get_value(&self) -> &T {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn border(&mut self, v: Border) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn background(&mut self, v: UiColor) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_any` is never used
[INFO] [stdout]    --> src/ui/element/dropdown.rs:327:8
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub trait ErasedDropdown: Any + UiNode + Computed {
[INFO] [stdout]     |           -------------- method in this trait
[INFO] [stdout] 327 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `End` and `Center` are never constructed
[INFO] [stdout]   --> src/ui/element/flex.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum FlexAxisAlign {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] 16 |     Start,
[INFO] [stdout] 17 |     End,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 18 |     Center,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FlexAxisAlign` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `End` is never constructed
[INFO] [stdout]   --> src/ui/element/flex.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum FlexCrossAxisAlign {
[INFO] [stdout]    |          ------------------ variant in this enum
[INFO] [stdout] 30 |     Start,
[INFO] [stdout] 31 |     End,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FlexCrossAxisAlign` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `x` and `y` are never read
[INFO] [stdout]   --> src/ui/element/flex.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct ComputedOverflow {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 37 |     pub x: Option<u32>,
[INFO] [stdout]    |         ^
[INFO] [stdout] 38 |     pub y: Option<u32>,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComputedOverflow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `computed_overflow` is never read
[INFO] [stdout]   --> src/ui/element/flex.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct Flex {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 67 |     computed_overflow: ComputedOverflow,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Flex` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `align_cross_axis` and `border` are never used
[INFO] [stdout]    --> src/ui/element/flex.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 305 | impl Flex {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn align_cross_axis(&mut self, spacing: FlexCrossAxisAlign) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 340 |     pub fn border(&mut self, border: Option<Border>) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Left` and `Right` are never constructed
[INFO] [stdout]   --> src/ui/element/input.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | enum LabelPlacement {
[INFO] [stdout]    |      -------------- variants in this enum
[INFO] [stdout] 31 |     Left,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 32 |     Right,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LabelPlacement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `manual_id` is never used
[INFO] [stdout]   --> src/ui/element/input.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl InputI32 {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn manual_id(id: usize) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `width`, `height`, `background`, and `border` are never used
[INFO] [stdout]   --> src/ui/element/rect.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Rect {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new(width: Size, height: Size) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn width(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn height(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn background(&mut self, v: UiColor) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn border(&mut self, v: Border) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootBuilder` is never constructed
[INFO] [stdout]  --> src/ui/element/root.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RootBuilder<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `flex_default` and `flex` are never used
[INFO] [stdout]   --> src/ui/element/root.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<'a> RootBuilder<'a> {
[INFO] [stdout]    | ------------------------ methods in this implementation
[INFO] [stdout]  8 |     pub fn flex_default(&mut self) -> &mut Flex {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn flex(&mut self, flex: Flex) -> &mut Flex {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootNode` is never constructed
[INFO] [stdout]   --> src/ui/element/root.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct RootNode {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `children`, and `build` are never used
[INFO] [stdout]   --> src/ui/element/root.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl RootNode {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn children(&mut self, f: impl FnOnce(&mut RootBuilder)) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn build(&mut self, ui: &imgui::Ui) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `padding` is never read
[INFO] [stdout]   --> src/ui/element/text.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Text {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     padding: f32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Text` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width`, `height`, `foreground`, and `padding` are never used
[INFO] [stdout]   --> src/ui/element/text.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Text {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn width(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn height(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn foreground(&mut self, v: UiColor) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn padding(&mut self, v: f32) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `border`, `width`, and `height` are never read
[INFO] [stdout]   --> src/ui/element/window.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct UiWindow {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     border: Border,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     width: WindowSize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 65 |     height: WindowSize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width` and `height` are never used
[INFO] [stdout]    --> src/ui/element/window.rs:178:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl UiWindow {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub fn width(&mut self, v: WindowSize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn height(&mut self, v: WindowSize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_AXIS_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | static mut ALIGN_AXIS_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_CROSS_AXIS_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | static mut ALIGN_CROSS_AXIS_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_AXIS` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | static mut ALIGN_AXIS: FlexAxisAlign = FlexAxisAlign::Start;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_CROSS_AXIS` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | static mut ALIGN_CROSS_AXIS: FlexCrossAxisAlign = FlexCrossAxisAlign::Start;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEBUG` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | static mut DEBUG: bool = false;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FILL` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | static mut FILL: bool = false;
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BORDER` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | static mut BORDER: bool = true;
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HAUTO` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | static mut HAUTO: bool = true;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PLACEMENT_X_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | static mut PLACEMENT_X_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PLACEMENT_Y_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut PLACEMENT_Y_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `left_window_system` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn left_window_system(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `right_window_system` is never used
[INFO] [stdout]  --> src/ui/right_window.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn right_window_system(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:62:46
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 ui.checkbox("Fill", unsafe { &mut FILL });
[INFO] [stdout]    |                                              ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 ui.checkbox("Fill", unsafe { &raw mut FILL });
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `step`
[INFO] [stdout]   --> src/simulation/trajectory.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     for step in 0..trajectory.steps {
[INFO] [stdout]    |         ^^^^ help: if this is intentional, prefix it with an underscore: `_step`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:63:47
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 ui.checkbox("Debug", unsafe { &mut DEBUG });
[INFO] [stdout]    |                                               ^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 ui.checkbox("Debug", unsafe { &raw mut DEBUG });
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:64:48
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ui.checkbox("Border", unsafe { &mut BORDER });
[INFO] [stdout]    |                                                ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ui.checkbox("Border", unsafe { &raw mut BORDER });
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:65:48
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 ui.checkbox("H auto", unsafe { &mut HAUTO });
[INFO] [stdout]    |                                                ^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 ui.checkbox("H auto", unsafe { &raw mut HAUTO });
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/spawn/mod.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     mut commands: Commands,
[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/spawn/mod.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut gizmos: Gizmos,
[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/spawn/mod.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 54 |     mut camera: Query<&mut Transform, With<Camera>>,
[INFO] [stdout]    |     ----^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commands`
[INFO] [stdout]   --> src/spawn/mod.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 50 |     mut commands: Commands,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gizmos`
[INFO] [stdout]   --> src/spawn/mod.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     mut gizmos: Gizmos,
[INFO] [stdout]    |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gizmos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/spawn/mod.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     mut camera: Query<&mut Transform, With<Camera>>,
[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/spawn/mod.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let mut entity = commands.spawn((
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/spawn/mod.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     c: Query<&Projection>,
[INFO] [stdout]    |     ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity`
[INFO] [stdout]   --> src/spawn/mod.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 84 |     let mut entity = commands.spawn((
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/spawn/mod.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     mut commands: Commands,
[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/spawn/mod.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     mut preview: Res<SpawnBodyPreview>,
[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/spawn/mod.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     mut camera: Query<&mut Transform, With<Camera>>,
[INFO] [stdout]     |     ----^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `commands`
[INFO] [stdout]    --> src/spawn/mod.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     mut commands: Commands,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_commands`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/spawn/mod.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     c: Query<&Projection>,
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/spawn/mod.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |     if let Some(p) = &preview.0 {
[INFO] [stdout]     |                 ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cursor_right_before_drawing_child`
[INFO] [stdout]    --> src/ui/element/flex.rs:478:21
[INFO] [stdout]     |
[INFO] [stdout] 478 |                 let cursor_right_before_drawing_child = context.cursor_screen_pos();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cursor_right_before_drawing_child`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ui/element/input.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut style_stack: Vec<StyleStackToken> = Vec::new();
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `style_stack`
[INFO] [stdout]    --> src/ui/element/input.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |         let mut style_stack: Vec<StyleStackToken> = Vec::new();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_style_stack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/ui/element/input.rs:242:13
[INFO] [stdout]     |
[INFO] [stdout] 242 |         let x = context.clone_style().frame_border_size;
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> src/ui/element/mod.rs:57:35
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn calculate_min_width(&self, context: &imgui::Ui) -> Option<f32> {
[INFO] [stdout]    |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> src/ui/element/mod.rs:62:36
[INFO] [stdout]    |
[INFO] [stdout] 62 |     fn calculate_min_height(&self, context: &imgui::Ui) -> Option<f32> {
[INFO] [stdout]    |                                    ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]   --> src/ui/element/mod.rs:73:41
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn compute_children_size(&mut self, context: &imgui::Ui, parent_properties: &ParentProperties) {
[INFO] [stdout]    |                                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent_properties`
[INFO] [stdout]   --> src/ui/element/mod.rs:73:62
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn compute_children_size(&mut self, context: &imgui::Ui, parent_properties: &ParentProperties) {
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent_properties`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ui/left_window.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     mut elapsed_time: ResMut<crate::simulation::settings::ElapsedTime>,
[INFO] [stdout]    |     ----^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cb`
[INFO] [stdout]   --> src/ui/left_window.rs:68:29
[INFO] [stdout]    |
[INFO] [stdout] 68 |                 if let Some(cb) = ui.begin_combo(
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cb`
[INFO] [stdout]   --> src/ui/left_window.rs:98:29
[INFO] [stdout]    |
[INFO] [stdout] 98 |                 if let Some(cb) = ui.begin_combo(
[INFO] [stdout]    |                             ^^ help: if this is intentional, prefix it with an underscore: `_cb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `outer_distance_from_body` and `gradient` are never read
[INFO] [stdout]   --> src/material/saturn_rings.rs:20:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct SaturnRingMaterial {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub outer_distance_from_body: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 21 |     pub gradient: Vec4,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SaturnRingMaterial` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inclination`, `longitude_of_ascending_node`, `true_anomaly`, and `argument_of_perifocus` are never read
[INFO] [stdout]   --> src/simulation/body.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct BodyOrbitalElements {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 23 |     /// Tilt of the body's orbit
[INFO] [stdout] 24 |     pub inclination: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 25 |     pub longitude_of_ascending_node: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub true_anomaly: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub argument_of_perifocus: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BodyOrbitalElements` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `temperature`, `density`, `rotation`, `obliquity`, and `orbital_elements` are never read
[INFO] [stdout]   --> src/simulation/body.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct BodyData {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub temperature: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub density: f32,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub rotation: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub obliquity: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub orbital_elements: Option<BodyOrbitalElements>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BodyData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `downscaled` is never used
[INFO] [stdout]   --> src/simulation/body.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | impl BodyData {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] 92 |     /// No need for it now, but might be useful in the future
[INFO] [stdout] 93 |     pub fn downscaled(&self, parameters: &SimulationParameters) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Other` is never constructed
[INFO] [stdout]    --> src/simulation/body.rs:157:5
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub enum BodyType {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 157 |     Other,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BodyType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entity` is never read
[INFO] [stdout]   --> src/simulation/settings.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct SelectedBody {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 62 |     pub entity: Option<Entity>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `start` is never read
[INFO] [stdout]   --> src/simulation/trajectory.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct TrajectoryPosition {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] 11 |     pub start: Vec3,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TrajectoryPosition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `color` and `body_id` are never read
[INFO] [stdout]   --> src/simulation/trajectory.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct LiveTrajectoryPreviewPositions {
[INFO] [stdout]    |            ------------------------------ fields in this struct
[INFO] [stdout] 32 |     pub points: Vec<Vec3>,
[INFO] [stdout] 33 |     pub color: Color,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 34 |     pub body_id: Entity,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LiveTrajectoryPreviewPositions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SpawnBody` is never constructed
[INFO] [stdout]   --> src/spawn/mod.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SpawnBody {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/spawn/mod.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl SpawnBodyPreview {
[INFO] [stdout]    | --------------------- associated function in this implementation
[INFO] [stdout] 37 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `velocity`, `from`, and `to` are never read
[INFO] [stdout]   --> src/spawn/mod.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct SpawnBodyPreviewData {
[INFO] [stdout]    |            -------------------- fields in this struct
[INFO] [stdout] 44 |     pub velocity: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 45 |     pub from: Vec3,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub to: Vec3,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpawnBodyPreviewData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `render_preview_system` is never used
[INFO] [stdout]    --> src/spawn/mod.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn render_preview_system(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `INPUT_BORDER` is never used
[INFO] [stdout]    --> src/ui/mod.rs:103:15
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl DefaultColor {
[INFO] [stdout]     | ----------------- associated constant in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub const INPUT_BORDER: [f32; 4] = rgba([38.0, 38.0, 38.0, 1.0]);
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/ui/mod.rs:111:18
[INFO] [stdout]     |
[INFO] [stdout] 110 | impl UiColor {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 111 |     pub const fn new(color: Color) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_border`, `get_children`, and `get_type` are never used
[INFO] [stdout]   --> src/ui/element/mod.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub trait UiNode {
[INFO] [stdout]    |           ------ methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 35 |     fn get_border(&self) -> Option<Border>;
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn get_children(&self) -> Option<&Vec<UiElement>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 40 |     fn get_children_mut(&mut self) -> Option<&mut Vec<UiElement>>;
[INFO] [stdout] 41 |     fn get_type(&self) -> UiElementType;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HasChildren` is never used
[INFO] [stdout]   --> src/ui/element/mod.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub trait HasChildren {
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `computed_width`, `computed_height`, `width_sizing`, `height_sizing`, and `padding` are never read
[INFO] [stdout]   --> src/ui/element/mod.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub struct ParentProperties<'a> {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 87 |     computed_width: Option<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 88 |     computed_height: Option<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 89 |     width_sizing: &'a Size,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 90 |     height_sizing: &'a Size,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 91 |     padding: f32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UiElementType` is never used
[INFO] [stdout]    --> src/ui/element/mod.rs:109:10
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub enum UiElementType {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Button` and `Rect` are never constructed
[INFO] [stdout]    --> src/ui/element/mod.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub enum UiElement {
[INFO] [stdout]     |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 124 |     Button(Button),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     Rect(Rect),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UiElement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/ui/element/button.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Button {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 23 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ButtonChild` is never used
[INFO] [stdout]    --> src/ui/element/button.rs:137:11
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub trait ButtonChild: Builder {
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `border` and `background` are never read
[INFO] [stdout]   --> src/ui/element/dropdown.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Dropdown<T>
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub border: Option<Border>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 42 |     pub background: UiColor,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Dropdown` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `manual_id` is never used
[INFO] [stdout]   --> src/ui/element/dropdown.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl Dropdown<()> {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn manual_id(id: usize) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_value`, `get_selected`, `get_value`, `border`, and `background` are never used
[INFO] [stdout]    --> src/ui/element/dropdown.rs:81:12
[INFO] [stdout]     |
[INFO] [stdout]  60 | impl<T: PartialEq + Clone> Dropdown<T> {
[INFO] [stdout]     | -------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn add_value(&mut self, value: T, label: String) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  86 |     pub fn get_selected(&self) -> &DropdownValue<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn get_value(&self) -> &T {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn border(&mut self, v: Border) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn background(&mut self, v: UiColor) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_any` is never used
[INFO] [stdout]    --> src/ui/element/dropdown.rs:327:8
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub trait ErasedDropdown: Any + UiNode + Computed {
[INFO] [stdout]     |           -------------- method in this trait
[INFO] [stdout] 327 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `End` and `Center` are never constructed
[INFO] [stdout]   --> src/ui/element/flex.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum FlexAxisAlign {
[INFO] [stdout]    |          ------------- variants in this enum
[INFO] [stdout] 16 |     Start,
[INFO] [stdout] 17 |     End,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 18 |     Center,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FlexAxisAlign` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `End` is never constructed
[INFO] [stdout]   --> src/ui/element/flex.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub enum FlexCrossAxisAlign {
[INFO] [stdout]    |          ------------------ variant in this enum
[INFO] [stdout] 30 |     Start,
[INFO] [stdout] 31 |     End,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FlexCrossAxisAlign` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `x` and `y` are never read
[INFO] [stdout]   --> src/ui/element/flex.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct ComputedOverflow {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] 37 |     pub x: Option<u32>,
[INFO] [stdout]    |         ^
[INFO] [stdout] 38 |     pub y: Option<u32>,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComputedOverflow` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `computed_overflow` is never read
[INFO] [stdout]   --> src/ui/element/flex.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct Flex {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 67 |     computed_overflow: ComputedOverflow,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Flex` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `align_cross_axis` and `border` are never used
[INFO] [stdout]    --> src/ui/element/flex.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 305 | impl Flex {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn align_cross_axis(&mut self, spacing: FlexCrossAxisAlign) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 340 |     pub fn border(&mut self, border: Option<Border>) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Left` and `Right` are never constructed
[INFO] [stdout]   --> src/ui/element/input.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | enum LabelPlacement {
[INFO] [stdout]    |      -------------- variants in this enum
[INFO] [stdout] 31 |     Left,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 32 |     Right,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LabelPlacement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `manual_id` is never used
[INFO] [stdout]   --> src/ui/element/input.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl InputI32 {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn manual_id(id: usize) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `width`, `height`, `background`, and `border` are never used
[INFO] [stdout]   --> src/ui/element/rect.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Rect {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 18 |     pub fn new(width: Size, height: Size) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub fn width(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn height(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn background(&mut self, v: UiColor) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn border(&mut self, v: Border) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootBuilder` is never constructed
[INFO] [stdout]  --> src/ui/element/root.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct RootBuilder<'a> {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `flex_default` and `flex` are never used
[INFO] [stdout]   --> src/ui/element/root.rs:8:12
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl<'a> RootBuilder<'a> {
[INFO] [stdout]    | ------------------------ methods in this implementation
[INFO] [stdout]  8 |     pub fn flex_default(&mut self) -> &mut Flex {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn flex(&mut self, flex: Flex) -> &mut Flex {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RootNode` is never constructed
[INFO] [stdout]   --> src/ui/element/root.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct RootNode {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `children`, and `build` are never used
[INFO] [stdout]   --> src/ui/element/root.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl RootNode {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 32 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn children(&mut self, f: impl FnOnce(&mut RootBuilder)) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn build(&mut self, ui: &imgui::Ui) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `padding` is never read
[INFO] [stdout]   --> src/ui/element/text.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct Text {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 25 |     padding: f32,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Text` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width`, `height`, `foreground`, and `padding` are never used
[INFO] [stdout]   --> src/ui/element/text.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | impl Text {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn width(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn height(&mut self, v: Size) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn foreground(&mut self, v: UiColor) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn padding(&mut self, v: f32) -> &mut Self {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `border`, `width`, and `height` are never read
[INFO] [stdout]   --> src/ui/element/window.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct UiWindow {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     border: Border,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     width: WindowSize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 65 |     height: WindowSize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `width` and `height` are never used
[INFO] [stdout]    --> src/ui/element/window.rs:178:12
[INFO] [stdout]     |
[INFO] [stdout] 138 | impl UiWindow {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 178 |     pub fn width(&mut self, v: WindowSize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 183 |     pub fn height(&mut self, v: WindowSize) -> &mut Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_AXIS_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | static mut ALIGN_AXIS_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_CROSS_AXIS_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | static mut ALIGN_CROSS_AXIS_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_AXIS` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | static mut ALIGN_AXIS: FlexAxisAlign = FlexAxisAlign::Start;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ALIGN_CROSS_AXIS` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | static mut ALIGN_CROSS_AXIS: FlexCrossAxisAlign = FlexCrossAxisAlign::Start;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEBUG` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | static mut DEBUG: bool = false;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FILL` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | static mut FILL: bool = false;
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BORDER` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | static mut BORDER: bool = true;
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HAUTO` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | static mut HAUTO: bool = true;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PLACEMENT_X_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | static mut PLACEMENT_X_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PLACEMENT_Y_SELECT` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | static mut PLACEMENT_Y_SELECT: usize = 0;
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `left_window_system` is never used
[INFO] [stdout]   --> src/ui/left_window.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn left_window_system(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `right_window_system` is never used
[INFO] [stdout]  --> src/ui/right_window.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn right_window_system(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:62:46
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 ui.checkbox("Fill", unsafe { &mut FILL });
[INFO] [stdout]    |                                              ^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 62 |                 ui.checkbox("Fill", unsafe { &raw mut FILL });
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:63:47
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 ui.checkbox("Debug", unsafe { &mut DEBUG });
[INFO] [stdout]    |                                               ^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 63 |                 ui.checkbox("Debug", unsafe { &raw mut DEBUG });
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:64:48
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ui.checkbox("Border", unsafe { &mut BORDER });
[INFO] [stdout]    |                                                ^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 ui.checkbox("Border", unsafe { &raw mut BORDER });
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> src/ui/left_window.rs:65:48
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 ui.checkbox("H auto", unsafe { &mut HAUTO });
[INFO] [stdout]    |                                                ^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 ui.checkbox("H auto", unsafe { &raw mut HAUTO });
[INFO] [stdout]    |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10m 00s
[INFO] running `Command { std: "docker" "inspect" "9fef878bebb62f1891b91d808533033344fbef1a73c8783942282be634c400ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9fef878bebb62f1891b91d808533033344fbef1a73c8783942282be634c400ad", kill_on_drop: false }`
[INFO] [stdout] 9fef878bebb62f1891b91d808533033344fbef1a73c8783942282be634c400ad
