[INFO] fetching crate shadowengine2d 2.0.0...
[INFO] checking shadowengine2d-2.0.0 against master#53509ca37e3b507887607c2f4a7f23bd4838f099 for pr-156027
[INFO] extracting crate shadowengine2d 2.0.0 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate shadowengine2d 2.0.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate shadowengine2d 2.0.0
[INFO] tweaked toml for crates.io crate shadowengine2d 2.0.0 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate shadowengine2d 2.0.0 on toolchain 53509ca37e3b507887607c2f4a7f23bd4838f099
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+53509ca37e3b507887607c2f4a7f23bd4838f099" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate shadowengine2d 2.0.0 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" "+53509ca37e3b507887607c2f4a7f23bd4838f099" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cc v1.2.32
[INFO] [stderr]   Downloaded parry2d v0.13.8
[INFO] [stderr]   Downloaded spade v2.14.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+53509ca37e3b507887607c2f4a7f23bd4838f099" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 20e5f35c21e55e383c7ea12335ae0499d4d77d3c81d8342edbbdcb722e3787c6
[INFO] running `Command { std: "docker" "start" "-a" "20e5f35c21e55e383c7ea12335ae0499d4d77d3c81d8342edbbdcb722e3787c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "20e5f35c21e55e383c7ea12335ae0499d4d77d3c81d8342edbbdcb722e3787c6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "20e5f35c21e55e383c7ea12335ae0499d4d77d3c81d8342edbbdcb722e3787c6", kill_on_drop: false }`
[INFO] [stdout] 20e5f35c21e55e383c7ea12335ae0499d4d77d3c81d8342edbbdcb722e3787c6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+53509ca37e3b507887607c2f4a7f23bd4838f099" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 206f44f076e9cece1bea8473317041c175f5dc40c04b266a5778786e67cc9744
[INFO] running `Command { std: "docker" "start" "-a" "206f44f076e9cece1bea8473317041c175f5dc40c04b266a5778786e67cc9744", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling cfg_aliases v0.1.1
[INFO] [stderr]    Compiling wayland-sys v0.31.7
[INFO] [stderr]    Compiling cc v1.2.32
[INFO] [stderr]    Compiling wayland-scanner v0.31.7
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]     Checking indexmap v2.10.0
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]     Checking unicode-xid v0.2.6
[INFO] [stderr]     Checking gpu-descriptor v0.3.2
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]    Compiling naga v23.1.0
[INFO] [stderr]    Compiling wgpu-hal v23.0.1
[INFO] [stderr]    Compiling wgpu-core v23.0.1
[INFO] [stderr]     Checking wgpu-types v23.0.0
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling litrs v0.4.2
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.9
[INFO] [stderr]     Checking glow v0.14.2
[INFO] [stderr]     Checking ab_glyph v0.2.31
[INFO] [stderr]    Compiling wgpu v23.0.1
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]     Checking robust v1.2.0
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]     Checking x11rb-protocol v0.13.1
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking pollster v0.3.0
[INFO] [stderr]     Checking exr v1.73.0
[INFO] [stderr]     Checking spade v2.14.0
[INFO] [stderr]    Compiling document-features v0.2.11
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking parking_lot_core v0.9.11
[INFO] [stderr]     Checking memmap2 v0.9.7
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]    Compiling wayland-backend v0.3.11
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking wayland-client v0.31.11
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking wayland-protocols v0.32.9
[INFO] [stderr]     Checking wayland-cursor v0.31.11
[INFO] [stderr]    Compiling bytemuck_derive v1.10.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling profiling-procmacros v1.0.17
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking equator v0.4.2
[INFO] [stderr]     Checking aligned-vec v0.6.4
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking v_frame v0.3.9
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking bytemuck v1.23.2
[INFO] [stderr]     Checking av1-grain v0.2.4
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking wide v0.7.33
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking rav1e v0.7.1
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking glam v0.27.0
[INFO] [stderr]     Checking x11rb v0.13.1
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.9
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.9
[INFO] [stderr]     Checking smithay-client-toolkit v0.19.2
[INFO] [stderr]     Checking nalgebra v0.32.6
[INFO] [stderr]     Checking ravif v0.11.20
[INFO] [stderr]     Checking image v0.25.6
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking winit v0.30.12
[INFO] [stderr]     Checking parry2d v0.13.8
[INFO] [stderr]     Checking shadowengine2d v2.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Color`, `EntityManager`, `Position`, `Size`, `Sprite`, `Transform`, and `Velocity`
[INFO] [stdout]   --> src/app.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 |     entity::{EntityManager, Transform, Sprite, Velocity},
[INFO] [stdout]    |              ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^  ^^^^^^^^
[INFO] [stdout] 29 |     math::{Position, Size, Color},
[INFO] [stdout]    |            ^^^^^^^^  ^^^^  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]   --> src/app.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | use std::any::Any;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Component` and `Size`
[INFO] [stdout]   --> src/entity_builder.rs:26:68
[INFO] [stdout]    |
[INFO] [stdout] 26 |     entity::{EntityId, EntityManager, Transform, Sprite, Velocity, Component},
[INFO] [stdout]    |                                                                    ^^^^^^^^^
[INFO] [stdout] 27 |     math::{Position, Size, Color},
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Size`
[INFO] [stdout]   --> src/ui.rs:81:22
[INFO] [stdout]    |
[INFO] [stdout] 81 |     math::{Position, Size, Color, Rect},
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/scene.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Time`
[INFO] [stdout]   --> src/scene.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     time::Time,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vec2`
[INFO] [stdout]   --> src/animation.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 |     math::{Position, Size, Color, Vec2},
[INFO] [stdout]    |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::EngineResult`
[INFO] [stdout]  --> src/particles.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::EngineResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Color`, `EntityManager`, `Position`, `Size`, `Sprite`, `Transform`, and `Velocity`
[INFO] [stdout]   --> src/app.rs:28:14
[INFO] [stdout]    |
[INFO] [stdout] 28 |     entity::{EntityManager, Transform, Sprite, Velocity},
[INFO] [stdout]    |              ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^  ^^^^^^^^
[INFO] [stdout] 29 |     math::{Position, Size, Color},
[INFO] [stdout]    |            ^^^^^^^^  ^^^^  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::Any`
[INFO] [stdout]   --> src/app.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | use std::any::Any;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Component` and `Size`
[INFO] [stdout]   --> src/entity_builder.rs:26:68
[INFO] [stdout]    |
[INFO] [stdout] 26 |     entity::{EntityId, EntityManager, Transform, Sprite, Velocity, Component},
[INFO] [stdout]    |                                                                    ^^^^^^^^^
[INFO] [stdout] 27 |     math::{Position, Size, Color},
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Size`
[INFO] [stdout]   --> src/ui.rs:81:22
[INFO] [stdout]    |
[INFO] [stdout] 81 |     math::{Position, Size, Color, Rect},
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/scene.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `time::Time`
[INFO] [stdout]   --> src/scene.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     time::Time,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vec2`
[INFO] [stdout]   --> src/animation.rs:28:35
[INFO] [stdout]    |
[INFO] [stdout] 28 |     math::{Position, Size, Color, Vec2},
[INFO] [stdout]    |                                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::EngineResult`
[INFO] [stdout]  --> src/particles.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::EngineResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `Output::output_print`: Use Output::debug instead
[INFO] [stdout]   --> src/lib.rs:65:26
[INFO] [stdout]    |
[INFO] [stdout] 65 |         Output::{Output, output_print, output_enabled},
[INFO] [stdout]    |                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `Output::output_enabled`: Use Output::is_enabled instead
[INFO] [stdout]   --> src/lib.rs:65:40
[INFO] [stdout]    |
[INFO] [stdout] 65 |         Output::{Output, output_print, output_enabled},
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `Output::output_print`: Use Output::debug instead
[INFO] [stdout]   --> src/lib.rs:65:26
[INFO] [stdout]    |
[INFO] [stdout] 65 |         Output::{Output, output_print, output_enabled},
[INFO] [stdout]    |                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `Output::output_enabled`: Use Output::is_enabled instead
[INFO] [stdout]   --> src/lib.rs:65:40
[INFO] [stdout]    |
[INFO] [stdout] 65 |         Output::{Output, output_print, output_enabled},
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]   --> src/engine.rs:89:24
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn init(&mut self, engine: &mut Engine) -> EngineResult<()> {
[INFO] [stdout]    |                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]   --> src/engine.rs:99:28
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn on_event(&mut self, engine: &mut Engine, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/engine.rs:99:49
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn on_event(&mut self, engine: &mut Engine, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> src/engine.rs:103:27
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn cleanup(&mut self, engine: &mut Engine) {}
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]   --> src/window.rs:77:27
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn on_init(&mut self, window: &Window) -> EngineResult<()> {
[INFO] [stdout]    |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]   --> src/window.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn on_window_event(&mut self, window: &Window, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/window.rs:85:52
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn on_window_event(&mut self, window: &Window, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]   --> src/engine.rs:89:24
[INFO] [stdout]    |
[INFO] [stdout] 89 |     fn init(&mut self, engine: &mut Engine) -> EngineResult<()> {
[INFO] [stdout]    |                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]   --> src/engine.rs:99:28
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn on_event(&mut self, engine: &mut Engine, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/engine.rs:99:49
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn on_event(&mut self, engine: &mut Engine, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> src/app.rs:168:28
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn on_event(&mut self, engine: &mut Engine, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]     |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> src/engine.rs:103:27
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn cleanup(&mut self, engine: &mut Engine) {}
[INFO] [stdout]     |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `available_height`
[INFO] [stdout]    --> src/ui.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let available_height = self.rect.height - 2.0 * self.padding - total_spacing;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_available_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `available_width`
[INFO] [stdout]    --> src/ui.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |         let available_width = self.rect.width - 2.0 * self.padding - total_spacing;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_available_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]   --> src/window.rs:77:27
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn on_init(&mut self, window: &Window) -> EngineResult<()> {
[INFO] [stdout]    |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window`
[INFO] [stdout]   --> src/window.rs:85:35
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn on_window_event(&mut self, window: &Window, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]   --> src/window.rs:85:52
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn on_window_event(&mut self, window: &Window, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]    |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> src/app.rs:168:28
[INFO] [stdout]     |
[INFO] [stdout] 168 |     fn on_event(&mut self, engine: &mut Engine, event: &WindowEvent) -> EngineResult<()> {
[INFO] [stdout]     |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `available_height`
[INFO] [stdout]    --> src/ui.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |         let available_height = self.rect.height - 2.0 * self.padding - total_spacing;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_available_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `available_width`
[INFO] [stdout]    --> src/ui.rs:305:13
[INFO] [stdout]     |
[INFO] [stdout] 305 |         let available_width = self.rect.width - 2.0 * self.padding - total_spacing;
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_available_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]    --> src/assets.rs:580:54
[INFO] [stdout]     |
[INFO] [stdout] 580 |     pub fn get_glyph_metrics(&self, character: char, size: f32) -> Option<GlyphMetrics> {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:213:28
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn on_enter(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:213:64
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn on_enter(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                                                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:217:27
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn on_exit(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:217:63
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn on_exit(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                                                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:223:26
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn render(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:223:62
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn render(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                                                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_manager`
[INFO] [stdout]    --> src/scene.rs:227:34
[INFO] [stdout]     |
[INFO] [stdout] 227 |     fn preload_assets(&mut self, asset_manager: &mut AssetManager) -> EngineResult<()> {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_manager`
[INFO] [stdout]    --> src/scene.rs:231:33
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn unload_assets(&mut self, asset_manager: &mut AssetManager) -> EngineResult<()> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> src/scene.rs:235:32
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn handle_event(&mut self, event: &SceneEvent, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<(...
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:235:52
[INFO] [stdout]     |
[INFO] [stdout] 235 | ...ent: &SceneEvent, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:235:88
[INFO] [stdout]     |
[INFO] [stdout] 235 | ...r: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]    --> src/scene.rs:373:31
[INFO] [stdout]     |
[INFO] [stdout] 373 |             Self::CrossFade { duration, elapsed } => {
[INFO] [stdout]     |                               ^^^^^^^^ help: try ignoring the field: `duration: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:543:28
[INFO] [stdout]     |
[INFO] [stdout] 543 |     fn on_enter(&mut self, entity_manager: &mut EntityManager, _resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]    --> src/scene.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |         for position in &self.spawn_points {
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_manager`
[INFO] [stdout]    --> src/scene.rs:746:34
[INFO] [stdout]     |
[INFO] [stdout] 746 |     fn preload_assets(&mut self, asset_manager: &mut AssetManager) -> EngineResult<()> {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `music_id`
[INFO] [stdout]    --> src/scene.rs:748:21
[INFO] [stdout]     |
[INFO] [stdout] 748 |         if let Some(music_id) = self.background_music {
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_music_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bg_id`
[INFO] [stdout]    --> src/scene.rs:751:21
[INFO] [stdout]     |
[INFO] [stdout] 751 |         if let Some(bg_id) = self.background_image {
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_bg_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:964:26
[INFO] [stdout]     |
[INFO] [stdout] 964 |     fn render(&mut self, entity_manager: &mut EntityManager, _resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `overlay_color`
[INFO] [stdout]    --> src/scene.rs:966:13
[INFO] [stdout]     |
[INFO] [stdout] 966 |         let overlay_color = Color::new(0.0, 0.0, 0.0, self.background_alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_overlay_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]    --> src/scene.rs:969:21
[INFO] [stdout]     |
[INFO] [stdout] 969 |         for (index, item) in self.menu_items.iter().enumerate() {
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y_pos`
[INFO] [stdout]    --> src/scene.rs:971:17
[INFO] [stdout]     |
[INFO] [stdout] 971 |             let y_pos = 250.0 + index as f32 * 50.0;
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_y_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/scene.rs:973:17
[INFO] [stdout]     |
[INFO] [stdout] 973 |             let color = if is_selected {
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/animation.rs:168:21
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 let mut new_sprite = sprite.clone();
[INFO] [stdout]     |                     ----^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_frame`
[INFO] [stdout]    --> src/animation.rs:166:21
[INFO] [stdout]     |
[INFO] [stdout] 166 |         if let Some(current_frame) = entity_anims.get_current_sprite_frame() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_frame`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_id`
[INFO] [stdout]    --> src/animation.rs:576:14
[INFO] [stdout]     |
[INFO] [stdout] 576 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `anim_id`
[INFO] [stdout]    --> src/animation.rs:576:23
[INFO] [stdout]     |
[INFO] [stdout] 576 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_anim_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/animation.rs:576:32
[INFO] [stdout]     |
[INFO] [stdout] 576 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/animation.rs:586:13
[INFO] [stdout]     |
[INFO] [stdout] 586 |         let mut delta = TransformDelta::default();
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/animation.rs:587:13
[INFO] [stdout]     |
[INFO] [stdout] 587 |         let mut has_delta = false;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_id`
[INFO] [stdout]    --> src/animation.rs:589:14
[INFO] [stdout]     |
[INFO] [stdout] 589 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `anim_id`
[INFO] [stdout]    --> src/animation.rs:589:23
[INFO] [stdout]     |
[INFO] [stdout] 589 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_anim_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/animation.rs:589:32
[INFO] [stdout]     |
[INFO] [stdout] 589 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eased_t`
[INFO] [stdout]    --> src/animation.rs:658:21
[INFO] [stdout]     |
[INFO] [stdout] 658 |                 let eased_t = next_kf.easing.apply(t);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eased_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eased_t`
[INFO] [stdout]    --> src/animation.rs:673:21
[INFO] [stdout]     |
[INFO] [stdout] 673 |                 let eased_t = next_kf.easing.apply(t);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eased_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]    --> src/assets.rs:580:54
[INFO] [stdout]     |
[INFO] [stdout] 580 |     pub fn get_glyph_metrics(&self, character: char, size: f32) -> Option<GlyphMetrics> {
[INFO] [stdout]     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:213:28
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn on_enter(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:213:64
[INFO] [stdout]     |
[INFO] [stdout] 213 |     fn on_enter(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                                                                ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:217:27
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn on_exit(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:217:63
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn on_exit(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                                                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:223:26
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn render(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:223:62
[INFO] [stdout]     |
[INFO] [stdout] 223 |     fn render(&mut self, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                                                              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_manager`
[INFO] [stdout]    --> src/scene.rs:227:34
[INFO] [stdout]     |
[INFO] [stdout] 227 |     fn preload_assets(&mut self, asset_manager: &mut AssetManager) -> EngineResult<()> {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_manager`
[INFO] [stdout]    --> src/scene.rs:231:33
[INFO] [stdout]     |
[INFO] [stdout] 231 |     fn unload_assets(&mut self, asset_manager: &mut AssetManager) -> EngineResult<()> {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> src/scene.rs:235:32
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn handle_event(&mut self, event: &SceneEvent, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<(...
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:235:52
[INFO] [stdout]     |
[INFO] [stdout] 235 | ...ent: &SceneEvent, entity_manager: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resources`
[INFO] [stdout]    --> src/scene.rs:235:88
[INFO] [stdout]     |
[INFO] [stdout] 235 | ...r: &mut EntityManager, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                           ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_resources`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `duration`
[INFO] [stdout]    --> src/scene.rs:373:31
[INFO] [stdout]     |
[INFO] [stdout] 373 |             Self::CrossFade { duration, elapsed } => {
[INFO] [stdout]     |                               ^^^^^^^^ help: try ignoring the field: `duration: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:543:28
[INFO] [stdout]     |
[INFO] [stdout] 543 |     fn on_enter(&mut self, entity_manager: &mut EntityManager, _resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]    --> src/scene.rs:673:13
[INFO] [stdout]     |
[INFO] [stdout] 673 |         for position in &self.spawn_points {
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `asset_manager`
[INFO] [stdout]    --> src/scene.rs:746:34
[INFO] [stdout]     |
[INFO] [stdout] 746 |     fn preload_assets(&mut self, asset_manager: &mut AssetManager) -> EngineResult<()> {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_asset_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `music_id`
[INFO] [stdout]    --> src/scene.rs:748:21
[INFO] [stdout]     |
[INFO] [stdout] 748 |         if let Some(music_id) = self.background_music {
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_music_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bg_id`
[INFO] [stdout]    --> src/scene.rs:751:21
[INFO] [stdout]     |
[INFO] [stdout] 751 |         if let Some(bg_id) = self.background_image {
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_bg_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `entity_manager`
[INFO] [stdout]    --> src/scene.rs:964:26
[INFO] [stdout]     |
[INFO] [stdout] 964 |     fn render(&mut self, entity_manager: &mut EntityManager, _resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_entity_manager`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `overlay_color`
[INFO] [stdout]    --> src/scene.rs:966:13
[INFO] [stdout]     |
[INFO] [stdout] 966 |         let overlay_color = Color::new(0.0, 0.0, 0.0, self.background_alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_overlay_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `item`
[INFO] [stdout]    --> src/scene.rs:969:21
[INFO] [stdout]     |
[INFO] [stdout] 969 |         for (index, item) in self.menu_items.iter().enumerate() {
[INFO] [stdout]     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_item`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y_pos`
[INFO] [stdout]    --> src/scene.rs:971:17
[INFO] [stdout]     |
[INFO] [stdout] 971 |             let y_pos = 250.0 + index as f32 * 50.0;
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_y_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/scene.rs:973:17
[INFO] [stdout]     |
[INFO] [stdout] 973 |             let color = if is_selected {
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/animation.rs:168:21
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 let mut new_sprite = sprite.clone();
[INFO] [stdout]     |                     ----^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_frame`
[INFO] [stdout]    --> src/animation.rs:166:21
[INFO] [stdout]     |
[INFO] [stdout] 166 |         if let Some(current_frame) = entity_anims.get_current_sprite_frame() {
[INFO] [stdout]     |                     ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_frame`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_id`
[INFO] [stdout]    --> src/animation.rs:576:14
[INFO] [stdout]     |
[INFO] [stdout] 576 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `anim_id`
[INFO] [stdout]    --> src/animation.rs:576:23
[INFO] [stdout]     |
[INFO] [stdout] 576 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_anim_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/animation.rs:576:32
[INFO] [stdout]     |
[INFO] [stdout] 576 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/animation.rs:586:13
[INFO] [stdout]     |
[INFO] [stdout] 586 |         let mut delta = TransformDelta::default();
[INFO] [stdout]     |             ----^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/animation.rs:587:13
[INFO] [stdout]     |
[INFO] [stdout] 587 |         let mut has_delta = false;
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `set_id`
[INFO] [stdout]    --> src/animation.rs:589:14
[INFO] [stdout]     |
[INFO] [stdout] 589 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_set_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `anim_id`
[INFO] [stdout]    --> src/animation.rs:589:23
[INFO] [stdout]     |
[INFO] [stdout] 589 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                       ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_anim_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]    --> src/animation.rs:589:32
[INFO] [stdout]     |
[INFO] [stdout] 589 |         for (set_id, (anim_id, state)) in &self.active_animations {
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eased_t`
[INFO] [stdout]    --> src/animation.rs:658:21
[INFO] [stdout]     |
[INFO] [stdout] 658 |                 let eased_t = next_kf.easing.apply(t);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eased_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eased_t`
[INFO] [stdout]    --> src/animation.rs:673:21
[INFO] [stdout]     |
[INFO] [stdout] 673 |                 let eased_t = next_kf.easing.apply(t);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eased_t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `default_tile_id`
[INFO] [stdout]    --> src/tilemap.rs:305:71
[INFO] [stdout]     |
[INFO] [stdout] 305 |     pub fn load_from_csv(&mut self, layer_name: &str, csv_data: &str, default_tile_id: TileId) -> EngineResult<()> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_default_tile_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `angle_deg`
[INFO] [stdout]    --> src/particles.rs:120:35
[INFO] [stdout]     |
[INFO] [stdout] 120 |             EmissionShape::Cone { angle_deg } => {
[INFO] [stdout]     |                                   ^^^^^^^^^ help: try ignoring the field: `angle_deg: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `default_tile_id`
[INFO] [stdout]    --> src/tilemap.rs:305:71
[INFO] [stdout]     |
[INFO] [stdout] 305 |     pub fn load_from_csv(&mut self, layer_name: &str, csv_data: &str, default_tile_id: TileId) -> EngineResult<()> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_default_tile_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `device` is never read
[INFO] [stdout]    --> src/audio.rs:520:5
[INFO] [stdout]     |
[INFO] [stdout] 519 | pub struct AudioBackend {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 520 |     device: Arc<Mutex<AudioDevice>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AudioBackend` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position` and `pitch` are never read
[INFO] [stdout]    --> src/audio.rs:708:5
[INFO] [stdout]     |
[INFO] [stdout] 707 | pub struct ContextSource {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 708 |     position: f32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 709 |     volume: f32,
[INFO] [stdout] 710 |     pitch: f32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ContextSource` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `changed_files` is never read
[INFO] [stdout]    --> src/assets.rs:807:5
[INFO] [stdout]     |
[INFO] [stdout] 805 | pub struct FileWatcher {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 806 |     watched_files: HashMap<AssetId, PathBuf>,
[INFO] [stdout] 807 |     changed_files: Vec<AssetId>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileWatcher` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `title_text` is never read
[INFO] [stdout]    --> src/scene.rs:468:5
[INFO] [stdout]     |
[INFO] [stdout] 463 | pub struct MenuScene {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 468 |     title_text: String,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MenuScene` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level_id` is never read
[INFO] [stdout]    --> src/scene.rs:599:5
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub struct GameScene {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 598 |     name: String,
[INFO] [stdout] 599 |     level_id: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GameScene` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `animation_layers` is never read
[INFO] [stdout]    --> src/animation.rs:460:5
[INFO] [stdout]     |
[INFO] [stdout] 457 | pub struct EntityAnimations {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 460 |     animation_layers: Vec<AnimationLayer>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EntityAnimations` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_animation_state`, `update_transform_animation`, and `update_color_animation` are never used
[INFO] [stdout]    --> src/animation.rs:601:8
[INFO] [stdout]     |
[INFO] [stdout] 463 | impl EntityAnimations {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 601 |     fn update_animation_state(&self, animation: &Animation, state: &mut AnimationState, delta_time: f32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 650 |     fn update_transform_animation(&self, keyframes: &[TransformKeyframe], state: &mut AnimationState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 665 |     fn update_color_animation(&self, keyframes: &[ColorKeyframe], state: &mut AnimationState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `Output` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub mod Output;
[INFO] [stdout]    |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `output`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/entity_builder.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn spawn(&mut self) -> EntityBuilder;
[INFO] [stdout]    |              ^^^^^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn spawn(&mut self) -> EntityBuilder<'_>;
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/entity_builder.rs:81:14
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn spawn(&mut self) -> EntityBuilder {
[INFO] [stdout]    |              ^^^^^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn spawn(&mut self) -> EntityBuilder<'_> {
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `angle_deg`
[INFO] [stdout]    --> src/particles.rs:120:35
[INFO] [stdout]     |
[INFO] [stdout] 120 |             EmissionShape::Cone { angle_deg } => {
[INFO] [stdout]     |                                   ^^^^^^^^^ help: try ignoring the field: `angle_deg: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `device` is never read
[INFO] [stdout]    --> src/audio.rs:520:5
[INFO] [stdout]     |
[INFO] [stdout] 519 | pub struct AudioBackend {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 520 |     device: Arc<Mutex<AudioDevice>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AudioBackend` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position` and `pitch` are never read
[INFO] [stdout]    --> src/audio.rs:708:5
[INFO] [stdout]     |
[INFO] [stdout] 707 | pub struct ContextSource {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 708 |     position: f32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 709 |     volume: f32,
[INFO] [stdout] 710 |     pitch: f32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ContextSource` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `changed_files` is never read
[INFO] [stdout]    --> src/assets.rs:807:5
[INFO] [stdout]     |
[INFO] [stdout] 805 | pub struct FileWatcher {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 806 |     watched_files: HashMap<AssetId, PathBuf>,
[INFO] [stdout] 807 |     changed_files: Vec<AssetId>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FileWatcher` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `title_text` is never read
[INFO] [stdout]    --> src/scene.rs:468:5
[INFO] [stdout]     |
[INFO] [stdout] 463 | pub struct MenuScene {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 468 |     title_text: String,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `MenuScene` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level_id` is never read
[INFO] [stdout]    --> src/scene.rs:599:5
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub struct GameScene {
[INFO] [stdout]     |            --------- field in this struct
[INFO] [stdout] 598 |     name: String,
[INFO] [stdout] 599 |     level_id: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GameScene` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `animation_layers` is never read
[INFO] [stdout]    --> src/animation.rs:460:5
[INFO] [stdout]     |
[INFO] [stdout] 457 | pub struct EntityAnimations {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 460 |     animation_layers: Vec<AnimationLayer>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EntityAnimations` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_animation_state`, `update_transform_animation`, and `update_color_animation` are never used
[INFO] [stdout]    --> src/animation.rs:601:8
[INFO] [stdout]     |
[INFO] [stdout] 463 | impl EntityAnimations {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 601 |     fn update_animation_state(&self, animation: &Animation, state: &mut AnimationState, delta_time: f32) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 650 |     fn update_transform_animation(&self, keyframes: &[TransformKeyframe], state: &mut AnimationState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 665 |     fn update_color_animation(&self, keyframes: &[ColorKeyframe], state: &mut AnimationState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `Output` should have a snake case name
[INFO] [stdout]   --> src/lib.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub mod Output;
[INFO] [stdout]    |         ^^^^^^ help: convert the identifier to snake case (notice the capitalization): `output`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/entity_builder.rs:77:14
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn spawn(&mut self) -> EntityBuilder;
[INFO] [stdout]    |              ^^^^^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 77 |     fn spawn(&mut self) -> EntityBuilder<'_>;
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/entity_builder.rs:81:14
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn spawn(&mut self) -> EntityBuilder {
[INFO] [stdout]    |              ^^^^^^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn spawn(&mut self) -> EntityBuilder<'_> {
[INFO] [stdout]    |                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `engine`
[INFO] [stdout]    --> examples/shooter_game.rs:103:14
[INFO] [stdout]     |
[INFO] [stdout] 103 | fn ui_system(engine: &mut Engine, resources: &mut Resources) -> EngineResult<()> {
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_engine`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 55.63s
[INFO] running `Command { std: "docker" "inspect" "206f44f076e9cece1bea8473317041c175f5dc40c04b266a5778786e67cc9744", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "206f44f076e9cece1bea8473317041c175f5dc40c04b266a5778786e67cc9744", kill_on_drop: false }`
[INFO] [stdout] 206f44f076e9cece1bea8473317041c175f5dc40c04b266a5778786e67cc9744
