[INFO] cloning repository https://github.com/AlphaNow37/space_animation
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AlphaNow37/space_animation" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlphaNow37%2Fspace_animation", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlphaNow37%2Fspace_animation'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8e7990a54576250f15d30eb8713dfcbedbaefe05
[INFO] checking AlphaNow37/space_animation/8e7990a54576250f15d30eb8713dfcbedbaefe05 against try#31561a63598a0f21fc74c024747ef1310fdd2eb2 for pr-133536
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlphaNow37%2Fspace_animation" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/AlphaNow37/space_animation on toolchain 31561a63598a0f21fc74c024747ef1310fdd2eb2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/AlphaNow37/space_animation
[INFO] finished tweaking git repo https://github.com/AlphaNow37/space_animation
[INFO] tweaked toml for git repo https://github.com/AlphaNow37/space_animation written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/AlphaNow37/space_animation 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" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 96ab83cd9d8702b708d109facd838096dfb65623db8e55722989747e057fb746
[INFO] running `Command { std: "docker" "start" "-a" "96ab83cd9d8702b708d109facd838096dfb65623db8e55722989747e057fb746", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "96ab83cd9d8702b708d109facd838096dfb65623db8e55722989747e057fb746", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96ab83cd9d8702b708d109facd838096dfb65623db8e55722989747e057fb746", kill_on_drop: false }`
[INFO] [stdout] 96ab83cd9d8702b708d109facd838096dfb65623db8e55722989747e057fb746
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4cf5445112f3103e4237d1d468f82aee97ea55557a398e9afd1a588fa5c29131
[INFO] running `Command { std: "docker" "start" "-a" "4cf5445112f3103e4237d1d468f82aee97ea55557a398e9afd1a588fa5c29131", kill_on_drop: false }`
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.86
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]     Checking bitflags v2.6.0
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]     Checking log v0.4.22
[INFO] [stderr]     Checking libloading v0.8.5
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]    Compiling rustix v0.38.34
[INFO] [stderr]     Checking linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling cc v1.1.7
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling thiserror v1.0.63
[INFO] [stderr]     Checking downcast-rs v1.2.1
[INFO] [stderr]    Compiling wayland-client v0.31.5
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking pin-project-lite v0.2.14
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]     Checking allocator-api2 v0.2.18
[INFO] [stderr]    Compiling naga v22.0.0
[INFO] [stderr]    Compiling ash v0.38.0+1.3.281
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]     Checking unicode-width v0.1.13
[INFO] [stderr]     Checking bit-vec v0.7.0
[INFO] [stderr]     Checking gpu-descriptor-types v0.2.0
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling quick-xml v0.34.0
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]     Checking bit-set v0.6.0
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]    Compiling wgpu-hal v22.0.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.19.2
[INFO] [stderr]    Compiling wayland-sys v0.31.4
[INFO] [stderr]     Checking cursor-icon v1.1.0
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]     Checking hexf-parse v0.2.1
[INFO] [stderr]     Checking arrayref v0.3.8
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking unicode-xid v0.2.4
[INFO] [stderr]     Checking ttf-parser v0.24.0
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]     Checking xcursor v0.3.6
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]    Compiling syn v2.0.72
[INFO] [stderr]     Checking memmap2 v0.9.4
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking wgpu-types v22.0.0
[INFO] [stderr]    Compiling wgpu-core v22.0.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]    Compiling litrs v0.4.1
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking profiling v1.0.15
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking regex-syntax v0.6.29
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.8
[INFO] [stderr]    Compiling wayland-scanner v0.31.4
[INFO] [stderr]    Compiling cfg_aliases v0.2.1
[INFO] [stderr]     Checking regex-syntax v0.8.3
[INFO] [stderr]     Checking renderdoc-sys v1.1.0
[INFO] [stderr]    Compiling winit v0.30.4
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling wgpu v22.1.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking as-raw-xcb-connection v1.0.1
[INFO] [stderr]     Checking x11rb-protocol v0.13.1
[INFO] [stderr]    Compiling wayland-backend v0.3.6
[INFO] [stderr]    Compiling document-features v0.2.10
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]     Checking gpu-descriptor v0.3.0
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking dpi v0.1.1
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking pollster v0.3.0
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking owned_ttf_parser v0.24.0
[INFO] [stderr]     Checking ab_glyph v0.2.28
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.63
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling bytemuck_derive v1.7.0
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking bytemuck v1.16.3
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking polling v3.7.2
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking wayland-protocols v0.32.3
[INFO] [stderr]     Checking wayland-cursor v0.31.5
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.3
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.3
[INFO] [stderr]     Checking x11rb v0.13.1
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking space_animation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::utils::make_trait_alias`
[INFO] [stdout]  --> src/world/variators/combinators.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::utils::make_trait_alias;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]   --> src/render_registry/bind_groups_store.rs:61:73
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub fn views<'a>(&'a self, queue: &'a wgpu::Queue) -> [Option<wgpu::QueueWriteBufferView>; StoreLabel::COUNT] {
[INFO] [stdout]    |                  -- lifetime `'a` declared here                         ^^^^^^^^^^^^^^^^^^^^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/content/mod.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let loc = world.push((move |world: &World| scale(time_sin.update(world)+2., time_sin.update(world)+2., time_sin.update(world)+2.)));
[INFO] [stdout]    |                          ^                                                                                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 96 -     let loc = world.push((move |world: &World| scale(time_sin.update(world)+2., time_sin.update(world)+2., time_sin.update(world)+2.)));
[INFO] [stdout] 96 +     let loc = world.push(move |world: &World| scale(time_sin.update(world)+2., time_sin.update(world)+2., time_sin.update(world)+2.));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::make_trait_alias`
[INFO] [stdout]  --> src/world/variators/combinators.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::utils::make_trait_alias;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]   --> src/render_registry/bind_groups_store.rs:61:73
[INFO] [stdout]    |
[INFO] [stdout] 61 |     pub fn views<'a>(&'a self, queue: &'a wgpu::Queue) -> [Option<wgpu::QueueWriteBufferView>; StoreLabel::COUNT] {
[INFO] [stdout]    |                  -- lifetime `'a` declared here                         ^^^^^^^^^^^^^^^^^^^^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/content/mod.rs:96:26
[INFO] [stdout]    |
[INFO] [stdout] 96 |     let loc = world.push((move |world: &World| scale(time_sin.update(world)+2., time_sin.update(world)+2., time_sin.update(world)+2.)));
[INFO] [stdout]    |                          ^                                                                                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 96 -     let loc = world.push((move |world: &World| scale(time_sin.update(world)+2., time_sin.update(world)+2., time_sin.update(world)+2.)));
[INFO] [stdout] 96 +     let loc = world.push(move |world: &World| scale(time_sin.update(world)+2., time_sin.update(world)+2., time_sin.update(world)+2.));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_fn_floating_point_arithmetic` has been stable since 1.82.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(portable_simd, const_fn_floating_point_arithmetic, trait_upcasting)]
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `const_fn_floating_point_arithmetic` has been stable since 1.82.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:27
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(portable_simd, const_fn_floating_point_arithmetic, trait_upcasting)]
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `refs`
[INFO] [stdout]    --> src/content/mod.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let refs = world.push_multi(|world: &World| [0., 1., 2.]);
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_refs`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `refs`
[INFO] [stdout]    --> src/content/mod.rs:102:9
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let refs = world.push_multi(|world: &World| [0., 1., 2.]);
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_refs`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]    --> src/content/mod.rs:102:34
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let refs = world.push_multi(|world: &World| [0., 1., 2.]);
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `world`
[INFO] [stdout]    --> src/content/mod.rs:102:34
[INFO] [stdout]     |
[INFO] [stdout] 102 |     let refs = world.push_multi(|world: &World| [0., 1., 2.]);
[INFO] [stdout]     |                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_world`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_rgbv` and `from_rgbf` are never used
[INFO] [stdout]   --> src/world/primitives/color.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Color {
[INFO] [stdout]    | ---------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn from_rgbv(rgb: Vec3) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn from_rgbf(r: f32, g: f32, b: f32) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gamma_to_linear` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn gamma_to_linear(c: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `srgb_to_rgb` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn srgb_to_rgb(rgb: Vec3) -> Vec3 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb_to_lms` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn rgb_to_lms(rgb: Vec3) -> Vec3 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lms_to_oklab` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn lms_to_oklab(lms: Vec3) -> Vec3 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb_to_oklab` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn rgb_to_oklab(rgb: Vec3) -> Vec3 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_rgbv` and `from_rgbf` are never used
[INFO] [stdout]   --> src/world/primitives/color.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Color {
[INFO] [stdout]    | ---------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn from_rgbv(rgb: Vec3) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn from_rgbf(r: f32, g: f32, b: f32) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gamma_to_linear` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 |     fn gamma_to_linear(c: f32) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add`, `mul`, `lea`, and `modulo` are never used
[INFO] [stdout]    --> src/world/variators/combinators.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout] 97  |     impl FloatExt for v -> f32 [
[INFO] [stdout]     |          -------- methods in this trait
[INFO] [stdout] 98  |         add(add: f32) -> AddF -> f32 {v + add};
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 99  |         mul(mul: f32) -> MulF -> f32 {v * mul};
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 100 |         lea(mul: f32, add: f32) -> LeaF -> f32 {v * mul + add};
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 101 |         modulo(period: f32) -> ModuloF -> f32 {v.rem_euclid(*period)};
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `var_modifier` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `srgb_to_rgb` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn srgb_to_rgb(rgb: Vec3) -> Vec3 {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Curve` is never used
[INFO] [stdout]  --> src/world/variators/curve.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub trait Curve<T> {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb_to_lms` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn rgb_to_lms(rgb: Vec3) -> Vec3 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILED_WIDTH` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:122:7
[INFO] [stdout]     |
[INFO] [stdout] 122 | const TILED_WIDTH: usize = TILED_HALF_WIDTH as usize * 2 + 1;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILED_COUNT` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:123:7
[INFO] [stdout]     |
[INFO] [stdout] 123 | const TILED_COUNT: usize = TILED_WIDTH * TILED_WIDTH;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lms_to_oklab` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn lms_to_oklab(lms: Vec3) -> Vec3 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rgb_to_oklab` is never used
[INFO] [stdout]   --> src/world/primitives/color.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn rgb_to_oklab(rgb: Vec3) -> Vec3 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_tiled_pos_base` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn make_tiled_pos_base(base: &LazyLock<VertexPoss>) -> (VertexPoss, VertexPoss) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TILED_CUBE_POS` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub static TILED_CUBE_POS: LazyLock<VertexPoss> = LazyLock::new(|| make_tiled_pos_len(VertexType::Cube.nb_vertex()));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TILED_SPHERE_POS` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub static TILED_SPHERE_POS: LazyLock<(VertexPoss, VertexPoss)> = LazyLock::new(|| make_tiled_pos_base(&CIRCLE_POS));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TILED_FLAT_POS` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub static TILED_FLAT_POS: LazyLock<(VertexPoss, VertexPoss)> = LazyLock::new(|| make_tiled_pos_base(&FLAT_POS));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_length`, `with_length_squared`, `with_length_or_zero_squared`, `with_length_or_zero`, `normalize_or_zero`, and `is_normalized` are never used
[INFO] [stdout]   --> src/utils/traits.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub trait Length: VectorSpace {
[INFO] [stdout]    |           ------ methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn with_length(self, length: f32) -> Self {self * length / self.length()}
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 43 |     fn with_length_squared(self, length: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn with_length_or_zero_squared(self, length: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     fn with_length_or_zero(self, length: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     fn normalize_or_zero(self) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     fn is_normalized(self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PRECOMPUTED_FACTORIAL` is never used
[INFO] [stdout]   --> src/utils/const_fns.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const PRECOMPUTED_FACTORIAL: usize = 20;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FACTORIALS` is never used
[INFO] [stdout]   --> src/utils/const_fns.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const FACTORIALS: [usize; PRECOMPUTED_FACTORIAL] = {
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial` is never used
[INFO] [stdout]   --> src/utils/const_fns.rs:55:14
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub const fn factorial(n: usize) -> usize {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add`, `mul`, `lea`, and `modulo` are never used
[INFO] [stdout]    --> src/world/variators/combinators.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout] 97  |     impl FloatExt for v -> f32 [
[INFO] [stdout]     |          -------- methods in this trait
[INFO] [stdout] 98  |         add(add: f32) -> AddF -> f32 {v + add};
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 99  |         mul(mul: f32) -> MulF -> f32 {v * mul};
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 100 |         lea(mul: f32, add: f32) -> LeaF -> f32 {v * mul + add};
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 101 |         modulo(period: f32) -> ModuloF -> f32 {v.rem_euclid(*period)};
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `var_modifier` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Count` is never constructed
[INFO] [stdout]  --> src/utils/iterators.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Count(usize);
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Curve` is never used
[INFO] [stdout]  --> src/world/variators/curve.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub trait Curve<T> {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `curr`, `next`, `after`, and `range_of` are never used
[INFO] [stdout]   --> src/utils/iterators.rs:5:12
[INFO] [stdout]    |
[INFO] [stdout] 4  | impl Count {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 5  |     pub fn new() -> Self {Self(0)}
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 6  |     pub fn curr(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9  |     pub fn next(&mut self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn after(&mut self, nth: usize) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn range_of(&mut self, width: usize) -> Range<usize> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_around` is never used
[INFO] [stdout]   --> src/math/transform.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn rotate_around(axis: impl TryInto<Dir>, a: Angle) -> Transform {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILED_WIDTH` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:122:7
[INFO] [stdout]     |
[INFO] [stdout] 122 | const TILED_WIDTH: usize = TILED_HALF_WIDTH as usize * 2 + 1;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TILED_COUNT` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:123:7
[INFO] [stdout]     |
[INFO] [stdout] 123 | const TILED_COUNT: usize = TILED_WIDTH * TILED_WIDTH;
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_tiled_pos_base` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn make_tiled_pos_base(base: &LazyLock<VertexPoss>) -> (VertexPoss, VertexPoss) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TILED_CUBE_POS` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 155 | pub static TILED_CUBE_POS: LazyLock<VertexPoss> = LazyLock::new(|| make_tiled_pos_len(VertexType::Cube.nb_vertex()));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TILED_SPHERE_POS` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub static TILED_SPHERE_POS: LazyLock<(VertexPoss, VertexPoss)> = LazyLock::new(|| make_tiled_pos_base(&CIRCLE_POS));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TILED_FLAT_POS` is never used
[INFO] [stdout]    --> src/render_registry/prefabs.rs:157:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub static TILED_FLAT_POS: LazyLock<(VertexPoss, VertexPoss)> = LazyLock::new(|| make_tiled_pos_base(&FLAT_POS));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/math/transform.rs:35:15
[INFO] [stdout]     |
[INFO] [stdout] 34  | impl Transform {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 35  |     pub const X: Self = Self::from_scalef(1., 0., 0.);
[INFO] [stdout]     |               ^
[INFO] [stdout] 36  |     pub const Y: Self = Self::from_scalef(0., 1., 0.);
[INFO] [stdout]     |               ^
[INFO] [stdout] 37  |     pub const Z: Self = Self::from_scalef(0., 0., 1.);
[INFO] [stdout]     |               ^
[INFO] [stdout] 38  |     pub const ID: Self = Self::from_scalef(1., 1., 1.);
[INFO] [stdout] 39  |     pub const EPSILON: Self = Self::from_array([f32::EPSILON; 12]);
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49  |     pub fn from_cols(x: Vec3, y: Vec3, z: Vec3) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73  |     pub fn from_scalev(vec: Vec3) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  |     pub fn from_transv(vec: Vec3) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn from_rotate_around(axis: impl TryInto<Dir>, angle: Angle) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn scale_squared(self) -> Vec3 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn scale(self) -> Vec3 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     pub fn approx_eq(self, other: Self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn to_array(self) -> [f32; 12] {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn rotate_around(self, axis: impl TryInto<Dir>, angle: Angle) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn with_rotation(self, other: Self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn with_trans(self, other: Self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_length`, `with_length_squared`, `with_length_or_zero_squared`, `with_length_or_zero`, `normalize_or_zero`, and `is_normalized` are never used
[INFO] [stdout]   --> src/utils/traits.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub trait Length: VectorSpace {
[INFO] [stdout]    |           ------ methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn with_length(self, length: f32) -> Self {self * length / self.length()}
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 43 |     fn with_length_squared(self, length: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     fn with_length_or_zero_squared(self, length: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     fn with_length_or_zero(self, length: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     fn normalize_or_zero(self) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     fn is_normalized(self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial` is never used
[INFO] [stdout]   --> src/utils/const_fns.rs:55:14
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub const fn factorial(n: usize) -> usize {
[INFO] [stdout]    |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clamp` is never used
[INFO] [stdout]    --> src/utils/macros.rs:44:20
[INFO] [stdout]     |
[INFO] [stdout] 43  |         impl $t {
[INFO] [stdout]     |         ------- method in this implementation
[INFO] [stdout] 44  |             pub fn clamp(self, min: Self, max: Self) -> Self {
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/math/transform.rs:253:1
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl_vector_space_simd!(Transform (16));
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_vector_space_simd` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Count` is never constructed
[INFO] [stdout]  --> src/utils/iterators.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Count(usize);
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `turn` is never used
[INFO] [stdout]   --> src/math/angle.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub trait ToAngle {
[INFO] [stdout]    |           ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn turn(self) -> Angle;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `curr`, `next`, `after`, and `range_of` are never used
[INFO] [stdout]   --> src/utils/iterators.rs:5:12
[INFO] [stdout]    |
[INFO] [stdout] 4  | impl Count {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 5  |     pub fn new() -> Self {Self(0)}
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 6  |     pub fn curr(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 9  |     pub fn next(&mut self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn after(&mut self, nth: usize) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn range_of(&mut self, width: usize) -> Range<usize> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_normal_vec`, `from_ab`, and `pointing_tr` are never used
[INFO] [stdout]   --> src/math/plane.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl Plane {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 8  |     pub fn from_normal(dir: Dir) -> Self {Self(dir)}
[INFO] [stdout] 9  |     pub fn from_normal_vec(vec: Vec3) -> Option<Self> {vec.dir().map(Self)}
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     pub fn from_ab(a: Vec3, b: Vec3) -> Option<Self> {Self::from_normal_vec(a.cross(b))}
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn pointing_tr(self, y_dir: Vec3) -> Transform {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_diag` and `approx_eq` are never used
[INFO] [stdout]   --> src/math/mat4.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Mat4 {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub const fn from_diag(x: f32, y: f32, z: f32, w: f32) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn approx_eq(self, other: Self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clamp` is never used
[INFO] [stdout]   --> src/utils/macros.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 43 |         impl $t {
[INFO] [stdout]    |         ------- method in this implementation
[INFO] [stdout] 44 |             pub fn clamp(self, min: Self, max: Self) -> Self {
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/math/mat4.rs:94:1
[INFO] [stdout]    |
[INFO] [stdout] 94 | impl_vector_space_simd!(Mat4 (16));
[INFO] [stdout]    | ---------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_vector_space_simd` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/math/transform.rs:35:15
[INFO] [stdout]     |
[INFO] [stdout] 34  | impl Transform {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 35  |     pub const X: Self = Self::from_scalef(1., 0., 0.);
[INFO] [stdout]     |               ^
[INFO] [stdout] 36  |     pub const Y: Self = Self::from_scalef(0., 1., 0.);
[INFO] [stdout]     |               ^
[INFO] [stdout] 37  |     pub const Z: Self = Self::from_scalef(0., 0., 1.);
[INFO] [stdout]     |               ^
[INFO] [stdout] 38  |     pub const ID: Self = Self::from_scalef(1., 1., 1.);
[INFO] [stdout] 39  |     pub const EPSILON: Self = Self::from_array([f32::EPSILON; 12]);
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 73  |     pub fn from_scalev(vec: Vec3) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84  |     pub fn from_transv(vec: Vec3) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn scale_squared(self) -> Vec3 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn scale(self) -> Vec3 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn to_array(self) -> [f32; 12] {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn with_rotation(self, other: Self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn with_trans(self, other: Self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec2` is never used
[INFO] [stdout]  --> src/math/vec2.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn vec2(x: f32, y: f32) -> Vec2 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec4` is never used
[INFO] [stdout]  --> src/math/vec4.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn vec4(x: f32, y: f32, z: f32, w: f32) -> Vec4 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clamp` is never used
[INFO] [stdout]    --> src/utils/macros.rs:44:20
[INFO] [stdout]     |
[INFO] [stdout] 43  |         impl $t {
[INFO] [stdout]     |         ------- method in this implementation
[INFO] [stdout] 44  |             pub fn clamp(self, min: Self, max: Self) -> Self {
[INFO] [stdout]     |                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/math/transform.rs:253:1
[INFO] [stdout]     |
[INFO] [stdout] 253 | impl_vector_space_simd!(Transform (16));
[INFO] [stdout]     | --------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_vector_space_simd` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_bezier_curve`, `new_loop_curve`, `derivative`, and `eval_curve` are never used
[INFO] [stdout]   --> src/math/polynomial.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: VectorSpace, const N: usize> Polynomial<T, N, 1> {
[INFO] [stdout]    | -------------------------------------------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new_bezier_curve(points: [T; N]) -> Self {  // Can't be const because of the non-const T*f32 & T+T
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn new_loop_curve(points: [T; N]) -> [Polynomial<T, 4, 1>; N] where T: Length {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn derivative(&self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn eval_curve(&self, t: f32) -> T {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `turn` is never used
[INFO] [stdout]   --> src/math/angle.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub trait ToAngle {
[INFO] [stdout]    |           ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 60 |     fn turn(self) -> Angle;
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_const`, `derivative_x`, `derivative_y`, and `eval_surface` are never used
[INFO] [stdout]    --> src/math/polynomial.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout] 62  | impl<T: VectorSpace, const N: usize, const M: usize> Polynomial<T, N, M> {
[INFO] [stdout]     | ------------------------------------------------------------------------ associated items in this implementation
[INFO] [stdout] 63  |     pub fn new_const(point: T) -> Polynomial<T, N, M> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86  |     pub fn derivative_x(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95  |     pub fn derivative_y(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn eval_surface(&self, t1: f32, t2: f32) -> T {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_normal_vec`, `from_ab`, and `pointing_tr` are never used
[INFO] [stdout]   --> src/math/plane.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout] 7  | impl Plane {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 8  |     pub fn from_normal(dir: Dir) -> Self {Self(dir)}
[INFO] [stdout] 9  |     pub fn from_normal_vec(vec: Vec3) -> Option<Self> {vec.dir().map(Self)}
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     pub fn from_ab(a: Vec3, b: Vec3) -> Option<Self> {Self::from_normal_vec(a.cross(b))}
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn pointing_tr(self, y_dir: Vec3) -> Transform {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `mul_vec` is never used
[INFO] [stdout]    --> src/math/polynomial.rs:228:8
[INFO] [stdout]     |
[INFO] [stdout] 227 | impl<const N: usize, const M: usize> Polynomial<f32, N, M> {
[INFO] [stdout]     | ---------------------------------------------------------- method in this implementation
[INFO] [stdout] 228 |     fn mul_vec<T: Mul<f32, Output=T>+Copy>(self, rhs: T) -> Polynomial<T, N, M> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_diag` and `approx_eq` are never used
[INFO] [stdout]   --> src/math/mat4.rs:17:18
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Mat4 {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub const fn from_diag(x: f32, y: f32, z: f32, w: f32) -> Self {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn approx_eq(self, other: Self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `clamp` is never used
[INFO] [stdout]   --> src/utils/macros.rs:44:20
[INFO] [stdout]    |
[INFO] [stdout] 43 |         impl $t {
[INFO] [stdout]    |         ------- method in this implementation
[INFO] [stdout] 44 |             pub fn clamp(self, min: Self, max: Self) -> Self {
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/math/mat4.rs:94:1
[INFO] [stdout]    |
[INFO] [stdout] 94 | impl_vector_space_simd!(Mat4 (16));
[INFO] [stdout]    | ---------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_vector_space_simd` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec2` is never used
[INFO] [stdout]  --> src/math/vec2.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn vec2(x: f32, y: f32) -> Vec2 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vec4` is never used
[INFO] [stdout]  --> src/math/vec4.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn vec4(x: f32, y: f32, z: f32, w: f32) -> Vec4 {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_loop_curve` and `derivative` are never used
[INFO] [stdout]   --> src/math/polynomial.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T: VectorSpace, const N: usize> Polynomial<T, N, 1> {
[INFO] [stdout]    | -------------------------------------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn new_loop_curve(points: [T; N]) -> [Polynomial<T, 4, 1>; N] where T: Length {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn derivative(&self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_const` is never used
[INFO] [stdout]   --> src/math/polynomial.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | impl<T: VectorSpace, const N: usize, const M: usize> Polynomial<T, N, M> {
[INFO] [stdout]    | ------------------------------------------------------------------------ associated function in this implementation
[INFO] [stdout] 63 |     pub fn new_const(point: T) -> Polynomial<T, N, M> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `mul_vec` is never used
[INFO] [stdout]    --> src/math/polynomial.rs:228:8
[INFO] [stdout]     |
[INFO] [stdout] 227 | impl<const N: usize, const M: usize> Polynomial<f32, N, M> {
[INFO] [stdout]     | ---------------------------------------------------------- method in this implementation
[INFO] [stdout] 228 |     fn mul_vec<T: Mul<f32, Output=T>+Copy>(self, rhs: T) -> Polynomial<T, N, M> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.37s
[INFO] running `Command { std: "docker" "inspect" "4cf5445112f3103e4237d1d468f82aee97ea55557a398e9afd1a588fa5c29131", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4cf5445112f3103e4237d1d468f82aee97ea55557a398e9afd1a588fa5c29131", kill_on_drop: false }`
[INFO] [stdout] 4cf5445112f3103e4237d1d468f82aee97ea55557a398e9afd1a588fa5c29131
