[INFO] cloning repository https://github.com/sparshg/renderer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sparshg/renderer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsparshg%2Frenderer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsparshg%2Frenderer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fe40eb1742bbd6e4e8bc0816492aad510a809889
[INFO] checking sparshg/renderer against master#292be5c7c05138d753bbd4b30db7a3f1a5c914f7 for pr-148271
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsparshg%2Frenderer" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/sparshg/renderer
[INFO] finished tweaking git repo https://github.com/sparshg/renderer
[INFO] tweaked toml for git repo https://github.com/sparshg/renderer written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sparshg/renderer on toolchain 292be5c7c05138d753bbd4b30db7a3f1a5c914f7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+292be5c7c05138d753bbd4b30db7a3f1a5c914f7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sparshg/renderer 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" "+292be5c7c05138d753bbd4b30db7a3f1a5c914f7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thiserror v1.0.67
[INFO] [stderr]   Downloaded pollster v0.4.0
[INFO] [stderr]   Downloaded thiserror-impl v1.0.67
[INFO] [stderr]   Downloaded cc v1.1.34
[INFO] [stderr]   Downloaded pollster-macro v0.4.0
[INFO] [stderr]   Downloaded wgpu v22.1.0
[INFO] [stderr]   Downloaded wgpu-core v22.1.0
[INFO] [stderr]   Downloaded bit-vec v0.7.0
[INFO] [stderr]   Downloaded bit-set v0.6.0
[INFO] [stderr]   Downloaded wgpu-hal v22.0.0
[INFO] [stderr]   Downloaded rustix v0.38.38
[INFO] [stderr]   Downloaded d3d12 v22.0.0
[INFO] [stderr]   Downloaded naga v22.1.0
[INFO] [stderr]   Downloaded delaunator v1.0.2
[INFO] [stderr]   Downloaded gpu-allocator v0.26.0
[INFO] [stderr]   Downloaded wgpu-types v22.0.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+292be5c7c05138d753bbd4b30db7a3f1a5c914f7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0d82c43f2242c18c7c3d173480329cf19b733044779c892311ca469c174addca
[INFO] running `Command { std: "docker" "start" "-a" "0d82c43f2242c18c7c3d173480329cf19b733044779c892311ca469c174addca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0d82c43f2242c18c7c3d173480329cf19b733044779c892311ca469c174addca", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d82c43f2242c18c7c3d173480329cf19b733044779c892311ca469c174addca", kill_on_drop: false }`
[INFO] [stdout] 0d82c43f2242c18c7c3d173480329cf19b733044779c892311ca469c174addca
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+292be5c7c05138d753bbd4b30db7a3f1a5c914f7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 864f27b90709961fff57a014f7e01d6b669aeae0ed7a8e38dc426160b293df41
[INFO] running `Command { std: "docker" "start" "-a" "864f27b90709961fff57a014f7e01d6b669aeae0ed7a8e38dc426160b293df41", kill_on_drop: false }`
[INFO] [stderr]     Checking bitflags v2.6.0
[INFO] [stderr]    Compiling rustix v0.38.38
[INFO] [stderr]     Checking linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling thiserror v1.0.67
[INFO] [stderr]     Checking libloading v0.8.5
[INFO] [stderr]    Compiling cc v1.1.34
[INFO] [stderr]    Compiling wayland-sys v0.31.5
[INFO] [stderr]    Compiling wayland-client v0.31.7
[INFO] [stderr]    Compiling quick-xml v0.36.2
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]    Compiling syn v2.0.87
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling naga v22.1.0
[INFO] [stderr]    Compiling ash v0.38.0+1.3.281
[INFO] [stderr]     Checking bit-vec v0.7.0
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking gpu-descriptor-types v0.2.0
[INFO] [stderr]    Compiling wgpu-hal v22.0.0
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking unicode-xid v0.2.6
[INFO] [stderr]     Checking ttf-parser v0.25.0
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]     Checking xcursor v0.3.8
[INFO] [stderr]    Compiling smithay-client-toolkit v0.18.1
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]     Checking miniz_oxide v0.8.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking bit-set v0.6.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking khronos-egl v6.0.0
[INFO] [stderr]     Checking wgpu-types v22.0.0
[INFO] [stderr]     Checking memmap2 v0.9.5
[INFO] [stderr]    Compiling wgpu-core v22.1.0
[INFO] [stderr]    Compiling wayland-scanner v0.31.5
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling cgmath v0.18.0
[INFO] [stderr]     Checking profiling v1.0.16
[INFO] [stderr]    Compiling document-features v0.2.10
[INFO] [stderr]     Checking flate2 v1.0.34
[INFO] [stderr]     Checking fdeflate v0.3.6
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]    Compiling wgpu v22.1.0
[INFO] [stderr]     Checking gpu-descriptor v0.3.0
[INFO] [stderr]    Compiling wayland-backend v0.3.7
[INFO] [stderr]     Checking zune-jpeg v0.4.13
[INFO] [stderr]     Checking anstream v0.6.17
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking png v0.17.14
[INFO] [stderr]     Checking approx v0.4.0
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking robust v0.2.3
[INFO] [stderr]     Checking raw-window-handle v0.5.2
[INFO] [stderr]     Checking const_panic v0.2.10
[INFO] [stderr]     Checking env_logger v0.11.5
[INFO] [stderr]     Checking delaunator v1.0.2
[INFO] [stderr]    Compiling encase_derive_impl v0.10.0
[INFO] [stderr]     Checking owned_ttf_parser v0.25.0
[INFO] [stderr]     Checking ab_glyph v0.2.29
[INFO] [stderr]    Compiling thiserror-impl v1.0.67
[INFO] [stderr]    Compiling bytemuck_derive v1.8.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling pollster-macro v0.4.0
[INFO] [stderr]     Checking pollster v0.4.0
[INFO] [stderr]    Compiling encase_derive v0.10.0
[INFO] [stderr]     Checking bytemuck v1.19.0
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking image v0.25.4
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking encase v0.10.0
[INFO] [stderr]     Checking polling v3.7.3
[INFO] [stderr]     Checking x11rb v0.13.1
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking wayland-protocols v0.31.2
[INFO] [stderr]     Checking calloop-wayland-source v0.2.0
[INFO] [stderr]     Checking wayland-cursor v0.31.7
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking wayland-protocols-wlr v0.2.0
[INFO] [stderr]     Checking wayland-protocols-plasma v0.2.0
[INFO] [stderr]     Checking sctk-adwaita v0.8.3
[INFO] [stderr]     Checking webg v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/animations/anim.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[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 imports: `cell::RefCell` and `rc::Rc`
[INFO] [stdout]  --> src/animations/mod.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{cell::RefCell, ops::Deref, rc::Rc};
[INFO] [stdout]   |           ^^^^^^^^^^^^^              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cmp::Ordering`
[INFO] [stdout]  --> src/core/shape.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     cmp::Ordering,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MetricSpace`
[INFO] [stdout]  --> src/core/shape.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 |     ElementWise, Matrix4, MetricSpace, One, Quaternion, Vector3, Vector4, VectorSpace, Zero,
[INFO] [stdout]   |                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/animations/anim.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[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 imports: `cell::RefCell` and `rc::Rc`
[INFO] [stdout]  --> src/animations/mod.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::{cell::RefCell, ops::Deref, rc::Rc};
[INFO] [stdout]   |           ^^^^^^^^^^^^^              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cmp::Ordering`
[INFO] [stdout]  --> src/core/shape.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     cmp::Ordering,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MetricSpace`
[INFO] [stdout]  --> src/core/shape.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 |     ElementWise, Matrix4, MetricSpace, One, Quaternion, Vector3, Vector4, VectorSpace, Zero,
[INFO] [stdout]   |                           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `PipelineType` is more private than the item `PipelineBuilder`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct PipelineBuilder<'a, T: PipelineType> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ struct `PipelineBuilder` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `PipelineType` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | trait PipelineType {}
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `PipelineType` is more private than the item `PipelineBuilder<'a, T>`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl<'a, T: PipelineType> PipelineBuilder<'a, T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ implementation `PipelineBuilder<'a, T>` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `PipelineType` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | trait PipelineType {}
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HasAnimation` is never used
[INFO] [stdout]   --> src/animations/mod.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub trait HasAnimation {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Animation` is never constructed
[INFO] [stdout]  --> src/animations/anim.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Animation<T, U, V>
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Linear` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | define_easing!(Linear, |t: f32| t);
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInSine` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | define_easing!(EaseInSine, |t: f32| 1. - (1. - t).cos());
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutSine` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 | define_easing!(EaseOutSine, |t: f32| t.sin());
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutSine` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | define_easing!(EaseInOutSine, |t: f32| 0.5 - (0.5 * t).cos());
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInQuad` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 | define_easing!(EaseInQuad, |t: f32| t * t);
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutQuad` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:26:16
[INFO] [stdout]    |
[INFO] [stdout] 26 | define_easing!(EaseOutQuad, |t: f32| t * (2. - t));
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutQuad` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 27 | define_easing!(EaseInOutQuad, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInCubic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:32:16
[INFO] [stdout]    |
[INFO] [stdout] 32 | define_easing!(EaseInCubic, |t: f32| t * t * t);
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutCubic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 33 | define_easing!(EaseOutCubic, |t: f32| (t - 1.).powi(3) + 1.);
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutCubic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:34:16
[INFO] [stdout]    |
[INFO] [stdout] 34 | define_easing!(EaseInOutCubic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInQuart` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 | define_easing!(EaseInQuart, |t: f32| t * t * t * t);
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutQuart` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 | define_easing!(EaseOutQuart, |t: f32| 1. - (t - 1.).powi(4));
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutQuart` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | define_easing!(EaseInOutQuart, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInQuint` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 | define_easing!(EaseInQuint, |t: f32| t * t * t * t * t);
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutQuint` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:47:16
[INFO] [stdout]    |
[INFO] [stdout] 47 | define_easing!(EaseOutQuint, |t: f32| 1. + (t - 1.).powi(5));
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutQuint` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:48:16
[INFO] [stdout]    |
[INFO] [stdout] 48 | define_easing!(EaseInOutQuint, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInExpo` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 | define_easing!(EaseInExpo, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutExpo` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:57:16
[INFO] [stdout]    |
[INFO] [stdout] 57 | define_easing!(EaseOutExpo, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutExpo` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:61:16
[INFO] [stdout]    |
[INFO] [stdout] 61 | define_easing!(EaseInOutExpo, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInCirc` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:68:16
[INFO] [stdout]    |
[INFO] [stdout] 68 | define_easing!(EaseInCirc, |t: f32| 1. - (1. - t * t).sqrt());
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutCirc` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 69 | define_easing!(EaseOutCirc, |t: f32| (1. - (t - 1.).powi(2)).sqrt());
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutCirc` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:70:16
[INFO] [stdout]    |
[INFO] [stdout] 70 | define_easing!(EaseInOutCirc, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInBack` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 | define_easing!(EaseInBack, |t: f32| t * t * (2.70158 * t - 1.70158));
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutBack` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:76:16
[INFO] [stdout]    |
[INFO] [stdout] 76 | define_easing!(EaseOutBack, |t: f32| 1.
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutBack` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:78:16
[INFO] [stdout]    |
[INFO] [stdout] 78 | define_easing!(EaseInOutBack, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInElastic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:83:16
[INFO] [stdout]    |
[INFO] [stdout] 83 | define_easing!(EaseInElastic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutElastic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:88:16
[INFO] [stdout]    |
[INFO] [stdout] 88 | define_easing!(EaseOutElastic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutElastic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 | define_easing!(EaseInOutElastic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInBounce` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:100:16
[INFO] [stdout]     |
[INFO] [stdout] 100 | define_easing!(EaseInBounce, |t: f32| 1. - EaseOutBounce.ease(1. - t));
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutBounce` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:101:16
[INFO] [stdout]     |
[INFO] [stdout] 101 | define_easing!(EaseOutBounce, |t: f32| match t {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutBounce` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:107:16
[INFO] [stdout]     |
[INFO] [stdout] 107 | define_easing!(EaseInOutBounce, |t: f32| match t {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RushInto` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:114:16
[INFO] [stdout]     |
[INFO] [stdout] 114 | define_easing!(RushInto, |t: f32| 2. * Smooth.ease(0.5 * t));
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RushFrom` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:115:16
[INFO] [stdout]     |
[INFO] [stdout] 115 | define_easing!(RushFrom, |t: f32| 2. * Smooth.ease(0.5 * (t + 1.)) - 1.);
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SlowInto` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:116:16
[INFO] [stdout]     |
[INFO] [stdout] 116 | define_easing!(SlowInto, |t: f32| (1. - (1. - t).powi(2)).sqrt());
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DoubleSmooth` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:117:16
[INFO] [stdout]     |
[INFO] [stdout] 117 | define_easing!(DoubleSmooth, |t: f32| match t {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThereAndBack` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:121:16
[INFO] [stdout]     |
[INFO] [stdout] 121 | define_easing!(ThereAndBack, |t: f32| Smooth.ease(1. - (2. * t - 1.).abs()));
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wiggle` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub struct Wiggle(pub f32);
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExponentialDecay` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub struct ExponentialDecay(pub f32);
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/core/mod.rs:32:16
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub model: Matrix4<f32>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/core/mod.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub color: Vector4<f32>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove` is never used
[INFO] [stdout]   --> src/core/mod.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 76 | impl<'a> Scene<'a> {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn remove<T: HasPoints + 'a>(&self, shape: Mobject<T>) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `upcast` and `remove` are never used
[INFO] [stdout]    --> src/core/mod.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<'a> InnerScene<'a> {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn upcast<T: HasPoints + 'a>(shape: Rc<RefCell<Shape<T>>>) -> Rc<RefCell<dyn Renderable + 'a>> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn remove<T: HasPoints + 'a>(&mut self, shape: Mobject<T>) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/core/camera.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct CameraUniform {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/core/camera.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / #[repr(C)]
[INFO] [stdout] 183 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 184 | | pub struct CameraUniform {
[INFO] [stdout] ...   |
[INFO] [stdout] 187 | |     view_proj: [[f32; 4]; 4],
[INFO] [stdout] 188 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `rotate` and `scale_vec` are never used
[INFO] [stdout]    --> src/core/shape.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout]  97 | impl<T: HasPoints> Mobject<T> {
[INFO] [stdout]     | ----------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn rotate(&self, rotation: Quaternion<f32>) -> &Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn scale_vec(&self, scale: impl Into<Vector3<f32>>) -> &Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_sampler`, `add_texture`, `add_sampler_filterable`, and `add_texture_float_filterable_d2` are never used
[INFO] [stdout]   --> src/core/utils/bindgroup.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl BindGroupBuilder {
[INFO] [stdout]    | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn add_sampler(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn add_texture(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn add_sampler_filterable(self, visibility: wgpu::ShaderStages) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn add_texture_float_filterable_d2(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sampler` is never read
[INFO] [stdout]  --> src/texture.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     pub sampler: wgpu::Sampler,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/texture.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 12 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `PipelineType` is more private than the item `PipelineBuilder`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct PipelineBuilder<'a, T: PipelineType> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ struct `PipelineBuilder` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `PipelineType` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | trait PipelineType {}
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `PipelineType` is more private than the item `PipelineBuilder<'a, T>`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl<'a, T: PipelineType> PipelineBuilder<'a, T> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ implementation `PipelineBuilder<'a, T>` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `PipelineType` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/core/utils/pipeline.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | trait PipelineType {}
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HasAnimation` is never used
[INFO] [stdout]   --> src/animations/mod.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub trait HasAnimation {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Animation` is never constructed
[INFO] [stdout]  --> src/animations/anim.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Animation<T, U, V>
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Linear` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout] 19 | define_easing!(Linear, |t: f32| t);
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInSine` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 | define_easing!(EaseInSine, |t: f32| 1. - (1. - t).cos());
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutSine` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:23:16
[INFO] [stdout]    |
[INFO] [stdout] 23 | define_easing!(EaseOutSine, |t: f32| t.sin());
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutSine` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | define_easing!(EaseInOutSine, |t: f32| 0.5 - (0.5 * t).cos());
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInQuad` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 | define_easing!(EaseInQuad, |t: f32| t * t);
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutQuad` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:26:16
[INFO] [stdout]    |
[INFO] [stdout] 26 | define_easing!(EaseOutQuad, |t: f32| t * (2. - t));
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutQuad` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 27 | define_easing!(EaseInOutQuad, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInCubic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:32:16
[INFO] [stdout]    |
[INFO] [stdout] 32 | define_easing!(EaseInCubic, |t: f32| t * t * t);
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutCubic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 33 | define_easing!(EaseOutCubic, |t: f32| (t - 1.).powi(3) + 1.);
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutCubic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:34:16
[INFO] [stdout]    |
[INFO] [stdout] 34 | define_easing!(EaseInOutCubic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInQuart` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 | define_easing!(EaseInQuart, |t: f32| t * t * t * t);
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutQuart` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:40:16
[INFO] [stdout]    |
[INFO] [stdout] 40 | define_easing!(EaseOutQuart, |t: f32| 1. - (t - 1.).powi(4));
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutQuart` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 41 | define_easing!(EaseInOutQuart, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInQuint` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:46:16
[INFO] [stdout]    |
[INFO] [stdout] 46 | define_easing!(EaseInQuint, |t: f32| t * t * t * t * t);
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutQuint` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:47:16
[INFO] [stdout]    |
[INFO] [stdout] 47 | define_easing!(EaseOutQuint, |t: f32| 1. + (t - 1.).powi(5));
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutQuint` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:48:16
[INFO] [stdout]    |
[INFO] [stdout] 48 | define_easing!(EaseInOutQuint, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInExpo` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 53 | define_easing!(EaseInExpo, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutExpo` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:57:16
[INFO] [stdout]    |
[INFO] [stdout] 57 | define_easing!(EaseOutExpo, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutExpo` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:61:16
[INFO] [stdout]    |
[INFO] [stdout] 61 | define_easing!(EaseInOutExpo, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInCirc` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:68:16
[INFO] [stdout]    |
[INFO] [stdout] 68 | define_easing!(EaseInCirc, |t: f32| 1. - (1. - t * t).sqrt());
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutCirc` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 69 | define_easing!(EaseOutCirc, |t: f32| (1. - (t - 1.).powi(2)).sqrt());
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutCirc` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:70:16
[INFO] [stdout]    |
[INFO] [stdout] 70 | define_easing!(EaseInOutCirc, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInBack` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:75:16
[INFO] [stdout]    |
[INFO] [stdout] 75 | define_easing!(EaseInBack, |t: f32| t * t * (2.70158 * t - 1.70158));
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutBack` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:76:16
[INFO] [stdout]    |
[INFO] [stdout] 76 | define_easing!(EaseOutBack, |t: f32| 1.
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutBack` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:78:16
[INFO] [stdout]    |
[INFO] [stdout] 78 | define_easing!(EaseInOutBack, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInElastic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:83:16
[INFO] [stdout]    |
[INFO] [stdout] 83 | define_easing!(EaseInElastic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutElastic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:88:16
[INFO] [stdout]    |
[INFO] [stdout] 88 | define_easing!(EaseOutElastic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutElastic` is never constructed
[INFO] [stdout]   --> src/animations/easing.rs:93:16
[INFO] [stdout]    |
[INFO] [stdout] 93 | define_easing!(EaseInOutElastic, |t: f32| match t {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInBounce` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:100:16
[INFO] [stdout]     |
[INFO] [stdout] 100 | define_easing!(EaseInBounce, |t: f32| 1. - EaseOutBounce.ease(1. - t));
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseOutBounce` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:101:16
[INFO] [stdout]     |
[INFO] [stdout] 101 | define_easing!(EaseOutBounce, |t: f32| match t {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EaseInOutBounce` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:107:16
[INFO] [stdout]     |
[INFO] [stdout] 107 | define_easing!(EaseInOutBounce, |t: f32| match t {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RushInto` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:114:16
[INFO] [stdout]     |
[INFO] [stdout] 114 | define_easing!(RushInto, |t: f32| 2. * Smooth.ease(0.5 * t));
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RushFrom` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:115:16
[INFO] [stdout]     |
[INFO] [stdout] 115 | define_easing!(RushFrom, |t: f32| 2. * Smooth.ease(0.5 * (t + 1.)) - 1.);
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SlowInto` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:116:16
[INFO] [stdout]     |
[INFO] [stdout] 116 | define_easing!(SlowInto, |t: f32| (1. - (1. - t).powi(2)).sqrt());
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DoubleSmooth` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:117:16
[INFO] [stdout]     |
[INFO] [stdout] 117 | define_easing!(DoubleSmooth, |t: f32| match t {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ThereAndBack` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:121:16
[INFO] [stdout]     |
[INFO] [stdout] 121 | define_easing!(ThereAndBack, |t: f32| Smooth.ease(1. - (2. * t - 1.).abs()));
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `define_easing` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Wiggle` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub struct Wiggle(pub f32);
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExponentialDecay` is never constructed
[INFO] [stdout]    --> src/animations/easing.rs:131:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub struct ExponentialDecay(pub f32);
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/core/mod.rs:32:16
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub model: Matrix4<f32>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/core/mod.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub color: Vector4<f32>,
[INFO] [stdout]    |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove` is never used
[INFO] [stdout]   --> src/core/mod.rs:87:12
[INFO] [stdout]    |
[INFO] [stdout] 76 | impl<'a> Scene<'a> {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn remove<T: HasPoints + 'a>(&self, shape: Mobject<T>) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `upcast` and `remove` are never used
[INFO] [stdout]    --> src/core/mod.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl<'a> InnerScene<'a> {
[INFO] [stdout]     | ----------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn upcast<T: HasPoints + 'a>(shape: Rc<RefCell<Shape<T>>>) -> Rc<RefCell<dyn Renderable + 'a>> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn remove<T: HasPoints + 'a>(&mut self, shape: Mobject<T>) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/core/camera.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub struct CameraUniform {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/core/camera.rs:182:1
[INFO] [stdout]     |
[INFO] [stdout] 182 | / #[repr(C)]
[INFO] [stdout] 183 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 184 | | pub struct CameraUniform {
[INFO] [stdout] ...   |
[INFO] [stdout] 187 | |     view_proj: [[f32; 4]; 4],
[INFO] [stdout] 188 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `rotate` and `scale_vec` are never used
[INFO] [stdout]    --> src/core/shape.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout]  97 | impl<T: HasPoints> Mobject<T> {
[INFO] [stdout]     | ----------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn rotate(&self, rotation: Quaternion<f32>) -> &Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn scale_vec(&self, scale: impl Into<Vector3<f32>>) -> &Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_sampler`, `add_texture`, `add_sampler_filterable`, and `add_texture_float_filterable_d2` are never used
[INFO] [stdout]   --> src/core/utils/bindgroup.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl BindGroupBuilder {
[INFO] [stdout]    | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn add_sampler(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub fn add_texture(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn add_sampler_filterable(self, visibility: wgpu::ShaderStages) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn add_texture_float_filterable_d2(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `sampler` is never read
[INFO] [stdout]  --> src/texture.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     pub sampler: wgpu::Sampler,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/texture.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 12 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 44.26s
[INFO] running `Command { std: "docker" "inspect" "864f27b90709961fff57a014f7e01d6b669aeae0ed7a8e38dc426160b293df41", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "864f27b90709961fff57a014f7e01d6b669aeae0ed7a8e38dc426160b293df41", kill_on_drop: false }`
[INFO] [stdout] 864f27b90709961fff57a014f7e01d6b669aeae0ed7a8e38dc426160b293df41
