[INFO] cloning repository https://github.com/Henrik-N/pengine
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Henrik-N/pengine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHenrik-N%2Fpengine", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHenrik-N%2Fpengine'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ed490f39ae3f56980021ea923c85754afbac73cc
[INFO] testing Henrik-N/pengine against 1.83.0 for beta-1.84.0-4-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHenrik-N%2Fpengine" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Henrik-N/pengine on toolchain 1.83.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.83.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Henrik-N/pengine
[INFO] finished tweaking git repo https://github.com/Henrik-N/pengine
[INFO] tweaked toml for git repo https://github.com/Henrik-N/pengine written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/Henrik-N/pengine 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" "+1.83.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded legion_codegen v0.4.0
[INFO] [stderr]   Downloaded emath v0.16.0
[INFO] [stderr]   Downloaded egui_winit_platform v0.13.0
[INFO] [stderr]   Downloaded egui_wgpu_backend v0.16.0
[INFO] [stderr]   Downloaded tobj v3.2.1
[INFO] [stderr]   Downloaded egui v0.16.1
[INFO] [stderr]   Downloaded macaw v0.16.0
[INFO] [stderr]   Downloaded epaint v0.16.0
[INFO] [stderr]   Downloaded legion v0.4.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 778b21af1f3ec698080d552c006347604168577ebb05d8fc167109bb3f9df278
[INFO] running `Command { std: "docker" "start" "-a" "778b21af1f3ec698080d552c006347604168577ebb05d8fc167109bb3f9df278", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "778b21af1f3ec698080d552c006347604168577ebb05d8fc167109bb3f9df278", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "778b21af1f3ec698080d552c006347604168577ebb05d8fc167109bb3f9df278", kill_on_drop: false }`
[INFO] [stdout] 778b21af1f3ec698080d552c006347604168577ebb05d8fc167109bb3f9df278
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e5f3dbff0ef35b7d0daa9eadaa9b9a67e0a2a26fe459636cc57ac07fc0909463
[INFO] running `Command { std: "docker" "start" "-a" "e5f3dbff0ef35b7d0daa9eadaa9b9a67e0a2a26fe459636cc57ac07fc0909463", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.36
[INFO] [stderr]    Compiling syn v1.0.89
[INFO] [stderr]    Compiling libc v0.2.120
[INFO] [stderr]    Compiling once_cell v1.10.0
[INFO] [stderr]    Compiling indexmap v1.8.0
[INFO] [stderr]    Compiling parking_lot_core v0.8.5
[INFO] [stderr]    Compiling ahash v0.7.6
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling serde v1.0.136
[INFO] [stderr]    Compiling lock_api v0.4.6
[INFO] [stderr]    Compiling libloading v0.7.3
[INFO] [stderr]    Compiling pkg-config v0.3.24
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling pin-project-lite v0.2.8
[INFO] [stderr]    Compiling tracing-core v0.1.26
[INFO] [stderr]    Compiling futures-core v0.3.21
[INFO] [stderr]    Compiling erased-serde v0.3.20
[INFO] [stderr]    Compiling crossbeam-utils v0.8.8
[INFO] [stderr]    Compiling cache-padded v1.2.0
[INFO] [stderr]    Compiling raw-window-handle v0.4.2
[INFO] [stderr]    Compiling concurrent-queue v1.2.2
[INFO] [stderr]    Compiling dlib v0.5.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.8
[INFO] [stderr]    Compiling parking v2.0.0
[INFO] [stderr]    Compiling waker-fn v1.1.0
[INFO] [stderr]    Compiling futures-io v0.3.21
[INFO] [stderr]    Compiling fastrand v1.7.0
[INFO] [stderr]    Compiling slab v0.4.6
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling wayland-sys v0.29.4
[INFO] [stderr]    Compiling async-task v4.2.0
[INFO] [stderr]    Compiling futures-lite v1.12.0
[INFO] [stderr]    Compiling event-listener v2.5.2
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling quote v1.0.15
[INFO] [stderr]    Compiling bit-set v0.5.2
[INFO] [stderr]    Compiling async-channel v1.6.1
[INFO] [stderr]    Compiling getrandom v0.2.5
[INFO] [stderr]    Compiling ash v0.34.0+1.2.203
[INFO] [stderr]    Compiling scoped-tls v1.0.0
[INFO] [stderr]    Compiling unicode-width v0.1.9
[INFO] [stderr]    Compiling wayland-scanner v0.29.4
[INFO] [stderr]    Compiling nom v7.1.1
[INFO] [stderr]    Compiling crossbeam-channel v0.5.3
[INFO] [stderr]    Compiling codespan-reporting v0.11.1
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stderr]    Compiling regex-syntax v0.6.25
[INFO] [stderr]    Compiling ttf-parser v0.15.0
[INFO] [stderr]    Compiling fixedbitset v0.4.1
[INFO] [stderr]    Compiling spirv v0.2.0+1.5.4
[INFO] [stderr]    Compiling crossbeam-deque v0.8.1
[INFO] [stderr]    Compiling wgpu-core v0.12.2
[INFO] [stderr]    Compiling x11-dl v2.19.1
[INFO] [stderr]    Compiling num_cpus v1.13.1
[INFO] [stderr]    Compiling nix v0.22.3
[INFO] [stderr]    Compiling async-executor v1.4.1
[INFO] [stderr]    Compiling khronos-egl v4.1.0
[INFO] [stderr]    Compiling bevy_tasks v0.7.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.15.3
[INFO] [stderr]    Compiling wgpu-types v0.12.0
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]    Compiling inplace_it v0.3.3
[INFO] [stderr]    Compiling atomic_refcell v0.1.8
[INFO] [stderr]    Compiling profiling v1.0.5
[INFO] [stderr]    Compiling ab_glyph_rasterizer v0.1.5
[INFO] [stderr]    Compiling memmap2 v0.3.1
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling wayland-client v0.29.4
[INFO] [stderr]    Compiling wayland-protocols v0.29.4
[INFO] [stderr]    Compiling adler32 v1.2.0
[INFO] [stderr]    Compiling copyless v0.1.5
[INFO] [stderr]    Compiling emath v0.16.0
[INFO] [stderr]    Compiling nohash-hasher v0.2.0
[INFO] [stderr]    Compiling winit v0.26.1
[INFO] [stderr]    Compiling anyhow v1.0.56
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling owned_ttf_parser v0.15.0
[INFO] [stderr]    Compiling xcursor v0.3.4
[INFO] [stderr]    Compiling ab_glyph v0.2.15
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]    Compiling uuid v0.8.2
[INFO] [stderr]    Compiling epaint v0.16.0
[INFO] [stderr]    Compiling regex v1.5.5
[INFO] [stderr]    Compiling mio v0.8.1
[INFO] [stderr]    Compiling num-iter v0.1.42
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]    Compiling weezl v0.1.5
[INFO] [stderr]    Compiling percent-encoding v2.1.0
[INFO] [stderr]    Compiling jpeg-decoder v0.1.22
[INFO] [stderr]    Compiling egui v0.16.1
[INFO] [stderr]    Compiling matchers v0.1.0
[INFO] [stderr]    Compiling miniz_oxide v0.3.7
[INFO] [stderr]    Compiling calloop v0.9.3
[INFO] [stderr]    Compiling deflate v0.8.6
[INFO] [stderr]    Compiling tracing-log v0.1.2
[INFO] [stderr]    Compiling thread_local v1.1.4
[INFO] [stderr]    Compiling sharded-slab v0.1.4
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling fs_extra v1.2.0
[INFO] [stderr]    Compiling glob v0.3.0
[INFO] [stderr]    Compiling ansi_term v0.12.1
[INFO] [stderr]    Compiling gif v0.11.3
[INFO] [stderr]    Compiling png v0.16.8
[INFO] [stderr]    Compiling tiff v0.6.1
[INFO] [stderr]    Compiling penguin_engine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling paste v1.0.7
[INFO] [stderr]    Compiling pollster v0.2.5
[INFO] [stderr]    Compiling humantime v2.1.0
[INFO] [stderr]    Compiling scoped_threadpool v0.1.9
[INFO] [stderr]    Compiling scoped-tls-hkt v0.1.2
[INFO] [stderr]    Compiling env_logger v0.9.0
[INFO] [stderr]    Compiling tobj v3.2.1
[INFO] [stderr]    Compiling serde_derive v1.0.136
[INFO] [stderr]    Compiling thiserror-impl v1.0.30
[INFO] [stderr]    Compiling bytemuck_derive v1.0.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.20
[INFO] [stderr]    Compiling bytemuck v1.8.0
[INFO] [stderr]    Compiling image v0.23.14
[INFO] [stderr]    Compiling tracing v0.1.34
[INFO] [stderr]    Compiling thiserror v1.0.30
[INFO] [stderr]    Compiling legion_codegen v0.4.0
[INFO] [stderr]    Compiling cargo-manifest v0.2.6
[INFO] [stderr]    Compiling bevy_macro_utils v0.7.0
[INFO] [stderr]    Compiling bevy_derive v0.7.0
[INFO] [stderr]    Compiling bevy_reflect_derive v0.7.0
[INFO] [stderr]    Compiling bevy_ecs_macros v0.7.0
[INFO] [stderr]    Compiling smallvec v1.8.0
[INFO] [stderr]    Compiling glam v0.20.2
[INFO] [stderr]    Compiling wayland-commons v0.29.4
[INFO] [stderr]    Compiling tracing-subscriber v0.3.11
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling bevy_utils v0.7.0
[INFO] [stderr]    Compiling gpu-descriptor v0.2.2
[INFO] [stderr]    Compiling legion v0.4.0
[INFO] [stderr]    Compiling naga v0.8.5
[INFO] [stderr]    Compiling wayland-cursor v0.29.4
[INFO] [stderr]    Compiling bevy_reflect v0.7.0
[INFO] [stderr]    Compiling macaw v0.16.0
[INFO] [stderr]    Compiling bevy_ecs v0.7.0
[INFO] [stderr]    Compiling bevy_math v0.7.0
[INFO] [stderr]    Compiling wgpu-hal v0.12.4
[INFO] [stderr]    Compiling bevy_app v0.7.0
[INFO] [stderr]    Compiling bevy_window v0.7.0
[INFO] [stderr]    Compiling bevy_input v0.7.0
[INFO] [stderr]    Compiling bevy_log v0.7.0
[INFO] [stderr]    Compiling wgpu v0.12.0
[INFO] [stderr]    Compiling penguin-util v0.1.0 (/opt/rustwide/workdir/penguin-util)
[INFO] [stderr]    Compiling egui_wgpu_backend v0.16.0
[INFO] [stderr]    Compiling bevy_winit v0.7.0
[INFO] [stderr]    Compiling egui_winit_platform v0.13.0
[INFO] [stdout] warning: unused import: `downcast_rs::Downcast`
[INFO] [stdout]  --> src/bind_groups.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use downcast_rs::Downcast;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/bind_groups.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::systems::CommandBuffer`
[INFO] [stdout]  --> src/camera.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use legion::systems::CommandBuffer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Entity` and `Resources`
[INFO] [stdout]  --> src/camera.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use legion::{Entity, Resources};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::*`
[INFO] [stdout]  --> src/editor/component_editor.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub use legion::world::*;
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::storage::*`
[INFO] [stdout]  --> src/editor/mod.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub use legion::storage::*;
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::*`
[INFO] [stdout]  --> src/editor/mod.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub use legion::world::*;
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::DerefMut`
[INFO] [stdout]  --> src/events/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::DerefMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::input::InputEvent`
[INFO] [stdout]   --> src/events/mod.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub use crate::input::InputEvent;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphicsContext`
[INFO] [stdout]  --> src/layer/application_layer.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{GraphicsContext, Layer};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VertexArrayBuffer`, `Vertex`, `bind_groups`, and `render_scene`
[INFO] [stdout]  --> src/layer/base_render_scene_layer/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     bind_groups, mesh, render_scene, GraphicsContext, Layer, RenderObjectDescriptor, Vertex,
[INFO] [stdout]   |     ^^^^^^^^^^^        ^^^^^^^^^^^^                                                  ^^^^^^
[INFO] [stdout] 6 |     VertexArrayBuffer, MAX_DRAW_COMMANDS,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Translation`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::components::Translation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BindGroupLayoutEntry` and `ShaderStages`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use wgpu::{BindGroupLayoutEntry, ShaderStages};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::events::PenguinEventSender`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::events::PenguinEventSender;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LegacyMeshPass`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:19:53
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::render_scene::mesh_pass::{IndirectBatch, LegacyMeshPass, PassObject};
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `events`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::{events, DrawOutputInfo, RenderInstance};
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::layer::application_layer::Time`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::layer::application_layer::Time;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rotation`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:162:44
[INFO] [stdout]     |
[INFO] [stdout] 162 |     use crate::components::{MeshComponent, Rotation};
[INFO] [stdout]     |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::SubWorld`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |     use legion::world::SubWorld;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawOutputInfo` and `MAX_DRAW_COMMANDS`
[INFO] [stdout]  --> src/layer/pipelines_layer.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 |     camera, mesh, texture, DrawOutputInfo, GraphicsContext, Layer, RenderInstance, Vertex,
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     VertexArrayBuffer, MAX_DRAW_COMMANDS,
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> src/layer/pipelines_layer.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mem`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::{iter, mem, slice};
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeviceExt`, `buffer_bind_group_entry`, `storage_buffer_layout_entry`, and `uniform_buffer_layout_entry`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     buffer_bind_group_entry, storage_buffer_layout_entry, uniform_buffer_layout_entry, DeviceExt,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Translation`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::components::Translation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render_scene::RenderObject`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::render_scene::RenderObject;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `penguin_util::handle::Handle`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use penguin_util::handle::Handle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawIndexedIndirect` and `DrawIndirectCount`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 | use penguin_util::raw_gpu_types::{DrawIndexedIndirect, DrawIndirectCount};
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BindGroupLayoutEntry`, `BindGroup`, and `ShaderStages`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | use wgpu::{BindGroup, BindGroupLayoutEntry, ShaderStages};
[INFO] [stdout]    |            ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macaw as m`
[INFO] [stdout]    --> src/layer/pipelines_layer.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |     use macaw as m;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicRefMut` and `AtomicRef`
[INFO] [stdout]  --> src/layer/scene_layer.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use atomic_refcell::{AtomicRef, AtomicRefCell, AtomicRefMut};
[INFO] [stdout]   |                      ^^^^^^^^^                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::SubWorld`
[INFO] [stdout]  --> src/layer/scene_layer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use legion::world::SubWorld;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Query`
[INFO] [stdout]  --> src/layer/scene_layer.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | use legion::{component, system, Entity, Query, Resources, Schedule};
[INFO] [stdout]   |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/layer/scene_layer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::layer::scene_layer::WriteState::A`
[INFO] [stdout]   --> src/layer/scene_layer.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::layer::scene_layer::WriteState::A;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RenderInstance`, `RenderObjectDescriptor`, `Vertex`, and `camera`
[INFO] [stdout]   --> src/layer/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     camera, components, editor, mesh, render_scene, texture, RenderInstance,
[INFO] [stdout]    |     ^^^^^^                                                   ^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     RenderObjectDescriptor, Vertex,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RendererState`
[INFO] [stdout]   --> src/layer/mod.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::{GraphicsContext, RendererState};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `atomic_refcell::AtomicRef`
[INFO] [stdout]   --> src/layer/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use atomic_refcell::AtomicRef;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoQuery`, `Resources`, `component`, and `maybe_changed`
[INFO] [stdout]   --> src/layer/mod.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | use legion::{component, maybe_changed, IntoQuery, Resources};
[INFO] [stdout]    |              ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GpuBufferDeviceExt` and `GpuBuffer`
[INFO] [stdout]   --> src/layer/mod.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use penguin_util::{GpuBuffer, GpuBufferDeviceExt};
[INFO] [stdout]    |                    ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice`
[INFO] [stdout]   --> src/layer/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::slice;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render_scene::MAX_DRAW_COMMANDS`
[INFO] [stdout]   --> src/layer/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::render_scene::MAX_DRAW_COMMANDS;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `components::*`
[INFO] [stdout]   --> src/layer/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use components::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::system`
[INFO] [stdout]   --> src/layer/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use legion::system;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::systems::Step`
[INFO] [stdout]   --> src/layer/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use legion::systems::Step;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `penguin_util::raw_gpu_types::DrawIndirectCount`
[INFO] [stdout]   --> src/layer/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use penguin_util::raw_gpu_types::DrawIndirectCount;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render_scene::RenderObject`
[INFO] [stdout]   --> src/layer/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use render_scene::RenderObject;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::CommandEncoder`
[INFO] [stdout]   --> src/layer/mod.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | use wgpu::CommandEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::storage::*`
[INFO] [stdout]   --> src/layer/mod.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub use legion::storage::*;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::*`
[INFO] [stdout]   --> src/layer/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub use legion::world::*;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::*`
[INFO] [stdout]   --> src/layer/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub use legion::*;
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `resources::*`
[INFO] [stdout]   --> src/layer/mod.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | use resources::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::new_bevy_ecs::time::TimePlugin`
[INFO] [stdout]  --> src/new_bevy_ecs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::new_bevy_ecs::time::TimePlugin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PluginGroupBuilder` and `PluginGroup`
[INFO] [stdout]  --> src/new_bevy_ecs/mod.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bevy_app::{App, PluginGroup, PluginGroupBuilder};
[INFO] [stdout]   |                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_ecs::prelude::*`
[INFO] [stdout]  --> src/new_bevy_ecs/meshes.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bevy_ecs::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_ecs::system::Commands`
[INFO] [stdout]  --> src/new_bevy_ecs/meshes.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use bevy_ecs::system::Commands;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Range`
[INFO] [stdout]  --> src/new_bevy_ecs/meshes.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::ops::Range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphicsContext`
[INFO] [stdout]  --> src/render_scene/mod.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{mesh, GraphicsContext, RenderInstance, VertexArrayBuffer};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CommandBuffer` and `Step`
[INFO] [stdout]  --> src/render_scene/mod.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use legion::systems::{CommandBuffer, Step};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::Resources`
[INFO] [stdout]  --> src/render_scene/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use legion::Resources;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Resources`
[INFO] [stdout]   --> src/main.rs:28:40
[INFO] [stdout]    |
[INFO] [stdout] 28 | use legion::{maybe_changed, IntoQuery, Resources};
[INFO] [stdout]    |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::bind_groups::DeviceExt`
[INFO] [stdout]   --> src/main.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | use crate::bind_groups::DeviceExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::transmute`
[INFO] [stdout]   --> src/main.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::mem::transmute;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/graphics_context.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 |         app.add_startup_system(init_graphics_context.system())
[INFO] [stdout]    |                                                      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/graphics_context.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 |             .add_system(on_window_resize.system());
[INFO] [stdout]    |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/mod.rs:32:44
[INFO] [stdout]    |
[INFO] [stdout] 32 |             app.add_startup_system(startup.system())
[INFO] [stdout]    |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/mod.rs:33:47
[INFO] [stdout]    |
[INFO] [stdout] 33 |                 .add_system(update_delta_time.system());
[INFO] [stdout]    |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::IntoQuery`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     use legion::IntoQuery;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bind_groups.rs:167:19
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub fn buffer(mut self, binding: u32, buffer: &'a wgpu::Buffer) -> Self {
[INFO] [stdout]     |                   ----^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bind_groups.rs:171:25
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn texture_view(mut self, binding: u32, texture_view: &'a wgpu::TextureView) -> Self {
[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/bind_groups.rs:175:20
[INFO] [stdout]     |
[INFO] [stdout] 175 |     pub fn sampler(mut self, binding: u32, sampler: &'a wgpu::Sampler) -> Self {
[INFO] [stdout]     |                    ----^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmd`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:101:19
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmd`
[INFO] [stdout]  --> src/layer/editor_layer.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]   |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]  --> src/layer/editor_layer.rs:8:44
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]   |                                            ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmd`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:46:19
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mesh_assets`
[INFO] [stdout]    --> src/layer/mod.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let mesh_assets = ["cube.obj", "cone.obj"];
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mesh_assets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/layer/mod.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |             context: &GraphicsContext,
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/render_scene/mesh_pass.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let mut previous: &mut IndirectBatch = indirect_batches.last_mut().unwrap();
[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/main.rs:488:14
[INFO] [stdout]     |
[INFO] [stdout] 488 |         for (mut translation, _rotation) in translation_query.iter_mut(&mut self.ecs.world) {
[INFO] [stdout]     |              ----^^^^^^^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `event_consumed` is never read
[INFO] [stdout]    --> src/main.rs:742:21
[INFO] [stdout]     |
[INFO] [stdout] 742 |                     event_consumed = state.on_event(&penguin_event);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TIME_STATE` is never used
[INFO] [stdout]   --> src/main.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | static mut TIME_STATE: f32 = 0.0_f32;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `world` and `resources` are never read
[INFO] [stdout]   --> src/main.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct LegionECSData {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 84 |     world: legion::World,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 85 |     resources: legion::Resources,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Yeet` is never constructed
[INFO] [stdout]   --> src/main.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | struct Yeet {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `compute`, `render`, `camera`, `uniform_buffer`, `scene`, and `ecs` are never read
[INFO] [stdout]    --> src/main.rs:97:5
[INFO] [stdout]     |
[INFO] [stdout] 95  | pub struct RendererState {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 96  |     /// Compute pass data.
[INFO] [stdout] 97  |     compute: Compute,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 98  |     /// Render pass data.
[INFO] [stdout] 99  |     render: Render,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     camera: camera::MainCamera,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 104 |     /// Uniform buffer.
[INFO] [stdout] 105 |     uniform_buffer: GpuBuffer<camera::CameraUniformData>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 106 |     /// The currently loaded RenderScene.
[INFO] [stdout] 107 |     scene: render_scene::RenderScene,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 108 |     /// ECS data.
[INFO] [stdout] 109 |     ecs: LegionECSData,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Textures` is never constructed
[INFO] [stdout]    --> src/main.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | struct Textures {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init_textures` is never used
[INFO] [stdout]    --> src/main.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl RendererState {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 120 |     fn init_textures(device: &wgpu::Device, queue: &wgpu::Queue) -> Textures {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RenderObjectStorage` is never constructed
[INFO] [stdout]    --> src/main.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 | struct RenderObjectStorage {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RenderObjectStorage` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `on_event`, `update_camera_and_scene`, `render`, `compute_commands`, and `render_commands` are never used
[INFO] [stdout]    --> src/main.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | impl RendererState {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 168 |     fn new(context: &GraphicsContext) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 467 |     fn update_camera_and_scene(&mut self, context: &GraphicsContext, dt: std::time::Duration) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 563 |     fn render<OutputTextureFunc: FnOnce(&wgpu::TextureView)>(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 581 |     fn compute_commands(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 625 |     fn render_commands(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main_without_layers` is never used
[INFO] [stdout]    --> src/main.rs:706:4
[INFO] [stdout]     |
[INFO] [stdout] 706 | fn main_without_layers() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main_with_layers` is never used
[INFO] [stdout]    --> src/main.rs:900:4
[INFO] [stdout]     |
[INFO] [stdout] 900 | fn main_with_layers() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `bind_group_layout_short` is never used
[INFO] [stdout]   --> src/bind_groups.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub trait DeviceExt {
[INFO] [stdout]    |           --------- method in this trait
[INFO] [stdout] 51 |     fn bind_group_layout_short<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `StorageType` is never used
[INFO] [stdout]   --> src/bind_groups.rs:70:10
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub enum StorageType {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `uniform_buffer_layout_entry` is never used
[INFO] [stdout]    --> src/bind_groups.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn uniform_buffer_layout_entry(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `storage_buffer_layout_entry` is never used
[INFO] [stdout]    --> src/bind_groups.rs:208:8
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub fn storage_buffer_layout_entry(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `buffer_bind_group_entry` is never used
[INFO] [stdout]    --> src/bind_groups.rs:225:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub fn buffer_bind_group_entry(binding: u32, buffer: &wgpu::Buffer) -> wgpu::BindGroupEntry {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `texture_2d` is never used
[INFO] [stdout]   --> src/bind_groups.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 |         pub fn texture_2d(
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sampler` is never used
[INFO] [stdout]   --> src/bind_groups.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 |         pub fn sampler(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resize` is never used
[INFO] [stdout]    --> src/camera.rs:105:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | impl PerspectiveProjection {
[INFO] [stdout]     | -------------------------- method in this implementation
[INFO] [stdout] 105 |     pub fn resize(&mut self, (width, height): (u32, u32)) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mouse_key_down` is never read
[INFO] [stdout]    --> src/camera.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub struct CameraController {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 125 |     mouse_key_down: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `on_event`, `process_mouse_delta_events`, and `process_key_events` are never used
[INFO] [stdout]    --> src/camera.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | impl CameraController {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     fn process_mouse_delta_events(&mut self, dx: f64, dy: f64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fn process_key_events(&mut self, key: input::Key, state: input::KeyState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FrameData` is never constructed
[INFO] [stdout]   --> src/editor/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct FrameData<'a> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EditorState` is never constructed
[INFO] [stdout]   --> src/editor/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct EditorState {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Panels` is never constructed
[INFO] [stdout]   --> src/editor/mod.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Panels {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Panels` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `handle_platform_event`, `on_event`, `update`, and `render_commands` are never used
[INFO] [stdout]    --> src/editor/mod.rs:40:12
[INFO] [stdout]     |
[INFO] [stdout] 39  | impl EditorState {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 40  |     pub fn new(context: &GraphicsContext) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 76  |     pub fn handle_platform_event<T>(&mut self, event: &winit::event::Event<T>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91  |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn update(
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn render_commands(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `draw_ui` and `top_bar` are never used
[INFO] [stdout]    --> src/editor/mod.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl EditorState {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 178 |     fn draw_ui(&mut self, context: &egui::CtxRef, frame_data: &mut FrameData) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     fn top_bar(context: &egui::CtxRef, panels: &mut Panels) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `init_component_editor_state`, `penguin_editor`, and `try_draw_editor_yeet` are never used
[INFO] [stdout]   --> src/editor/component_editor.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub trait ComponentEditor
[INFO] [stdout]    |           --------------- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn init_component_editor_state(&self) -> Self::ComponentEditorState;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     fn penguin_editor(&mut self, ui: &mut egui::Ui, state: &mut Self::ComponentEditorState);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     fn try_draw_editor_yeet(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `component_type_id` and `draw_func` are never read
[INFO] [stdout]   --> src/editor/component_editor.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub(super) struct DrawComponentEditorFunc {
[INFO] [stdout]    |                       ----------------------- fields in this struct
[INFO] [stdout] 60 |         component_type_id: leg::ComponentTypeId,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 61 |         pub draw_func: fn(
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_for_component`, and `draw_editor` are never used
[INFO] [stdout]   --> src/editor/component_editor.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 68 |     impl DrawComponentEditorFunc {
[INFO] [stdout]    |     ---------------------------- associated items in this implementation
[INFO] [stdout] 69 |         pub fn new<ComponentType: ComponentEditor>() -> Self {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |         pub fn is_for_component(&self, component_type_id: leg::ComponentTypeId) -> bool {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |         fn draw_editor<T>(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/editor/component_editor.rs:121:37
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub struct ComponentEditorState(pub Box<dyn std::any::Any>);
[INFO] [stdout]     |                -------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/editor/component_editor.rs:126:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub struct ComponentEditorStateStorage(
[INFO] [stdout]     |                --------------------------- field in this struct
[INFO] [stdout] 126 |         pub std::collections::HashMap<leg::ComponentTypeId, ComponentEditorState>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `draw_funcs`, `ui_states`, and `selected_entity` are never read
[INFO] [stdout]    --> src/editor/component_editor.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub struct EditorComponentStorage {
[INFO] [stdout]     |                ---------------------- fields in this struct
[INFO] [stdout] 132 |         // Functions that draw the editor for a component UI
[INFO] [stdout] 133 |         draw_funcs: Vec<DrawComponentEditorFunc>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 134 |         /// The currently selected entity
[INFO] [stdout] 135 |         ui_states: std::cell::RefCell<ComponentEditorStateStorage>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 136 |         selected_entity: std::cell::Cell<Option<legion::Entity>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `register_component_editor`, `select_entity`, and `draw_entities_component_editors` are never used
[INFO] [stdout]    --> src/editor/component_editor.rs:141:16
[INFO] [stdout]     |
[INFO] [stdout] 140 |     impl EditorComponentStorage {
[INFO] [stdout]     |     --------------------------- methods in this implementation
[INFO] [stdout] 141 |         pub fn register_component_editor<ComponentType>(&mut self)
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |         pub fn select_entity(&self, entity: legion::Entity) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |         pub fn draw_entities_component_editors(
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `enabled` and `l_selected_entity` are never read
[INFO] [stdout]  --> src/editor/scene.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct ScenePanel {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 7 |     pub enabled: bool,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 8 |     l_selected_entity: Option<legion::Entity>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update` is never used
[INFO] [stdout]   --> src/editor/scene.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl ScenePanel {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 11 |     pub fn update(&mut self, context: &egui::CtxRef, frame_data: &mut FrameData) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `enabled` and `frame_time_history` are never read
[INFO] [stdout]  --> src/editor/stats.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct StatsPanel {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 5 |     pub enabled: bool,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 6 |     frame_time_history: FrameTimeHistory,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LineGraph` is never constructed
[INFO] [stdout]   --> src/editor/stats.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum GraphStyle {
[INFO] [stdout]    |      ---------- variant in this enum
[INFO] [stdout] 11 |     Histogram,
[INFO] [stdout] 12 |     LineGraph,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `frame_times` and `graph_style` are never read
[INFO] [stdout]   --> src/editor/stats.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct FrameTimeHistory {
[INFO] [stdout]    |        ---------------- fields in this struct
[INFO] [stdout] 16 |     frame_times: egui::util::History<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     graph_style: GraphStyle,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update` is never used
[INFO] [stdout]   --> src/editor/stats.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 32 |     impl StatsPanel {
[INFO] [stdout]    |     --------------- method in this implementation
[INFO] [stdout] 33 |         pub fn update(&mut self, context: &egui::CtxRef, frame_data: &FrameData) {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update`, `ui`, `average_frame_time`, `average_fps`, and `graph` are never used
[INFO] [stdout]    --> src/editor/stats.rs:68:16
[INFO] [stdout]     |
[INFO] [stdout] 67  |     impl FrameTimeHistory {
[INFO] [stdout]     |     --------------------- methods in this implementation
[INFO] [stdout] 68  |         pub fn update(&mut self, clock: &time::Clock) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75  |         pub fn ui(&mut self, ui: &mut egui::Ui) {
[INFO] [stdout]     |                ^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         fn average_frame_time(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |         fn average_fps(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |         fn graph(&mut self, ui: &mut egui::Ui) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Input` and `Window` are never constructed
[INFO] [stdout]  --> src/events/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum PenguinEvent {
[INFO] [stdout]   |          ------------ variants in this enum
[INFO] [stdout] 7 |     Input(input::InputEvent),
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 8 |     Window(event::WindowResizeEvent),
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PenguinEvent` 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 `0` is never read
[INFO] [stdout]   --> src/events/mod.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct PenguinEventProxy(pub std::sync::Mutex<winit::event_loop::EventLoopProxy<PenguinEvent>>);
[INFO] [stdout]    |            ----------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send_event` is never used
[INFO] [stdout]   --> src/events/mod.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl PenguinEventProxy {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] 20 |     pub fn send_event(&self, event: PenguinEvent) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init` is never used
[INFO] [stdout]   --> src/events/mod.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl PenguinEventSender {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 42 |     pub fn init(event_loop_proxy: winit::event_loop::EventLoopProxy<PenguinEvent>) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/events/mod.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct EventId(pub usize);
[INFO] [stdout]    |            ------- ^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `event_id` and `event` are never read
[INFO] [stdout]   --> src/events/mod.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Event<EventType> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 73 |     pub event_id: EventId,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 74 |     pub event: EventType,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `B` is never constructed
[INFO] [stdout]   --> src/events/mod.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | enum State {
[INFO] [stdout]    |      ----- variant in this enum
[INFO] [stdout] 78 |     A,
[INFO] [stdout] 79 |     B,
[INFO] [stdout]    |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventWrites` is never constructed
[INFO] [stdout]   --> src/events/mod.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct EventWrites<EventType> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `events_a`, `events_b`, `a_start_event_count`, `b_start_event_count`, `event_count`, and `state` are never read
[INFO] [stdout]   --> src/events/mod.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct Events<EventType> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 88 |     events_a: Vec<Event<EventType>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 89 |     events_b: Vec<Event<EventType>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 90 |     a_start_event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 91 |     b_start_event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 93 |     state: State,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send` is never used
[INFO] [stdout]    --> src/events/mod.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | impl<T> Events<T> {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] 108 |     pub fn send(&mut self, event: T) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `size` and `scale_factor` are never read
[INFO] [stdout]   --> src/events/mod.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub struct WindowResizeEvent {
[INFO] [stdout]    |                ----------------- fields in this struct
[INFO] [stdout] 53 |         pub size: winit::dpi::PhysicalSize<u32>,
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 54 |         pub scale_factor: Option<f64>,
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WindowResizeEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `adapter`, `size`, and `scale_factor` are never read
[INFO] [stdout]   --> src/graphics_context.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub struct GraphicsContext {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8  |     pub adapter: wgpu::Adapter,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub size: winit::dpi::PhysicalSize<u32>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 17 |     /// Window scale factor.
[INFO] [stdout] 18 |     pub scale_factor: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `on_resize` and `on_event` are never used
[INFO] [stdout]    --> src/graphics_context.rs:86:12
[INFO] [stdout]     |
[INFO] [stdout] 22  | impl GraphicsContext {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 86  |     pub fn on_resize(&mut self, size: winit::dpi::PhysicalSize<u32>, scale_factor: Option<f64>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Key` and `MouseMotion` are never constructed
[INFO] [stdout]  --> src/input.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum InputEvent {
[INFO] [stdout]   |          ---------- variants in this enum
[INFO] [stdout] 3 |     Key(KeyEvent),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 4 |     /// Contains mouse movement delta.
[INFO] [stdout] 5 |     MouseMotion((f64, f64)),
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `InputEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/input.rs:34:5
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub enum Key {
[INFO] [stdout]     |          --- variants in this enum
[INFO] [stdout] 33  |     /// Left mouse button
[INFO] [stdout] 34  |     LMouseButton,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 35  |     /// Non-numpad 1
[INFO] [stdout] 36  |     Key1,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 37  |     /// Non-numpad 2
[INFO] [stdout] 38  |     Key2,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 39  |     /// Non-numpad 3
[INFO] [stdout] 40  |     Key3,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 41  |     /// Non-numpad 4
[INFO] [stdout] 42  |     Key4,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 43  |     /// Non-numpad 5
[INFO] [stdout] 44  |     Key5,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 45  |     /// Non-numpad 6
[INFO] [stdout] 46  |     Key6,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 47  |     /// Non-numpad 7
[INFO] [stdout] 48  |     Key7,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 49  |     /// Non-numpad 8
[INFO] [stdout] 50  |     Key8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 51  |     /// Non-numpad 9
[INFO] [stdout] 52  |     Key9,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 53  |     /// Non-numpad 0
[INFO] [stdout] 54  |     Key0,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 55  |     A,
[INFO] [stdout]     |     ^
[INFO] [stdout] 56  |     B,
[INFO] [stdout]     |     ^
[INFO] [stdout] 57  |     C,
[INFO] [stdout]     |     ^
[INFO] [stdout] 58  |     D,
[INFO] [stdout]     |     ^
[INFO] [stdout] 59  |     E,
[INFO] [stdout]     |     ^
[INFO] [stdout] 60  |     F,
[INFO] [stdout]     |     ^
[INFO] [stdout] 61  |     G,
[INFO] [stdout]     |     ^
[INFO] [stdout] 62  |     H,
[INFO] [stdout]     |     ^
[INFO] [stdout] 63  |     I,
[INFO] [stdout]     |     ^
[INFO] [stdout] 64  |     J,
[INFO] [stdout]     |     ^
[INFO] [stdout] 65  |     K,
[INFO] [stdout]     |     ^
[INFO] [stdout] 66  |     L,
[INFO] [stdout]     |     ^
[INFO] [stdout] 67  |     M,
[INFO] [stdout]     |     ^
[INFO] [stdout] 68  |     N,
[INFO] [stdout]     |     ^
[INFO] [stdout] 69  |     O,
[INFO] [stdout]     |     ^
[INFO] [stdout] 70  |     P,
[INFO] [stdout]     |     ^
[INFO] [stdout] 71  |     Q,
[INFO] [stdout]     |     ^
[INFO] [stdout] 72  |     R,
[INFO] [stdout]     |     ^
[INFO] [stdout] 73  |     S,
[INFO] [stdout]     |     ^
[INFO] [stdout] 74  |     T,
[INFO] [stdout]     |     ^
[INFO] [stdout] 75  |     U,
[INFO] [stdout]     |     ^
[INFO] [stdout] 76  |     V,
[INFO] [stdout]     |     ^
[INFO] [stdout] 77  |     W,
[INFO] [stdout]     |     ^
[INFO] [stdout] 78  |     X,
[INFO] [stdout]     |     ^
[INFO] [stdout] 79  |     Y,
[INFO] [stdout]     |     ^
[INFO] [stdout] 80  |     Z,
[INFO] [stdout]     |     ^
[INFO] [stdout] 81  |     Escape,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 82  |     F1,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 83  |     F2,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 84  |     F3,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 85  |     F4,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 86  |     F5,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 87  |     F6,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 88  |     F7,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 89  |     F8,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 90  |     F9,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 91  |     F10,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 92  |     F11,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 93  |     F12,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 94  |     PrintScreen,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 95  |     ScrollLock,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 96  |     PauseBreak,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 97  |     Insert,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 98  |     Home,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 99  |     Delete,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 100 |     End,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 101 |     PageDown,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 102 |     PageUp,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 103 |     /// Left arrow key
[INFO] [stdout] 104 |     Left,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 105 |     /// Up arrow key
[INFO] [stdout] 106 |     Up,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 107 |     /// Right arrow key
[INFO] [stdout] 108 |     Right,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 109 |     /// Down arrow key
[INFO] [stdout] 110 |     Down,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 111 |     BackSpace,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 112 |     Return,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 113 |     Space,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 114 |     Numlock,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 115 |     Numpad0,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 116 |     Numpad1,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 117 |     Numpad2,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 118 |     Numpad3,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 119 |     Numpad4,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 120 |     Numpad5,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 121 |     Numpad6,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 122 |     Numpad7,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 123 |     Numpad8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 124 |     Numpad9,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 125 |     NumpadAdd,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 126 |     NumpadDivide,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 127 |     NumpadDecimal,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 128 |     NumpadComma,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 129 |     NumpadEnter,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 130 |     NumpadEquals,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 131 |     NumpadMultiply,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 132 |     NumpadSubtract,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 133 |     Backslash,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 134 |     Colon,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 135 |     Comma,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 136 |     Equals,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 137 |     Grave,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 138 |     LAlt,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 139 |     LBracket,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 140 |     LControl,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 141 |     LShift,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 142 |     LSuper,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 143 |     Minus,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 144 |     Mute,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 145 |     Period,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 146 |     PlayPause,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 147 |     Plus,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 148 |     RAlt,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 149 |     RBracket,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 150 |     RControl,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 151 |     RShift,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 152 |     Semicolon,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 153 |     Tab,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 154 |     VolumeDown,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 155 |     VolumeUp,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Key` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_virtual_keycode` is never used
[INFO] [stdout]    --> src/input.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | impl Key {
[INFO] [stdout]     | -------- associated function in this implementation
[INFO] [stdout] 159 |     pub fn from_virtual_keycode(virtual_keycode: winit::event::VirtualKeyCode) -> Option<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `init`, `startup_steps`, and `run_steps` are never used
[INFO] [stdout]   --> src/layer/mod.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub trait Layer {
[INFO] [stdout]    |           ----- associated items in this trait
[INFO] [stdout] 41 |     fn init(self, cmd: &mut leg::CommandBuffer, resources: &mut leg::Resources);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 42 |     fn startup_steps() -> Option<Vec<leg::Step>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 43 |     fn run_steps() -> Option<Vec<leg::Step>>;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `start_time`, `elapsed_f64`, `dt_f32`, and `dt_f64` are never used
[INFO] [stdout]   --> src/layer/application_layer.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl Time {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn start_time(&self) -> std::time::Instant {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn elapsed_f64(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn dt_f32(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn dt_f64(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mesh_assets` is never read
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:97:9
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct BaseRenderSceneLayer<'a> {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 96 |     pub window: &'a winit::window::Window,
[INFO] [stdout] 97 |     pub mesh_assets: &'a [&'a str],
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `should_rebuild_batches` is never read
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub struct RenderObjects {
[INFO] [stdout]    |                ------------- field in this struct
[INFO] [stdout] 41 |         pub render_objects: HandleMap<RenderObject>,
[INFO] [stdout] 42 |         pub should_rebuild_batches: bool,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/layer/scene_layer.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct SceneEntityHandles(Vec<Entity>);
[INFO] [stdout]    |            ------------------ ^^^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WriteState` is never used
[INFO] [stdout]   --> src/layer/scene_layer.rs:18:6
[INFO] [stdout]    |
[INFO] [stdout] 18 | enum WriteState {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `swap` is never used
[INFO] [stdout]   --> src/layer/scene_layer.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl WriteState {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 23 |     fn swap(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Events` is never constructed
[INFO] [stdout]   --> src/layer/scene_layer.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct Events<E: Resource> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Events2` is never constructed
[INFO] [stdout]   --> src/layer/scene_layer.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Events2<EventType: legion::systems::Resource> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/layer/scene_layer.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl<T: legion::systems::Resource> Events2<T> {
[INFO] [stdout]    | --------------------------------------------- associated function in this implementation
[INFO] [stdout] 48 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `read_count` is never read
[INFO] [stdout]   --> src/layer/scene_layer.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct EventReads<E: legion::systems::Resource> {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 64 |     data: AtomicRefCell<Vec<E>>,
[INFO] [stdout] 65 |     read_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `some_message` is never read
[INFO] [stdout]   --> src/layer/scene_layer.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct SomeEvent {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 93 |     some_message: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init_register` is never used
[INFO] [stdout]   --> src/layer/mod.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 52 |     impl EditorComponentStorage {
[INFO] [stdout]    |     --------------------------- associated function in this implementation
[INFO] [stdout] 53 |         pub fn init_register() -> Self {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Textures` is never constructed
[INFO] [stdout]   --> src/layer/mod.rs:64:16
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub struct Textures {
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init` is never used
[INFO] [stdout]   --> src/layer/mod.rs:71:16
[INFO] [stdout]    |
[INFO] [stdout] 70 |     impl Textures {
[INFO] [stdout]    |     ------------- associated function in this implementation
[INFO] [stdout] 71 |         pub fn init(device: &wgpu::Device, queue: &wgpu::Queue) -> (Textures, wgpu::BindGroup) {
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Entities` is never constructed
[INFO] [stdout]    --> src/layer/mod.rs:111:16
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub struct Entities {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init` is never used
[INFO] [stdout]    --> src/layer/mod.rs:116:16
[INFO] [stdout]     |
[INFO] [stdout] 115 |     impl Entities {
[INFO] [stdout]     |     ------------- associated function in this implementation
[INFO] [stdout] 116 |         pub fn init(
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/new_bevy_ecs/graphics_context.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct DepthTexture(pub texture::Texture);
[INFO] [stdout]   |            ------------ ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vertex` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Vertex {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Vertex` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MeshDefinition` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct MeshDefinition {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MeshDefinition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VertexArrayBuffer` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct VertexArrayBuffer {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VertexArrayBuffer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MeshAsset` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct MeshAsset {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MeshAsset` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `ATTRIBUTES` and `buffer_layout` are never used
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:46:11
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Vertex {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 46 |     const ATTRIBUTES: [wgpu::VertexAttribute; 3] = wgpu::vertex_attr_array![
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn buffer_layout<'a>() -> wgpu::VertexBufferLayout<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `create_draw_command` is never used
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl MeshDefinition {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 62 |     /// Creates a draw command using this mesh.
[INFO] [stdout] 63 |     pub fn create_draw_command(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `vertices_slice`, `indices_slice`, and `build_from_mesh_assets` are never used
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | impl VertexArrayBuffer {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 79 |     /// Returns the slice of the vertex array buffer that contains the vertices.
[INFO] [stdout] 80 |     pub fn vertices_slice(&self) -> wgpu::BufferSlice {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn indices_slice(&self) -> wgpu::BufferSlice {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub fn build_from_mesh_assets(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `load_obj` is never used
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | impl MeshAsset {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 158 |     /// Loads an obj file's vertices and indices into memory.
[INFO] [stdout] 159 |     pub fn load_obj<P: AsRef<std::path::Path>>(path: P) -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mesh_asset_names` is never read
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub struct MeshAssetsToLoad {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] 214 |     pub mesh_asset_names: &'static [&'static str],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DrawBatcher` is never constructed
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:228:8
[INFO] [stdout]     |
[INFO] [stdout] 228 | struct DrawBatcher(mesh_pass::LegacyMeshPass);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ForwardMeshPass` is never constructed
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | struct ForwardMeshPass {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/new_bevy_ecs/mod.rs:55:16
[INFO] [stdout]    |
[INFO] [stdout] 54 |     impl Time {
[INFO] [stdout]    |     --------- methods in this implementation
[INFO] [stdout] 55 |         pub fn delta_time(&self) -> std::time::Duration {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |         pub fn start_time(&self) -> std::time::Instant {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |         pub fn elapsed(&self) -> std::time::Duration {
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |         pub fn elapsed_f32(&self) -> f32 {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |         pub fn elapsed_f64(&self) -> f64 {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |         pub fn dt_f32(&self) -> f32 {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |         pub fn dt_f64(&self) -> f64 {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `render_bounds` is never read
[INFO] [stdout]   --> src/render_scene/mod.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct RenderObjectDescriptor {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub render_bounds: mesh::RenderBounds,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_DRAW_COMMANDS` is never used
[INFO] [stdout]   --> src/render_scene/mod.rs:49:11
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub const MAX_DRAW_COMMANDS: usize = 100;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/render_scene/mod.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct RenderScene {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub vertex_array_buffer: VertexArrayBuffer,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 59 |     /// Representation of each mesh in the vertex array buffer.
[INFO] [stdout] 60 |     meshes: Vec<mesh::Mesh>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub render_objects: HandleMap<RenderObject>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 69 |     /// The render objects array in GPU-memory.
[INFO] [stdout] 70 |     pub render_objects_buffer: GpuBuffer<RenderObject>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 71 |     /// Render objects that need to be reuploaded to the GPU.
[INFO] [stdout] 72 |     render_objects_to_update: Vec<Handle<RenderObject>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 73 |     //
[INFO] [stdout] 74 |     pub instance_buffer: GpuBuffer<RenderInstance>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub draw_commands_buffer: GpuBuffer<DrawIndexedIndirect>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 82 |     /// Buffer of final draw commands needed for the frame (set by the compute shader).
[INFO] [stdout] 83 |     pub out_draw_commands_buffer: GpuBuffer<DrawIndexedIndirect>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 84 |     /// Buffer with draw_count set to 0, used to reset draw_count_buffer.
[INFO] [stdout] 85 |     pub clear_draw_count_buffer: GpuBuffer<DrawIndirectCount>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 86 |     /// Buffer containing the number of draw commands to issue this frame (filled by the compute shader).
[INFO] [stdout] 87 |     pub draw_count_buffer: GpuBuffer<DrawIndirectCount>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub max_draw_count: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     //
[INFO] [stdout] 93 |     pub instance_index_to_render_object_map: GpuBuffer<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |     //
[INFO] [stdout] 95 |     pub clear_compute_shader_local_data_buffer: GpuBuffer<DrawOutputInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     pub compute_shader_local_data_buffer: GpuBuffer<DrawOutputInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     forward_pass: mesh_pass::LegacyMeshPass,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `register_object`, `update_transform_model_matrix`, `update`, and `build_batches` are never used
[INFO] [stdout]    --> src/render_scene/mod.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl RenderScene {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 124 |     /// Creates a new render scene with the specified mesh assets.
[INFO] [stdout] 125 |     pub fn new(device: &wgpu::Device, mesh_assets: &[&str]) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn register_object(&mut self, desc: &RenderObjectDescriptor) -> Handle<RenderObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn update_transform_model_matrix(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn update(&mut self, queue: &wgpu::Queue) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     pub fn build_batches(&mut self, queue: &wgpu::Queue) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_draw_indirect_buffers` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn create_draw_indirect_buffers(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_draw_count_buffers` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:307:4
[INFO] [stdout]     |
[INFO] [stdout] 307 | fn create_draw_count_buffers(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_render_objects_buffer` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:331:4
[INFO] [stdout]     |
[INFO] [stdout] 331 | fn create_render_objects_buffer(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_instance_buffer` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:345:4
[INFO] [stdout]     |
[INFO] [stdout] 345 | fn create_instance_buffer(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_compute_shader_local_data_buffers` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:368:4
[INFO] [stdout]     |
[INFO] [stdout] 368 | fn create_compute_shader_local_data_buffers(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIND_GROUP_LAYOUT_DESC` is never used
[INFO] [stdout]  --> src/render_scene/compute_pipeline.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const BIND_GROUP_LAYOUT_DESC: wgpu::BindGroupLayoutDescriptor =
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bind_group_entries` is never used
[INFO] [stdout]   --> src/render_scene/compute_pipeline.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn bind_group_entries<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `texture` is never read
[INFO] [stdout]  --> src/texture.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 4 |     pub texture: wgpu::Texture,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `texture_2d` is never used
[INFO] [stdout]    --> src/texture.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub fn texture_2d(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sampler` is never used
[INFO] [stdout]    --> src/texture.rs:165:12
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub fn sampler(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 19s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: fs_extra v1.2.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "e5f3dbff0ef35b7d0daa9eadaa9b9a67e0a2a26fe459636cc57ac07fc0909463", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5f3dbff0ef35b7d0daa9eadaa9b9a67e0a2a26fe459636cc57ac07fc0909463", kill_on_drop: false }`
[INFO] [stdout] e5f3dbff0ef35b7d0daa9eadaa9b9a67e0a2a26fe459636cc57ac07fc0909463
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 38127459f3a1866e2aed59a59e019e0d7364fba61c76cd0541c7c806fca2cb58
[INFO] running `Command { std: "docker" "start" "-a" "38127459f3a1866e2aed59a59e019e0d7364fba61c76cd0541c7c806fca2cb58", kill_on_drop: false }`
[INFO] [stderr]    Compiling penguin_engine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `downcast_rs::Downcast`
[INFO] [stdout]  --> src/bind_groups.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use downcast_rs::Downcast;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/bind_groups.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::systems::CommandBuffer`
[INFO] [stdout]  --> src/camera.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use legion::systems::CommandBuffer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Entity` and `Resources`
[INFO] [stdout]  --> src/camera.rs:3:14
[INFO] [stdout]   |
[INFO] [stdout] 3 | use legion::{Entity, Resources};
[INFO] [stdout]   |              ^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::*`
[INFO] [stdout]  --> src/editor/component_editor.rs:5:13
[INFO] [stdout]   |
[INFO] [stdout] 5 |     pub use legion::world::*;
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::storage::*`
[INFO] [stdout]  --> src/editor/mod.rs:8:13
[INFO] [stdout]   |
[INFO] [stdout] 8 |     pub use legion::storage::*;
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::*`
[INFO] [stdout]  --> src/editor/mod.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub use legion::world::*;
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::DerefMut`
[INFO] [stdout]  --> src/events/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::ops::DerefMut;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::input::InputEvent`
[INFO] [stdout]   --> src/events/mod.rs:57:13
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub use crate::input::InputEvent;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphicsContext`
[INFO] [stdout]  --> src/layer/application_layer.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{GraphicsContext, Layer};
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `VertexArrayBuffer`, `Vertex`, `bind_groups`, and `render_scene`
[INFO] [stdout]  --> src/layer/base_render_scene_layer/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     bind_groups, mesh, render_scene, GraphicsContext, Layer, RenderObjectDescriptor, Vertex,
[INFO] [stdout]   |     ^^^^^^^^^^^        ^^^^^^^^^^^^                                                  ^^^^^^
[INFO] [stdout] 6 |     VertexArrayBuffer, MAX_DRAW_COMMANDS,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Translation`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::components::Translation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BindGroupLayoutEntry` and `ShaderStages`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | use wgpu::{BindGroupLayoutEntry, ShaderStages};
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::events::PenguinEventSender`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::events::PenguinEventSender;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LegacyMeshPass`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:19:53
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::render_scene::mesh_pass::{IndirectBatch, LegacyMeshPass, PassObject};
[INFO] [stdout]    |                                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `events`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:21:13
[INFO] [stdout]    |
[INFO] [stdout] 21 | use crate::{events, DrawOutputInfo, RenderInstance};
[INFO] [stdout]    |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::layer::application_layer::Time`
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use crate::layer::application_layer::Time;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rotation`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:162:44
[INFO] [stdout]     |
[INFO] [stdout] 162 |     use crate::components::{MeshComponent, Rotation};
[INFO] [stdout]     |                                            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::SubWorld`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:163:9
[INFO] [stdout]     |
[INFO] [stdout] 163 |     use legion::world::SubWorld;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawOutputInfo` and `MAX_DRAW_COMMANDS`
[INFO] [stdout]  --> src/layer/pipelines_layer.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 |     camera, mesh, texture, DrawOutputInfo, GraphicsContext, Layer, RenderInstance, Vertex,
[INFO] [stdout]   |                            ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     VertexArrayBuffer, MAX_DRAW_COMMANDS,
[INFO] [stdout]   |                        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::marker::PhantomData`
[INFO] [stdout]  --> src/layer/pipelines_layer.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::marker::PhantomData;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `mem`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::{iter, mem, slice};
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DeviceExt`, `buffer_bind_group_entry`, `storage_buffer_layout_entry`, and `uniform_buffer_layout_entry`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     buffer_bind_group_entry, storage_buffer_layout_entry, uniform_buffer_layout_entry, DeviceExt,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Translation`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::components::Translation;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render_scene::RenderObject`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | use crate::render_scene::RenderObject;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `penguin_util::handle::Handle`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use penguin_util::handle::Handle;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DrawIndexedIndirect` and `DrawIndirectCount`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:25:35
[INFO] [stdout]    |
[INFO] [stdout] 25 | use penguin_util::raw_gpu_types::{DrawIndexedIndirect, DrawIndirectCount};
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BindGroupLayoutEntry`, `BindGroup`, and `ShaderStages`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | use wgpu::{BindGroup, BindGroupLayoutEntry, ShaderStages};
[INFO] [stdout]    |            ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `macaw as m`
[INFO] [stdout]    --> src/layer/pipelines_layer.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |     use macaw as m;
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicRefMut` and `AtomicRef`
[INFO] [stdout]  --> src/layer/scene_layer.rs:2:22
[INFO] [stdout]   |
[INFO] [stdout] 2 | use atomic_refcell::{AtomicRef, AtomicRefCell, AtomicRefMut};
[INFO] [stdout]   |                      ^^^^^^^^^                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::SubWorld`
[INFO] [stdout]  --> src/layer/scene_layer.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use legion::world::SubWorld;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Query`
[INFO] [stdout]  --> src/layer/scene_layer.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | use legion::{component, system, Entity, Query, Resources, Schedule};
[INFO] [stdout]   |                                         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/layer/scene_layer.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::layer::scene_layer::WriteState::A`
[INFO] [stdout]   --> src/layer/scene_layer.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::layer::scene_layer::WriteState::A;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RenderInstance`, `RenderObjectDescriptor`, `Vertex`, and `camera`
[INFO] [stdout]   --> src/layer/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     camera, components, editor, mesh, render_scene, texture, RenderInstance,
[INFO] [stdout]    |     ^^^^^^                                                   ^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     RenderObjectDescriptor, Vertex,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RendererState`
[INFO] [stdout]   --> src/layer/mod.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::{GraphicsContext, RendererState};
[INFO] [stdout]    |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `atomic_refcell::AtomicRef`
[INFO] [stdout]   --> src/layer/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use atomic_refcell::AtomicRef;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoQuery`, `Resources`, `component`, and `maybe_changed`
[INFO] [stdout]   --> src/layer/mod.rs:19:14
[INFO] [stdout]    |
[INFO] [stdout] 19 | use legion::{component, maybe_changed, IntoQuery, Resources};
[INFO] [stdout]    |              ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `GpuBufferDeviceExt` and `GpuBuffer`
[INFO] [stdout]   --> src/layer/mod.rs:22:20
[INFO] [stdout]    |
[INFO] [stdout] 22 | use penguin_util::{GpuBuffer, GpuBufferDeviceExt};
[INFO] [stdout]    |                    ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice`
[INFO] [stdout]   --> src/layer/mod.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use std::slice;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::render_scene::MAX_DRAW_COMMANDS`
[INFO] [stdout]   --> src/layer/mod.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::render_scene::MAX_DRAW_COMMANDS;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `components::*`
[INFO] [stdout]   --> src/layer/mod.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use components::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::system`
[INFO] [stdout]   --> src/layer/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | use legion::system;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::systems::Step`
[INFO] [stdout]   --> src/layer/mod.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use legion::systems::Step;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `penguin_util::raw_gpu_types::DrawIndirectCount`
[INFO] [stdout]   --> src/layer/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | use penguin_util::raw_gpu_types::DrawIndirectCount;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `render_scene::RenderObject`
[INFO] [stdout]   --> src/layer/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | use render_scene::RenderObject;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::CommandEncoder`
[INFO] [stdout]   --> src/layer/mod.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | use wgpu::CommandEncoder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::storage::*`
[INFO] [stdout]   --> src/layer/mod.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub use legion::storage::*;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::world::*`
[INFO] [stdout]   --> src/layer/mod.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub use legion::world::*;
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::*`
[INFO] [stdout]   --> src/layer/mod.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |     pub use legion::*;
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `resources::*`
[INFO] [stdout]   --> src/layer/mod.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | use resources::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::new_bevy_ecs::time::TimePlugin`
[INFO] [stdout]  --> src/new_bevy_ecs/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::new_bevy_ecs::time::TimePlugin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `PluginGroupBuilder` and `PluginGroup`
[INFO] [stdout]  --> src/new_bevy_ecs/mod.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use bevy_app::{App, PluginGroup, PluginGroupBuilder};
[INFO] [stdout]   |                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_ecs::prelude::*`
[INFO] [stdout]  --> src/new_bevy_ecs/meshes.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use bevy_ecs::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `bevy_ecs::system::Commands`
[INFO] [stdout]  --> src/new_bevy_ecs/meshes.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use bevy_ecs::system::Commands;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Range`
[INFO] [stdout]  --> src/new_bevy_ecs/meshes.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::ops::Range;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GraphicsContext`
[INFO] [stdout]  --> src/render_scene/mod.rs:6:19
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::{mesh, GraphicsContext, RenderInstance, VertexArrayBuffer};
[INFO] [stdout]   |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CommandBuffer` and `Step`
[INFO] [stdout]  --> src/render_scene/mod.rs:7:23
[INFO] [stdout]   |
[INFO] [stdout] 7 | use legion::systems::{CommandBuffer, Step};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::Resources`
[INFO] [stdout]  --> src/render_scene/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use legion::Resources;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Resources`
[INFO] [stdout]   --> src/main.rs:28:40
[INFO] [stdout]    |
[INFO] [stdout] 28 | use legion::{maybe_changed, IntoQuery, Resources};
[INFO] [stdout]    |                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::bind_groups::DeviceExt`
[INFO] [stdout]   --> src/main.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | use crate::bind_groups::DeviceExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::transmute`
[INFO] [stdout]   --> src/main.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | use std::mem::transmute;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/graphics_context.rs:13:54
[INFO] [stdout]    |
[INFO] [stdout] 13 |         app.add_startup_system(init_graphics_context.system())
[INFO] [stdout]    |                                                      ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/graphics_context.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 |             .add_system(on_window_resize.system());
[INFO] [stdout]    |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/mod.rs:32:44
[INFO] [stdout]    |
[INFO] [stdout] 32 |             app.add_startup_system(startup.system())
[INFO] [stdout]    |                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stdout]   --> src/new_bevy_ecs/mod.rs:33:47
[INFO] [stdout]    |
[INFO] [stdout] 33 |                 .add_system(update_delta_time.system());
[INFO] [stdout]    |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `legion::IntoQuery`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     use legion::IntoQuery;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bind_groups.rs:167:19
[INFO] [stdout]     |
[INFO] [stdout] 167 |     pub fn buffer(mut self, binding: u32, buffer: &'a wgpu::Buffer) -> Self {
[INFO] [stdout]     |                   ----^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bind_groups.rs:171:25
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn texture_view(mut self, binding: u32, texture_view: &'a wgpu::TextureView) -> Self {
[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/bind_groups.rs:175:20
[INFO] [stdout]     |
[INFO] [stdout] 175 |     pub fn sampler(mut self, binding: u32, sampler: &'a wgpu::Sampler) -> Self {
[INFO] [stdout]     |                    ----^^^^
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmd`
[INFO] [stdout]    --> src/layer/base_render_scene_layer/mod.rs:101:19
[INFO] [stdout]     |
[INFO] [stdout] 101 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmd`
[INFO] [stdout]  --> src/layer/editor_layer.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]   |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]  --> src/layer/editor_layer.rs:8:44
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]   |                                            ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cmd`
[INFO] [stdout]   --> src/layer/pipelines_layer.rs:46:19
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stdout]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mesh_assets`
[INFO] [stdout]    --> src/layer/mod.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |             let mesh_assets = ["cube.obj", "cone.obj"];
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mesh_assets`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `context`
[INFO] [stdout]    --> src/layer/mod.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |             context: &GraphicsContext,
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/render_scene/mesh_pass.rs:158:21
[INFO] [stdout]     |
[INFO] [stdout] 158 |                 let mut previous: &mut IndirectBatch = indirect_batches.last_mut().unwrap();
[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/main.rs:488:14
[INFO] [stdout]     |
[INFO] [stdout] 488 |         for (mut translation, _rotation) in translation_query.iter_mut(&mut self.ecs.world) {
[INFO] [stdout]     |              ----^^^^^^^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `event_consumed` is never read
[INFO] [stdout]    --> src/main.rs:742:21
[INFO] [stdout]     |
[INFO] [stdout] 742 |                     event_consumed = state.on_event(&penguin_event);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `TIME_STATE` is never used
[INFO] [stdout]   --> src/main.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | static mut TIME_STATE: f32 = 0.0_f32;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `world` and `resources` are never read
[INFO] [stdout]   --> src/main.rs:84:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct LegionECSData {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 84 |     world: legion::World,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 85 |     resources: legion::Resources,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Yeet` is never constructed
[INFO] [stdout]   --> src/main.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | struct Yeet {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `compute`, `render`, `camera`, `uniform_buffer`, `scene`, and `ecs` are never read
[INFO] [stdout]    --> src/main.rs:97:5
[INFO] [stdout]     |
[INFO] [stdout] 95  | pub struct RendererState {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 96  |     /// Compute pass data.
[INFO] [stdout] 97  |     compute: Compute,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 98  |     /// Render pass data.
[INFO] [stdout] 99  |     render: Render,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     camera: camera::MainCamera,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 104 |     /// Uniform buffer.
[INFO] [stdout] 105 |     uniform_buffer: GpuBuffer<camera::CameraUniformData>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 106 |     /// The currently loaded RenderScene.
[INFO] [stdout] 107 |     scene: render_scene::RenderScene,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 108 |     /// ECS data.
[INFO] [stdout] 109 |     ecs: LegionECSData,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Textures` is never constructed
[INFO] [stdout]    --> src/main.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | struct Textures {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init_textures` is never used
[INFO] [stdout]    --> src/main.rs:120:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl RendererState {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 120 |     fn init_textures(device: &wgpu::Device, queue: &wgpu::Queue) -> Textures {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RenderObjectStorage` is never constructed
[INFO] [stdout]    --> src/main.rs:158:8
[INFO] [stdout]     |
[INFO] [stdout] 158 | struct RenderObjectStorage {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `RenderObjectStorage` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `on_event`, `update_camera_and_scene`, `render`, `compute_commands`, and `render_commands` are never used
[INFO] [stdout]    --> src/main.rs:168:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | impl RendererState {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 168 |     fn new(context: &GraphicsContext) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 |     fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 467 |     fn update_camera_and_scene(&mut self, context: &GraphicsContext, dt: std::time::Duration) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 563 |     fn render<OutputTextureFunc: FnOnce(&wgpu::TextureView)>(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 581 |     fn compute_commands(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 625 |     fn render_commands(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main_without_layers` is never used
[INFO] [stdout]    --> src/main.rs:706:4
[INFO] [stdout]     |
[INFO] [stdout] 706 | fn main_without_layers() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main_with_layers` is never used
[INFO] [stdout]    --> src/main.rs:900:4
[INFO] [stdout]     |
[INFO] [stdout] 900 | fn main_with_layers() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `bind_group_layout_short` is never used
[INFO] [stdout]   --> src/bind_groups.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub trait DeviceExt {
[INFO] [stdout]    |           --------- method in this trait
[INFO] [stdout] 51 |     fn bind_group_layout_short<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `StorageType` is never used
[INFO] [stdout]   --> src/bind_groups.rs:70:10
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub enum StorageType {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `uniform_buffer_layout_entry` is never used
[INFO] [stdout]    --> src/bind_groups.rs:193:8
[INFO] [stdout]     |
[INFO] [stdout] 193 | pub fn uniform_buffer_layout_entry(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `storage_buffer_layout_entry` is never used
[INFO] [stdout]    --> src/bind_groups.rs:208:8
[INFO] [stdout]     |
[INFO] [stdout] 208 | pub fn storage_buffer_layout_entry(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `buffer_bind_group_entry` is never used
[INFO] [stdout]    --> src/bind_groups.rs:225:8
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub fn buffer_bind_group_entry(binding: u32, buffer: &wgpu::Buffer) -> wgpu::BindGroupEntry {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `texture_2d` is never used
[INFO] [stdout]   --> src/bind_groups.rs:13:16
[INFO] [stdout]    |
[INFO] [stdout] 13 |         pub fn texture_2d(
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sampler` is never used
[INFO] [stdout]   --> src/bind_groups.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 |         pub fn sampler(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `resize` is never used
[INFO] [stdout]    --> src/camera.rs:105:12
[INFO] [stdout]     |
[INFO] [stdout] 104 | impl PerspectiveProjection {
[INFO] [stdout]     | -------------------------- method in this implementation
[INFO] [stdout] 105 |     pub fn resize(&mut self, (width, height): (u32, u32)) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mouse_key_down` is never read
[INFO] [stdout]    --> src/camera.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub struct CameraController {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 125 |     mouse_key_down: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `on_event`, `process_mouse_delta_events`, and `process_key_events` are never used
[INFO] [stdout]    --> src/camera.rs:144:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | impl CameraController {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     fn process_mouse_delta_events(&mut self, dx: f64, dy: f64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |     fn process_key_events(&mut self, key: input::Key, state: input::KeyState) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FrameData` is never constructed
[INFO] [stdout]   --> src/editor/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct FrameData<'a> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EditorState` is never constructed
[INFO] [stdout]   --> src/editor/mod.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct EditorState {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Panels` is never constructed
[INFO] [stdout]   --> src/editor/mod.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Panels {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Panels` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `handle_platform_event`, `on_event`, `update`, and `render_commands` are never used
[INFO] [stdout]    --> src/editor/mod.rs:40:12
[INFO] [stdout]     |
[INFO] [stdout] 39  | impl EditorState {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 40  |     pub fn new(context: &GraphicsContext) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 76  |     pub fn handle_platform_event<T>(&mut self, event: &winit::event::Event<T>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91  |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn update(
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn render_commands(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `draw_ui` and `top_bar` are never used
[INFO] [stdout]    --> src/editor/mod.rs:178:8
[INFO] [stdout]     |
[INFO] [stdout] 177 | impl EditorState {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 178 |     fn draw_ui(&mut self, context: &egui::CtxRef, frame_data: &mut FrameData) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     fn top_bar(context: &egui::CtxRef, panels: &mut Panels) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `init_component_editor_state`, `penguin_editor`, and `try_draw_editor_yeet` are never used
[INFO] [stdout]   --> src/editor/component_editor.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub trait ComponentEditor
[INFO] [stdout]    |           --------------- associated items in this trait
[INFO] [stdout] ...
[INFO] [stdout] 15 |     fn init_component_editor_state(&self) -> Self::ComponentEditorState;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 16 |     fn penguin_editor(&mut self, ui: &mut egui::Ui, state: &mut Self::ComponentEditorState);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 17 |
[INFO] [stdout] 18 |     fn try_draw_editor_yeet(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `component_type_id` and `draw_func` are never read
[INFO] [stdout]   --> src/editor/component_editor.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub(super) struct DrawComponentEditorFunc {
[INFO] [stdout]    |                       ----------------------- fields in this struct
[INFO] [stdout] 60 |         component_type_id: leg::ComponentTypeId,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 61 |         pub draw_func: fn(
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_for_component`, and `draw_editor` are never used
[INFO] [stdout]   --> src/editor/component_editor.rs:69:16
[INFO] [stdout]    |
[INFO] [stdout] 68 |     impl DrawComponentEditorFunc {
[INFO] [stdout]    |     ---------------------------- associated items in this implementation
[INFO] [stdout] 69 |         pub fn new<ComponentType: ComponentEditor>() -> Self {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |         pub fn is_for_component(&self, component_type_id: leg::ComponentTypeId) -> bool {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |         fn draw_editor<T>(
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/editor/component_editor.rs:121:37
[INFO] [stdout]     |
[INFO] [stdout] 121 |     pub struct ComponentEditorState(pub Box<dyn std::any::Any>);
[INFO] [stdout]     |                -------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/editor/component_editor.rs:126:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub struct ComponentEditorStateStorage(
[INFO] [stdout]     |                --------------------------- field in this struct
[INFO] [stdout] 126 |         pub std::collections::HashMap<leg::ComponentTypeId, ComponentEditorState>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `draw_funcs`, `ui_states`, and `selected_entity` are never read
[INFO] [stdout]    --> src/editor/component_editor.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     pub struct EditorComponentStorage {
[INFO] [stdout]     |                ---------------------- fields in this struct
[INFO] [stdout] 132 |         // Functions that draw the editor for a component UI
[INFO] [stdout] 133 |         draw_funcs: Vec<DrawComponentEditorFunc>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 134 |         /// The currently selected entity
[INFO] [stdout] 135 |         ui_states: std::cell::RefCell<ComponentEditorStateStorage>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 136 |         selected_entity: std::cell::Cell<Option<legion::Entity>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `register_component_editor`, `select_entity`, and `draw_entities_component_editors` are never used
[INFO] [stdout]    --> src/editor/component_editor.rs:141:16
[INFO] [stdout]     |
[INFO] [stdout] 140 |     impl EditorComponentStorage {
[INFO] [stdout]     |     --------------------------- methods in this implementation
[INFO] [stdout] 141 |         pub fn register_component_editor<ComponentType>(&mut self)
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |         pub fn select_entity(&self, entity: legion::Entity) {
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 165 |         pub fn draw_entities_component_editors(
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `enabled` and `l_selected_entity` are never read
[INFO] [stdout]  --> src/editor/scene.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct ScenePanel {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 7 |     pub enabled: bool,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 8 |     l_selected_entity: Option<legion::Entity>,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update` is never used
[INFO] [stdout]   --> src/editor/scene.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl ScenePanel {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 11 |     pub fn update(&mut self, context: &egui::CtxRef, frame_data: &mut FrameData) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `enabled` and `frame_time_history` are never read
[INFO] [stdout]  --> src/editor/stats.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct StatsPanel {
[INFO] [stdout]   |            ---------- fields in this struct
[INFO] [stdout] 5 |     pub enabled: bool,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 6 |     frame_time_history: FrameTimeHistory,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LineGraph` is never constructed
[INFO] [stdout]   --> src/editor/stats.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum GraphStyle {
[INFO] [stdout]    |      ---------- variant in this enum
[INFO] [stdout] 11 |     Histogram,
[INFO] [stdout] 12 |     LineGraph,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `frame_times` and `graph_style` are never read
[INFO] [stdout]   --> src/editor/stats.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct FrameTimeHistory {
[INFO] [stdout]    |        ---------------- fields in this struct
[INFO] [stdout] 16 |     frame_times: egui::util::History<f32>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 17 |     graph_style: GraphStyle,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update` is never used
[INFO] [stdout]   --> src/editor/stats.rs:33:16
[INFO] [stdout]    |
[INFO] [stdout] 32 |     impl StatsPanel {
[INFO] [stdout]    |     --------------- method in this implementation
[INFO] [stdout] 33 |         pub fn update(&mut self, context: &egui::CtxRef, frame_data: &FrameData) {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update`, `ui`, `average_frame_time`, `average_fps`, and `graph` are never used
[INFO] [stdout]    --> src/editor/stats.rs:68:16
[INFO] [stdout]     |
[INFO] [stdout] 67  |     impl FrameTimeHistory {
[INFO] [stdout]     |     --------------------- methods in this implementation
[INFO] [stdout] 68  |         pub fn update(&mut self, clock: &time::Clock) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75  |         pub fn ui(&mut self, ui: &mut egui::Ui) {
[INFO] [stdout]     |                ^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |         fn average_frame_time(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |         fn average_fps(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |         fn graph(&mut self, ui: &mut egui::Ui) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Input` and `Window` are never constructed
[INFO] [stdout]  --> src/events/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum PenguinEvent {
[INFO] [stdout]   |          ------------ variants in this enum
[INFO] [stdout] 7 |     Input(input::InputEvent),
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout] 8 |     Window(event::WindowResizeEvent),
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PenguinEvent` 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 `0` is never read
[INFO] [stdout]   --> src/events/mod.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct PenguinEventProxy(pub std::sync::Mutex<winit::event_loop::EventLoopProxy<PenguinEvent>>);
[INFO] [stdout]    |            ----------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send_event` is never used
[INFO] [stdout]   --> src/events/mod.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl PenguinEventProxy {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] 20 |     pub fn send_event(&self, event: PenguinEvent) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init` is never used
[INFO] [stdout]   --> src/events/mod.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl PenguinEventSender {
[INFO] [stdout]    | ----------------------- associated function in this implementation
[INFO] [stdout] 42 |     pub fn init(event_loop_proxy: winit::event_loop::EventLoopProxy<PenguinEvent>) -> Self {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/events/mod.rs:70:20
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct EventId(pub usize);
[INFO] [stdout]    |            ------- ^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `event_id` and `event` are never read
[INFO] [stdout]   --> src/events/mod.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub struct Event<EventType> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 73 |     pub event_id: EventId,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 74 |     pub event: EventType,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `B` is never constructed
[INFO] [stdout]   --> src/events/mod.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | enum State {
[INFO] [stdout]    |      ----- variant in this enum
[INFO] [stdout] 78 |     A,
[INFO] [stdout] 79 |     B,
[INFO] [stdout]    |     ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventWrites` is never constructed
[INFO] [stdout]   --> src/events/mod.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub struct EventWrites<EventType> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `events_a`, `events_b`, `a_start_event_count`, `b_start_event_count`, `event_count`, and `state` are never read
[INFO] [stdout]   --> src/events/mod.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub struct Events<EventType> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 88 |     events_a: Vec<Event<EventType>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 89 |     events_b: Vec<Event<EventType>>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 90 |     a_start_event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 91 |     b_start_event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     event_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 93 |     state: State,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send` is never used
[INFO] [stdout]    --> src/events/mod.rs:108:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | impl<T> Events<T> {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] 108 |     pub fn send(&mut self, event: T) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `size` and `scale_factor` are never read
[INFO] [stdout]   --> src/events/mod.rs:53:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |     pub struct WindowResizeEvent {
[INFO] [stdout]    |                ----------------- fields in this struct
[INFO] [stdout] 53 |         pub size: winit::dpi::PhysicalSize<u32>,
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 54 |         pub scale_factor: Option<f64>,
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WindowResizeEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `adapter`, `size`, and `scale_factor` are never read
[INFO] [stdout]   --> src/graphics_context.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub struct GraphicsContext {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8  |     pub adapter: wgpu::Adapter,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub size: winit::dpi::PhysicalSize<u32>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 17 |     /// Window scale factor.
[INFO] [stdout] 18 |     pub scale_factor: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `on_resize` and `on_event` are never used
[INFO] [stdout]    --> src/graphics_context.rs:86:12
[INFO] [stdout]     |
[INFO] [stdout] 22  | impl GraphicsContext {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 86  |     pub fn on_resize(&mut self, size: winit::dpi::PhysicalSize<u32>, scale_factor: Option<f64>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Key` and `MouseMotion` are never constructed
[INFO] [stdout]  --> src/input.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum InputEvent {
[INFO] [stdout]   |          ---------- variants in this enum
[INFO] [stdout] 3 |     Key(KeyEvent),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 4 |     /// Contains mouse movement delta.
[INFO] [stdout] 5 |     MouseMotion((f64, f64)),
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `InputEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/input.rs:34:5
[INFO] [stdout]     |
[INFO] [stdout] 32  | pub enum Key {
[INFO] [stdout]     |          --- variants in this enum
[INFO] [stdout] 33  |     /// Left mouse button
[INFO] [stdout] 34  |     LMouseButton,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 35  |     /// Non-numpad 1
[INFO] [stdout] 36  |     Key1,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 37  |     /// Non-numpad 2
[INFO] [stdout] 38  |     Key2,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 39  |     /// Non-numpad 3
[INFO] [stdout] 40  |     Key3,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 41  |     /// Non-numpad 4
[INFO] [stdout] 42  |     Key4,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 43  |     /// Non-numpad 5
[INFO] [stdout] 44  |     Key5,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 45  |     /// Non-numpad 6
[INFO] [stdout] 46  |     Key6,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 47  |     /// Non-numpad 7
[INFO] [stdout] 48  |     Key7,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 49  |     /// Non-numpad 8
[INFO] [stdout] 50  |     Key8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 51  |     /// Non-numpad 9
[INFO] [stdout] 52  |     Key9,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 53  |     /// Non-numpad 0
[INFO] [stdout] 54  |     Key0,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 55  |     A,
[INFO] [stdout]     |     ^
[INFO] [stdout] 56  |     B,
[INFO] [stdout]     |     ^
[INFO] [stdout] 57  |     C,
[INFO] [stdout]     |     ^
[INFO] [stdout] 58  |     D,
[INFO] [stdout]     |     ^
[INFO] [stdout] 59  |     E,
[INFO] [stdout]     |     ^
[INFO] [stdout] 60  |     F,
[INFO] [stdout]     |     ^
[INFO] [stdout] 61  |     G,
[INFO] [stdout]     |     ^
[INFO] [stdout] 62  |     H,
[INFO] [stdout]     |     ^
[INFO] [stdout] 63  |     I,
[INFO] [stdout]     |     ^
[INFO] [stdout] 64  |     J,
[INFO] [stdout]     |     ^
[INFO] [stdout] 65  |     K,
[INFO] [stdout]     |     ^
[INFO] [stdout] 66  |     L,
[INFO] [stdout]     |     ^
[INFO] [stdout] 67  |     M,
[INFO] [stdout]     |     ^
[INFO] [stdout] 68  |     N,
[INFO] [stdout]     |     ^
[INFO] [stdout] 69  |     O,
[INFO] [stdout]     |     ^
[INFO] [stdout] 70  |     P,
[INFO] [stdout]     |     ^
[INFO] [stdout] 71  |     Q,
[INFO] [stdout]     |     ^
[INFO] [stdout] 72  |     R,
[INFO] [stdout]     |     ^
[INFO] [stdout] 73  |     S,
[INFO] [stdout]     |     ^
[INFO] [stdout] 74  |     T,
[INFO] [stdout]     |     ^
[INFO] [stdout] 75  |     U,
[INFO] [stdout]     |     ^
[INFO] [stdout] 76  |     V,
[INFO] [stdout]     |     ^
[INFO] [stdout] 77  |     W,
[INFO] [stdout]     |     ^
[INFO] [stdout] 78  |     X,
[INFO] [stdout]     |     ^
[INFO] [stdout] 79  |     Y,
[INFO] [stdout]     |     ^
[INFO] [stdout] 80  |     Z,
[INFO] [stdout]     |     ^
[INFO] [stdout] 81  |     Escape,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 82  |     F1,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 83  |     F2,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 84  |     F3,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 85  |     F4,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 86  |     F5,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 87  |     F6,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 88  |     F7,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 89  |     F8,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 90  |     F9,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 91  |     F10,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 92  |     F11,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 93  |     F12,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 94  |     PrintScreen,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 95  |     ScrollLock,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 96  |     PauseBreak,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 97  |     Insert,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 98  |     Home,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 99  |     Delete,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 100 |     End,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 101 |     PageDown,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 102 |     PageUp,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 103 |     /// Left arrow key
[INFO] [stdout] 104 |     Left,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 105 |     /// Up arrow key
[INFO] [stdout] 106 |     Up,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 107 |     /// Right arrow key
[INFO] [stdout] 108 |     Right,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 109 |     /// Down arrow key
[INFO] [stdout] 110 |     Down,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 111 |     BackSpace,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 112 |     Return,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 113 |     Space,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 114 |     Numlock,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 115 |     Numpad0,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 116 |     Numpad1,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 117 |     Numpad2,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 118 |     Numpad3,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 119 |     Numpad4,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 120 |     Numpad5,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 121 |     Numpad6,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 122 |     Numpad7,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 123 |     Numpad8,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 124 |     Numpad9,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 125 |     NumpadAdd,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 126 |     NumpadDivide,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 127 |     NumpadDecimal,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 128 |     NumpadComma,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 129 |     NumpadEnter,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 130 |     NumpadEquals,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 131 |     NumpadMultiply,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 132 |     NumpadSubtract,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 133 |     Backslash,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 134 |     Colon,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 135 |     Comma,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 136 |     Equals,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 137 |     Grave,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 138 |     LAlt,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 139 |     LBracket,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 140 |     LControl,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 141 |     LShift,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 142 |     LSuper,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 143 |     Minus,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 144 |     Mute,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 145 |     Period,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 146 |     PlayPause,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 147 |     Plus,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 148 |     RAlt,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 149 |     RBracket,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 150 |     RControl,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 151 |     RShift,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 152 |     Semicolon,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 153 |     Tab,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 154 |     VolumeDown,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 155 |     VolumeUp,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Key` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_virtual_keycode` is never used
[INFO] [stdout]    --> src/input.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 158 | impl Key {
[INFO] [stdout]     | -------- associated function in this implementation
[INFO] [stdout] 159 |     pub fn from_virtual_keycode(virtual_keycode: winit::event::VirtualKeyCode) -> Option<Self> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `init`, `startup_steps`, and `run_steps` are never used
[INFO] [stdout]   --> src/layer/mod.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub trait Layer {
[INFO] [stdout]    |           ----- associated items in this trait
[INFO] [stdout] 41 |     fn init(self, cmd: &mut leg::CommandBuffer, resources: &mut leg::Resources);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 42 |     fn startup_steps() -> Option<Vec<leg::Step>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 43 |     fn run_steps() -> Option<Vec<leg::Step>>;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `start_time`, `elapsed_f64`, `dt_f32`, and `dt_f64` are never used
[INFO] [stdout]   --> src/layer/application_layer.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | impl Time {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn start_time(&self) -> std::time::Instant {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn elapsed_f64(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn dt_f32(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn dt_f64(&self) -> f64 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mesh_assets` is never read
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:97:9
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub struct BaseRenderSceneLayer<'a> {
[INFO] [stdout]    |            -------------------- field in this struct
[INFO] [stdout] 96 |     pub window: &'a winit::window::Window,
[INFO] [stdout] 97 |     pub mesh_assets: &'a [&'a str],
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `should_rebuild_batches` is never read
[INFO] [stdout]   --> src/layer/base_render_scene_layer/mod.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |     pub struct RenderObjects {
[INFO] [stdout]    |                ------------- field in this struct
[INFO] [stdout] 41 |         pub render_objects: HandleMap<RenderObject>,
[INFO] [stdout] 42 |         pub should_rebuild_batches: bool,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/layer/scene_layer.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct SceneEntityHandles(Vec<Entity>);
[INFO] [stdout]    |            ------------------ ^^^^^^^^^^^
[INFO] [stdout]    |            |
[INFO] [stdout]    |            field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `WriteState` is never used
[INFO] [stdout]   --> src/layer/scene_layer.rs:18:6
[INFO] [stdout]    |
[INFO] [stdout] 18 | enum WriteState {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `swap` is never used
[INFO] [stdout]   --> src/layer/scene_layer.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl WriteState {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] 23 |     fn swap(&mut self) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Events` is never constructed
[INFO] [stdout]   --> src/layer/scene_layer.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct Events<E: Resource> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Events2` is never constructed
[INFO] [stdout]   --> src/layer/scene_layer.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct Events2<EventType: legion::systems::Resource> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/layer/scene_layer.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | impl<T: legion::systems::Resource> Events2<T> {
[INFO] [stdout]    | --------------------------------------------- associated function in this implementation
[INFO] [stdout] 48 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `read_count` is never read
[INFO] [stdout]   --> src/layer/scene_layer.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct EventReads<E: legion::systems::Resource> {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 64 |     data: AtomicRefCell<Vec<E>>,
[INFO] [stdout] 65 |     read_count: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `some_message` is never read
[INFO] [stdout]   --> src/layer/scene_layer.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 92 | struct SomeEvent {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 93 |     some_message: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init_register` is never used
[INFO] [stdout]   --> src/layer/mod.rs:53:16
[INFO] [stdout]    |
[INFO] [stdout] 52 |     impl EditorComponentStorage {
[INFO] [stdout]    |     --------------------------- associated function in this implementation
[INFO] [stdout] 53 |         pub fn init_register() -> Self {
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Textures` is never constructed
[INFO] [stdout]   --> src/layer/mod.rs:64:16
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub struct Textures {
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init` is never used
[INFO] [stdout]   --> src/layer/mod.rs:71:16
[INFO] [stdout]    |
[INFO] [stdout] 70 |     impl Textures {
[INFO] [stdout]    |     ------------- associated function in this implementation
[INFO] [stdout] 71 |         pub fn init(device: &wgpu::Device, queue: &wgpu::Queue) -> (Textures, wgpu::BindGroup) {
[INFO] [stdout]    |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Entities` is never constructed
[INFO] [stdout]    --> src/layer/mod.rs:111:16
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub struct Entities {
[INFO] [stdout]     |                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `init` is never used
[INFO] [stdout]    --> src/layer/mod.rs:116:16
[INFO] [stdout]     |
[INFO] [stdout] 115 |     impl Entities {
[INFO] [stdout]     |     ------------- associated function in this implementation
[INFO] [stdout] 116 |         pub fn init(
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/new_bevy_ecs/graphics_context.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct DepthTexture(pub texture::Texture);
[INFO] [stdout]   |            ------------ ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |            |
[INFO] [stdout]   |            field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vertex` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Vertex {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Vertex` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MeshDefinition` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct MeshDefinition {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MeshDefinition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VertexArrayBuffer` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct VertexArrayBuffer {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VertexArrayBuffer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MeshAsset` is never constructed
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct MeshAsset {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MeshAsset` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `ATTRIBUTES` and `buffer_layout` are never used
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:46:11
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl Vertex {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 46 |     const ATTRIBUTES: [wgpu::VertexAttribute; 3] = wgpu::vertex_attr_array![
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn buffer_layout<'a>() -> wgpu::VertexBufferLayout<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `create_draw_command` is never used
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl MeshDefinition {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 62 |     /// Creates a draw command using this mesh.
[INFO] [stdout] 63 |     pub fn create_draw_command(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `vertices_slice`, `indices_slice`, and `build_from_mesh_assets` are never used
[INFO] [stdout]   --> src/new_bevy_ecs/meshes.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | impl VertexArrayBuffer {
[INFO] [stdout]    | ---------------------- associated items in this implementation
[INFO] [stdout] 79 |     /// Returns the slice of the vertex array buffer that contains the vertices.
[INFO] [stdout] 80 |     pub fn vertices_slice(&self) -> wgpu::BufferSlice {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn indices_slice(&self) -> wgpu::BufferSlice {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub fn build_from_mesh_assets(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `load_obj` is never used
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:159:12
[INFO] [stdout]     |
[INFO] [stdout] 157 | impl MeshAsset {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 158 |     /// Loads an obj file's vertices and indices into memory.
[INFO] [stdout] 159 |     pub fn load_obj<P: AsRef<std::path::Path>>(path: P) -> Result<Self> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mesh_asset_names` is never read
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub struct MeshAssetsToLoad {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] 214 |     pub mesh_asset_names: &'static [&'static str],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DrawBatcher` is never constructed
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:228:8
[INFO] [stdout]     |
[INFO] [stdout] 228 | struct DrawBatcher(mesh_pass::LegacyMeshPass);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ForwardMeshPass` is never constructed
[INFO] [stdout]    --> src/new_bevy_ecs/meshes.rs:233:8
[INFO] [stdout]     |
[INFO] [stdout] 233 | struct ForwardMeshPass {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]   --> src/new_bevy_ecs/mod.rs:55:16
[INFO] [stdout]    |
[INFO] [stdout] 54 |     impl Time {
[INFO] [stdout]    |     --------- methods in this implementation
[INFO] [stdout] 55 |         pub fn delta_time(&self) -> std::time::Duration {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |         pub fn start_time(&self) -> std::time::Instant {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |         pub fn elapsed(&self) -> std::time::Duration {
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |         pub fn elapsed_f32(&self) -> f32 {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |         pub fn elapsed_f64(&self) -> f64 {
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |         pub fn dt_f32(&self) -> f32 {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |         pub fn dt_f64(&self) -> f64 {
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `render_bounds` is never read
[INFO] [stdout]   --> src/render_scene/mod.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct RenderObjectDescriptor {
[INFO] [stdout]    |            ---------------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub render_bounds: mesh::RenderBounds,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_DRAW_COMMANDS` is never used
[INFO] [stdout]   --> src/render_scene/mod.rs:49:11
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub const MAX_DRAW_COMMANDS: usize = 100;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/render_scene/mod.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct RenderScene {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub vertex_array_buffer: VertexArrayBuffer,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 59 |     /// Representation of each mesh in the vertex array buffer.
[INFO] [stdout] 60 |     meshes: Vec<mesh::Mesh>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub render_objects: HandleMap<RenderObject>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 69 |     /// The render objects array in GPU-memory.
[INFO] [stdout] 70 |     pub render_objects_buffer: GpuBuffer<RenderObject>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 71 |     /// Render objects that need to be reuploaded to the GPU.
[INFO] [stdout] 72 |     render_objects_to_update: Vec<Handle<RenderObject>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 73 |     //
[INFO] [stdout] 74 |     pub instance_buffer: GpuBuffer<RenderInstance>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub draw_commands_buffer: GpuBuffer<DrawIndexedIndirect>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 82 |     /// Buffer of final draw commands needed for the frame (set by the compute shader).
[INFO] [stdout] 83 |     pub out_draw_commands_buffer: GpuBuffer<DrawIndexedIndirect>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 84 |     /// Buffer with draw_count set to 0, used to reset draw_count_buffer.
[INFO] [stdout] 85 |     pub clear_draw_count_buffer: GpuBuffer<DrawIndirectCount>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 86 |     /// Buffer containing the number of draw commands to issue this frame (filled by the compute shader).
[INFO] [stdout] 87 |     pub draw_count_buffer: GpuBuffer<DrawIndirectCount>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub max_draw_count: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     //
[INFO] [stdout] 93 |     pub instance_index_to_render_object_map: GpuBuffer<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |     //
[INFO] [stdout] 95 |     pub clear_compute_shader_local_data_buffer: GpuBuffer<DrawOutputInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     pub compute_shader_local_data_buffer: GpuBuffer<DrawOutputInfo>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 99 |     forward_pass: mesh_pass::LegacyMeshPass,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `register_object`, `update_transform_model_matrix`, `update`, and `build_batches` are never used
[INFO] [stdout]    --> src/render_scene/mod.rs:125:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | impl RenderScene {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 124 |     /// Creates a new render scene with the specified mesh assets.
[INFO] [stdout] 125 |     pub fn new(device: &wgpu::Device, mesh_assets: &[&str]) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn register_object(&mut self, desc: &RenderObjectDescriptor) -> Handle<RenderObject> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn update_transform_model_matrix(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn update(&mut self, queue: &wgpu::Queue) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     pub fn build_batches(&mut self, queue: &wgpu::Queue) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_draw_indirect_buffers` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn create_draw_indirect_buffers(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_draw_count_buffers` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:307:4
[INFO] [stdout]     |
[INFO] [stdout] 307 | fn create_draw_count_buffers(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_render_objects_buffer` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:331:4
[INFO] [stdout]     |
[INFO] [stdout] 331 | fn create_render_objects_buffer(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_instance_buffer` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:345:4
[INFO] [stdout]     |
[INFO] [stdout] 345 | fn create_instance_buffer(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_compute_shader_local_data_buffers` is never used
[INFO] [stdout]    --> src/render_scene/mod.rs:368:4
[INFO] [stdout]     |
[INFO] [stdout] 368 | fn create_compute_shader_local_data_buffers(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIND_GROUP_LAYOUT_DESC` is never used
[INFO] [stdout]  --> src/render_scene/compute_pipeline.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub const BIND_GROUP_LAYOUT_DESC: wgpu::BindGroupLayoutDescriptor =
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bind_group_entries` is never used
[INFO] [stdout]   --> src/render_scene/compute_pipeline.rs:90:8
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub fn bind_group_entries<'a>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `texture` is never read
[INFO] [stdout]  --> src/texture.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 4 |     pub texture: wgpu::Texture,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `texture_2d` is never used
[INFO] [stdout]    --> src/texture.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 |     pub fn texture_2d(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sampler` is never used
[INFO] [stdout]    --> src/texture.rs:165:12
[INFO] [stdout]     |
[INFO] [stdout] 165 |     pub fn sampler(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.59s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: fs_extra v1.2.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "38127459f3a1866e2aed59a59e019e0d7364fba61c76cd0541c7c806fca2cb58", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38127459f3a1866e2aed59a59e019e0d7364fba61c76cd0541c7c806fca2cb58", kill_on_drop: false }`
[INFO] [stdout] 38127459f3a1866e2aed59a59e019e0d7364fba61c76cd0541c7c806fca2cb58
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c7f51044698382bccfab5ee0da33999fdfe042c8b21323720c8d86901479e46f
[INFO] running `Command { std: "docker" "start" "-a" "c7f51044698382bccfab5ee0da33999fdfe042c8b21323720c8d86901479e46f", kill_on_drop: false }`
[INFO] [stderr]    Compiling penguin_engine v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused import: `downcast_rs::Downcast`
[INFO] [stderr]  --> src/bind_groups.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use downcast_rs::Downcast;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stderr]  --> src/bind_groups.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::mem::MaybeUninit;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::systems::CommandBuffer`
[INFO] [stderr]  --> src/camera.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use legion::systems::CommandBuffer;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Entity` and `Resources`
[INFO] [stderr]  --> src/camera.rs:3:14
[INFO] [stderr]   |
[INFO] [stderr] 3 | use legion::{Entity, Resources};
[INFO] [stderr]   |              ^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::world::*`
[INFO] [stderr]  --> src/editor/component_editor.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |     pub use legion::world::*;
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::storage::*`
[INFO] [stderr]  --> src/editor/mod.rs:8:13
[INFO] [stderr]   |
[INFO] [stderr] 8 |     pub use legion::storage::*;
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::world::*`
[INFO] [stderr]  --> src/editor/mod.rs:9:13
[INFO] [stderr]   |
[INFO] [stderr] 9 |     pub use legion::world::*;
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::DerefMut`
[INFO] [stderr]  --> src/events/mod.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::ops::DerefMut;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::input::InputEvent`
[INFO] [stderr]   --> src/events/mod.rs:57:13
[INFO] [stderr]    |
[INFO] [stderr] 57 |     pub use crate::input::InputEvent;
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GraphicsContext`
[INFO] [stderr]  --> src/layer/application_layer.rs:1:13
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::{GraphicsContext, Layer};
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `VertexArrayBuffer`, `Vertex`, `bind_groups`, and `render_scene`
[INFO] [stderr]  --> src/layer/base_render_scene_layer/mod.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 |     bind_groups, mesh, render_scene, GraphicsContext, Layer, RenderObjectDescriptor, Vertex,
[INFO] [stderr]   |     ^^^^^^^^^^^        ^^^^^^^^^^^^                                                  ^^^^^^
[INFO] [stderr] 6 |     VertexArrayBuffer, MAX_DRAW_COMMANDS,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::components::Translation`
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::components::Translation;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BindGroupLayoutEntry` and `ShaderStages`
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | use wgpu::{BindGroupLayoutEntry, ShaderStages};
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::events::PenguinEventSender`
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | use crate::events::PenguinEventSender;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `LegacyMeshPass`
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:19:53
[INFO] [stderr]    |
[INFO] [stderr] 19 | use crate::render_scene::mesh_pass::{IndirectBatch, LegacyMeshPass, PassObject};
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `events`
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:21:13
[INFO] [stderr]    |
[INFO] [stderr] 21 | use crate::{events, DrawOutputInfo, RenderInstance};
[INFO] [stderr]    |             ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::layer::application_layer::Time`
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 | use crate::layer::application_layer::Time;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Rotation`
[INFO] [stderr]    --> src/layer/base_render_scene_layer/mod.rs:162:44
[INFO] [stderr]     |
[INFO] [stderr] 162 |     use crate::components::{MeshComponent, Rotation};
[INFO] [stderr]     |                                            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::world::SubWorld`
[INFO] [stderr]    --> src/layer/base_render_scene_layer/mod.rs:163:9
[INFO] [stderr]     |
[INFO] [stderr] 163 |     use legion::world::SubWorld;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DrawOutputInfo` and `MAX_DRAW_COMMANDS`
[INFO] [stderr]  --> src/layer/pipelines_layer.rs:4:28
[INFO] [stderr]   |
[INFO] [stderr] 4 |     camera, mesh, texture, DrawOutputInfo, GraphicsContext, Layer, RenderInstance, Vertex,
[INFO] [stderr]   |                            ^^^^^^^^^^^^^^
[INFO] [stderr] 5 |     VertexArrayBuffer, MAX_DRAW_COMMANDS,
[INFO] [stderr]   |                        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::marker::PhantomData`
[INFO] [stderr]  --> src/layer/pipelines_layer.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::marker::PhantomData;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `mem`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:10:17
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::{iter, mem, slice};
[INFO] [stderr]    |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DeviceExt`, `buffer_bind_group_entry`, `storage_buffer_layout_entry`, and `uniform_buffer_layout_entry`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     buffer_bind_group_entry, storage_buffer_layout_entry, uniform_buffer_layout_entry, DeviceExt,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::components::Translation`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | use crate::components::Translation;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::render_scene::RenderObject`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 | use crate::render_scene::RenderObject;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `penguin_util::handle::Handle`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 | use penguin_util::handle::Handle;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `DrawIndexedIndirect` and `DrawIndirectCount`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:25:35
[INFO] [stderr]    |
[INFO] [stderr] 25 | use penguin_util::raw_gpu_types::{DrawIndexedIndirect, DrawIndirectCount};
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `BindGroupLayoutEntry`, `BindGroup`, and `ShaderStages`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:27:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | use wgpu::{BindGroup, BindGroupLayoutEntry, ShaderStages};
[INFO] [stderr]    |            ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `macaw as m`
[INFO] [stderr]    --> src/layer/pipelines_layer.rs:274:9
[INFO] [stderr]     |
[INFO] [stderr] 274 |     use macaw as m;
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AtomicRefMut` and `AtomicRef`
[INFO] [stderr]  --> src/layer/scene_layer.rs:2:22
[INFO] [stderr]   |
[INFO] [stderr] 2 | use atomic_refcell::{AtomicRef, AtomicRefCell, AtomicRefMut};
[INFO] [stderr]   |                      ^^^^^^^^^                 ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::world::SubWorld`
[INFO] [stderr]  --> src/layer/scene_layer.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use legion::world::SubWorld;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Query`
[INFO] [stderr]  --> src/layer/scene_layer.rs:5:41
[INFO] [stderr]   |
[INFO] [stderr] 5 | use legion::{component, system, Entity, Query, Resources, Schedule};
[INFO] [stderr]   |                                         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/layer/scene_layer.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::layer::scene_layer::WriteState::A`
[INFO] [stderr]   --> src/layer/scene_layer.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::layer::scene_layer::WriteState::A;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `RenderInstance`, `RenderObjectDescriptor`, `Vertex`, and `camera`
[INFO] [stderr]   --> src/layer/mod.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 |     camera, components, editor, mesh, render_scene, texture, RenderInstance,
[INFO] [stderr]    |     ^^^^^^                                                   ^^^^^^^^^^^^^^
[INFO] [stderr] 14 |     RenderObjectDescriptor, Vertex,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `RendererState`
[INFO] [stderr]   --> src/layer/mod.rs:16:30
[INFO] [stderr]    |
[INFO] [stderr] 16 | use crate::{GraphicsContext, RendererState};
[INFO] [stderr]    |                              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `atomic_refcell::AtomicRef`
[INFO] [stderr]   --> src/layer/mod.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | use atomic_refcell::AtomicRef;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `IntoQuery`, `Resources`, `component`, and `maybe_changed`
[INFO] [stderr]   --> src/layer/mod.rs:19:14
[INFO] [stderr]    |
[INFO] [stderr] 19 | use legion::{component, maybe_changed, IntoQuery, Resources};
[INFO] [stderr]    |              ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `GpuBufferDeviceExt` and `GpuBuffer`
[INFO] [stderr]   --> src/layer/mod.rs:22:20
[INFO] [stderr]    |
[INFO] [stderr] 22 | use penguin_util::{GpuBuffer, GpuBufferDeviceExt};
[INFO] [stderr]    |                    ^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::slice`
[INFO] [stderr]   --> src/layer/mod.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 | use std::slice;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::render_scene::MAX_DRAW_COMMANDS`
[INFO] [stderr]   --> src/layer/mod.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 | use crate::render_scene::MAX_DRAW_COMMANDS;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `components::*`
[INFO] [stderr]   --> src/layer/mod.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | use components::*;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::system`
[INFO] [stderr]   --> src/layer/mod.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 | use legion::system;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::systems::Step`
[INFO] [stderr]   --> src/layer/mod.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 | use legion::systems::Step;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `penguin_util::raw_gpu_types::DrawIndirectCount`
[INFO] [stderr]   --> src/layer/mod.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 | use penguin_util::raw_gpu_types::DrawIndirectCount;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `render_scene::RenderObject`
[INFO] [stderr]   --> src/layer/mod.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 30 | use render_scene::RenderObject;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `wgpu::CommandEncoder`
[INFO] [stderr]   --> src/layer/mod.rs:31:5
[INFO] [stderr]    |
[INFO] [stderr] 31 | use wgpu::CommandEncoder;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::storage::*`
[INFO] [stderr]   --> src/layer/mod.rs:34:13
[INFO] [stderr]    |
[INFO] [stderr] 34 |     pub use legion::storage::*;
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::world::*`
[INFO] [stderr]   --> src/layer/mod.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |     pub use legion::world::*;
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::*`
[INFO] [stderr]   --> src/layer/mod.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 |     pub use legion::*;
[INFO] [stderr]    |             ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `resources::*`
[INFO] [stderr]   --> src/layer/mod.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 | use resources::*;
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::new_bevy_ecs::time::TimePlugin`
[INFO] [stderr]  --> src/new_bevy_ecs/mod.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::new_bevy_ecs::time::TimePlugin;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `PluginGroupBuilder` and `PluginGroup`
[INFO] [stderr]  --> src/new_bevy_ecs/mod.rs:2:21
[INFO] [stderr]   |
[INFO] [stderr] 2 | use bevy_app::{App, PluginGroup, PluginGroupBuilder};
[INFO] [stderr]   |                     ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bevy_ecs::prelude::*`
[INFO] [stderr]  --> src/new_bevy_ecs/meshes.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use bevy_ecs::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `bevy_ecs::system::Commands`
[INFO] [stderr]  --> src/new_bevy_ecs/meshes.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use bevy_ecs::system::Commands;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::ops::Range`
[INFO] [stderr]  --> src/new_bevy_ecs/meshes.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::ops::Range;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `GraphicsContext`
[INFO] [stderr]  --> src/render_scene/mod.rs:6:19
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::{mesh, GraphicsContext, RenderInstance, VertexArrayBuffer};
[INFO] [stderr]   |                   ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CommandBuffer` and `Step`
[INFO] [stderr]  --> src/render_scene/mod.rs:7:23
[INFO] [stderr]   |
[INFO] [stderr] 7 | use legion::systems::{CommandBuffer, Step};
[INFO] [stderr]   |                       ^^^^^^^^^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::Resources`
[INFO] [stderr]  --> src/render_scene/mod.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 8 | use legion::Resources;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Resources`
[INFO] [stderr]   --> src/main.rs:28:40
[INFO] [stderr]    |
[INFO] [stderr] 28 | use legion::{maybe_changed, IntoQuery, Resources};
[INFO] [stderr]    |                                        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::bind_groups::DeviceExt`
[INFO] [stderr]   --> src/main.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 | use crate::bind_groups::DeviceExt;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::mem::transmute`
[INFO] [stderr]   --> src/main.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 | use std::mem::transmute;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stderr]   --> src/new_bevy_ecs/graphics_context.rs:13:54
[INFO] [stderr]    |
[INFO] [stderr] 13 |         app.add_startup_system(init_graphics_context.system())
[INFO] [stderr]    |                                                      ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stderr]   --> src/new_bevy_ecs/graphics_context.rs:14:42
[INFO] [stderr]    |
[INFO] [stderr] 14 |             .add_system(on_window_resize.system());
[INFO] [stderr]    |                                          ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stderr]   --> src/new_bevy_ecs/mod.rs:32:44
[INFO] [stderr]    |
[INFO] [stderr] 32 |             app.add_startup_system(startup.system())
[INFO] [stderr]    |                                            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `bevy_ecs::system::IntoSystem::system`: `.system()` is no longer needed, as methods which accept systems will convert functions into a system automatically
[INFO] [stderr]   --> src/new_bevy_ecs/mod.rs:33:47
[INFO] [stderr]    |
[INFO] [stderr] 33 |                 .add_system(update_delta_time.system());
[INFO] [stderr]    |                                               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `legion::IntoQuery`
[INFO] [stderr]    --> src/layer/base_render_scene_layer/mod.rs:164:9
[INFO] [stderr]     |
[INFO] [stderr] 164 |     use legion::IntoQuery;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bind_groups.rs:167:19
[INFO] [stderr]     |
[INFO] [stderr] 167 |     pub fn buffer(mut self, binding: u32, buffer: &'a wgpu::Buffer) -> Self {
[INFO] [stderr]     |                   ----^^^^
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bind_groups.rs:171:25
[INFO] [stderr]     |
[INFO] [stderr] 171 |     pub fn texture_view(mut self, binding: u32, texture_view: &'a wgpu::TextureView) -> Self {
[INFO] [stderr]     |                         ----^^^^
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/bind_groups.rs:175:20
[INFO] [stderr]     |
[INFO] [stderr] 175 |     pub fn sampler(mut self, binding: u32, sampler: &'a wgpu::Sampler) -> Self {
[INFO] [stderr]     |                    ----^^^^
[INFO] [stderr]     |                    |
[INFO] [stderr]     |                    help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cmd`
[INFO] [stderr]    --> src/layer/base_render_scene_layer/mod.rs:101:19
[INFO] [stderr]     |
[INFO] [stderr] 101 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stderr]     |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cmd`
[INFO] [stderr]  --> src/layer/editor_layer.rs:8:19
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stderr]   |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `r`
[INFO] [stderr]  --> src/layer/editor_layer.rs:8:44
[INFO] [stderr]   |
[INFO] [stderr] 8 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stderr]   |                                            ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cmd`
[INFO] [stderr]   --> src/layer/pipelines_layer.rs:46:19
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn init(self, cmd: &mut CommandBuffer, r: &mut Resources) {
[INFO] [stderr]    |                   ^^^ help: if this is intentional, prefix it with an underscore: `_cmd`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mesh_assets`
[INFO] [stderr]    --> src/layer/mod.rs:153:17
[INFO] [stderr]     |
[INFO] [stderr] 153 |             let mesh_assets = ["cube.obj", "cone.obj"];
[INFO] [stderr]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mesh_assets`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `context`
[INFO] [stderr]    --> src/layer/mod.rs:118:13
[INFO] [stderr]     |
[INFO] [stderr] 118 |             context: &GraphicsContext,
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/render_scene/mesh_pass.rs:158:21
[INFO] [stderr]     |
[INFO] [stderr] 158 |                 let mut previous: &mut IndirectBatch = indirect_batches.last_mut().unwrap();
[INFO] [stderr]     |                     ----^^^^^^^^
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/main.rs:488:14
[INFO] [stderr]     |
[INFO] [stderr] 488 |         for (mut translation, _rotation) in translation_query.iter_mut(&mut self.ecs.world) {
[INFO] [stderr]     |              ----^^^^^^^^^^^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `event_consumed` is never read
[INFO] [stderr]    --> src/main.rs:742:21
[INFO] [stderr]     |
[INFO] [stderr] 742 |                     event_consumed = state.on_event(&penguin_event);
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: static `TIME_STATE` is never used
[INFO] [stderr]   --> src/main.rs:68:12
[INFO] [stderr]    |
[INFO] [stderr] 68 | static mut TIME_STATE: f32 = 0.0_f32;
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `world` and `resources` are never read
[INFO] [stderr]   --> src/main.rs:84:5
[INFO] [stderr]    |
[INFO] [stderr] 83 | struct LegionECSData {
[INFO] [stderr]    |        ------------- fields in this struct
[INFO] [stderr] 84 |     world: legion::World,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 85 |     resources: legion::Resources,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Yeet` is never constructed
[INFO] [stderr]   --> src/main.rs:90:8
[INFO] [stderr]    |
[INFO] [stderr] 90 | struct Yeet {
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `compute`, `render`, `camera`, `uniform_buffer`, `scene`, and `ecs` are never read
[INFO] [stderr]    --> src/main.rs:97:5
[INFO] [stderr]     |
[INFO] [stderr] 95  | pub struct RendererState {
[INFO] [stderr]     |            ------------- fields in this struct
[INFO] [stderr] 96  |     /// Compute pass data.
[INFO] [stderr] 97  |     compute: Compute,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 98  |     /// Render pass data.
[INFO] [stderr] 99  |     render: Render,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 103 |     camera: camera::MainCamera,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 104 |     /// Uniform buffer.
[INFO] [stderr] 105 |     uniform_buffer: GpuBuffer<camera::CameraUniformData>,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 106 |     /// The currently loaded RenderScene.
[INFO] [stderr] 107 |     scene: render_scene::RenderScene,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 108 |     /// ECS data.
[INFO] [stderr] 109 |     ecs: LegionECSData,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Textures` is never constructed
[INFO] [stderr]    --> src/main.rs:113:8
[INFO] [stderr]     |
[INFO] [stderr] 113 | struct Textures {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `init_textures` is never used
[INFO] [stderr]    --> src/main.rs:120:8
[INFO] [stderr]     |
[INFO] [stderr] 119 | impl RendererState {
[INFO] [stderr]     | ------------------ associated function in this implementation
[INFO] [stderr] 120 |     fn init_textures(device: &wgpu::Device, queue: &wgpu::Queue) -> Textures {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `RenderObjectStorage` is never constructed
[INFO] [stderr]    --> src/main.rs:158:8
[INFO] [stderr]     |
[INFO] [stderr] 158 | struct RenderObjectStorage {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `RenderObjectStorage` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `on_event`, `update_camera_and_scene`, `render`, `compute_commands`, and `render_commands` are never used
[INFO] [stderr]    --> src/main.rs:168:8
[INFO] [stderr]     |
[INFO] [stderr] 167 | impl RendererState {
[INFO] [stderr]     | ------------------ associated items in this implementation
[INFO] [stderr] 168 |     fn new(context: &GraphicsContext) -> Self {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 451 |     fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 467 |     fn update_camera_and_scene(&mut self, context: &GraphicsContext, dt: std::time::Duration) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 563 |     fn render<OutputTextureFunc: FnOnce(&wgpu::TextureView)>(
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 581 |     fn compute_commands(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 625 |     fn render_commands(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main_without_layers` is never used
[INFO] [stderr]    --> src/main.rs:706:4
[INFO] [stderr]     |
[INFO] [stderr] 706 | fn main_without_layers() {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `main_with_layers` is never used
[INFO] [stderr]    --> src/main.rs:900:4
[INFO] [stderr]     |
[INFO] [stderr] 900 | fn main_with_layers() {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `bind_group_layout_short` is never used
[INFO] [stderr]   --> src/bind_groups.rs:51:8
[INFO] [stderr]    |
[INFO] [stderr] 50 | pub trait DeviceExt {
[INFO] [stderr]    |           --------- method in this trait
[INFO] [stderr] 51 |     fn bind_group_layout_short<'a>(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `StorageType` is never used
[INFO] [stderr]   --> src/bind_groups.rs:70:10
[INFO] [stderr]    |
[INFO] [stderr] 70 | pub enum StorageType {
[INFO] [stderr]    |          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `uniform_buffer_layout_entry` is never used
[INFO] [stderr]    --> src/bind_groups.rs:193:8
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn uniform_buffer_layout_entry(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `storage_buffer_layout_entry` is never used
[INFO] [stderr]    --> src/bind_groups.rs:208:8
[INFO] [stderr]     |
[INFO] [stderr] 208 | pub fn storage_buffer_layout_entry(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `buffer_bind_group_entry` is never used
[INFO] [stderr]    --> src/bind_groups.rs:225:8
[INFO] [stderr]     |
[INFO] [stderr] 225 | pub fn buffer_bind_group_entry(binding: u32, buffer: &wgpu::Buffer) -> wgpu::BindGroupEntry {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `texture_2d` is never used
[INFO] [stderr]   --> src/bind_groups.rs:13:16
[INFO] [stderr]    |
[INFO] [stderr] 13 |         pub fn texture_2d(
[INFO] [stderr]    |                ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sampler` is never used
[INFO] [stderr]   --> src/bind_groups.rs:25:16
[INFO] [stderr]    |
[INFO] [stderr] 25 |         pub fn sampler(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `resize` is never used
[INFO] [stderr]    --> src/camera.rs:105:12
[INFO] [stderr]     |
[INFO] [stderr] 104 | impl PerspectiveProjection {
[INFO] [stderr]     | -------------------------- method in this implementation
[INFO] [stderr] 105 |     pub fn resize(&mut self, (width, height): (u32, u32)) {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `mouse_key_down` is never read
[INFO] [stderr]    --> src/camera.rs:125:5
[INFO] [stderr]     |
[INFO] [stderr] 114 | pub struct CameraController {
[INFO] [stderr]     |            ---------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 125 |     mouse_key_down: bool,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `on_event`, `process_mouse_delta_events`, and `process_key_events` are never used
[INFO] [stderr]    --> src/camera.rs:144:12
[INFO] [stderr]     |
[INFO] [stderr] 127 | impl CameraController {
[INFO] [stderr]     | --------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 144 |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 160 |     fn process_mouse_delta_events(&mut self, dx: f64, dy: f64) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 165 |     fn process_key_events(&mut self, key: input::Key, state: input::KeyState) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FrameData` is never constructed
[INFO] [stderr]   --> src/editor/mod.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct FrameData<'a> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `EditorState` is never constructed
[INFO] [stderr]   --> src/editor/mod.rs:21:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct EditorState {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Panels` is never constructed
[INFO] [stderr]   --> src/editor/mod.rs:34:8
[INFO] [stderr]    |
[INFO] [stderr] 34 | struct Panels {
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Panels` has a derived impl for the trait `Default`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `handle_platform_event`, `on_event`, `update`, and `render_commands` are never used
[INFO] [stderr]    --> src/editor/mod.rs:40:12
[INFO] [stderr]     |
[INFO] [stderr] 39  | impl EditorState {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] 40  |     pub fn new(context: &GraphicsContext) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 76  |     pub fn handle_platform_event<T>(&mut self, event: &winit::event::Event<T>) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 91  |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 115 |     pub fn update(
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 150 |     pub fn render_commands(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `draw_ui` and `top_bar` are never used
[INFO] [stderr]    --> src/editor/mod.rs:178:8
[INFO] [stderr]     |
[INFO] [stderr] 177 | impl EditorState {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] 178 |     fn draw_ui(&mut self, context: &egui::CtxRef, frame_data: &mut FrameData) {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 190 |     fn top_bar(context: &egui::CtxRef, panels: &mut Panels) {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `init_component_editor_state`, `penguin_editor`, and `try_draw_editor_yeet` are never used
[INFO] [stderr]   --> src/editor/component_editor.rs:15:8
[INFO] [stderr]    |
[INFO] [stderr] 9  | pub trait ComponentEditor
[INFO] [stderr]    |           --------------- associated items in this trait
[INFO] [stderr] ...
[INFO] [stderr] 15 |     fn init_component_editor_state(&self) -> Self::ComponentEditorState;
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 16 |     fn penguin_editor(&mut self, ui: &mut egui::Ui, state: &mut Self::ComponentEditorState);
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 17 |
[INFO] [stderr] 18 |     fn try_draw_editor_yeet(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `component_type_id` and `draw_func` are never read
[INFO] [stderr]   --> src/editor/component_editor.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 59 |     pub(super) struct DrawComponentEditorFunc {
[INFO] [stderr]    |                       ----------------------- fields in this struct
[INFO] [stderr] 60 |         component_type_id: leg::ComponentTypeId,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 61 |         pub draw_func: fn(
[INFO] [stderr]    |             ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `is_for_component`, and `draw_editor` are never used
[INFO] [stderr]   --> src/editor/component_editor.rs:69:16
[INFO] [stderr]    |
[INFO] [stderr] 68 |     impl DrawComponentEditorFunc {
[INFO] [stderr]    |     ---------------------------- associated items in this implementation
[INFO] [stderr] 69 |         pub fn new<ComponentType: ComponentEditor>() -> Self {
[INFO] [stderr]    |                ^^^
[INFO] [stderr] ...
[INFO] [stderr] 77 |         pub fn is_for_component(&self, component_type_id: leg::ComponentTypeId) -> bool {
[INFO] [stderr]    |                ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 81 |         fn draw_editor<T>(
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/editor/component_editor.rs:121:37
[INFO] [stderr]     |
[INFO] [stderr] 121 |     pub struct ComponentEditorState(pub Box<dyn std::any::Any>);
[INFO] [stderr]     |                -------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                |
[INFO] [stderr]     |                field in this struct
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/editor/component_editor.rs:126:9
[INFO] [stderr]     |
[INFO] [stderr] 125 |     pub struct ComponentEditorStateStorage(
[INFO] [stderr]     |                --------------------------- field in this struct
[INFO] [stderr] 126 |         pub std::collections::HashMap<leg::ComponentTypeId, ComponentEditorState>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: fields `draw_funcs`, `ui_states`, and `selected_entity` are never read
[INFO] [stderr]    --> src/editor/component_editor.rs:133:9
[INFO] [stderr]     |
[INFO] [stderr] 131 |     pub struct EditorComponentStorage {
[INFO] [stderr]     |                ---------------------- fields in this struct
[INFO] [stderr] 132 |         // Functions that draw the editor for a component UI
[INFO] [stderr] 133 |         draw_funcs: Vec<DrawComponentEditorFunc>,
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr] 134 |         /// The currently selected entity
[INFO] [stderr] 135 |         ui_states: std::cell::RefCell<ComponentEditorStateStorage>,
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr] 136 |         selected_entity: std::cell::Cell<Option<legion::Entity>>,
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `register_component_editor`, `select_entity`, and `draw_entities_component_editors` are never used
[INFO] [stderr]    --> src/editor/component_editor.rs:141:16
[INFO] [stderr]     |
[INFO] [stderr] 140 |     impl EditorComponentStorage {
[INFO] [stderr]     |     --------------------------- methods in this implementation
[INFO] [stderr] 141 |         pub fn register_component_editor<ComponentType>(&mut self)
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 149 |         pub fn select_entity(&self, entity: legion::Entity) {
[INFO] [stderr]     |                ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 165 |         pub fn draw_entities_component_editors(
[INFO] [stderr]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `enabled` and `l_selected_entity` are never read
[INFO] [stderr]  --> src/editor/scene.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub struct ScenePanel {
[INFO] [stderr]   |            ---------- fields in this struct
[INFO] [stderr] 7 |     pub enabled: bool,
[INFO] [stderr]   |         ^^^^^^^
[INFO] [stderr] 8 |     l_selected_entity: Option<legion::Entity>,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `update` is never used
[INFO] [stderr]   --> src/editor/scene.rs:11:12
[INFO] [stderr]    |
[INFO] [stderr] 10 | impl ScenePanel {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] 11 |     pub fn update(&mut self, context: &egui::CtxRef, frame_data: &mut FrameData) {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `enabled` and `frame_time_history` are never read
[INFO] [stderr]  --> src/editor/stats.rs:5:9
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct StatsPanel {
[INFO] [stderr]   |            ---------- fields in this struct
[INFO] [stderr] 5 |     pub enabled: bool,
[INFO] [stderr]   |         ^^^^^^^
[INFO] [stderr] 6 |     frame_time_history: FrameTimeHistory,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `LineGraph` is never constructed
[INFO] [stderr]   --> src/editor/stats.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | enum GraphStyle {
[INFO] [stderr]    |      ---------- variant in this enum
[INFO] [stderr] 11 |     Histogram,
[INFO] [stderr] 12 |     LineGraph,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `frame_times` and `graph_style` are never read
[INFO] [stderr]   --> src/editor/stats.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | struct FrameTimeHistory {
[INFO] [stderr]    |        ---------------- fields in this struct
[INFO] [stderr] 16 |     frame_times: egui::util::History<f32>,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 17 |     graph_style: GraphStyle,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `update` is never used
[INFO] [stderr]   --> src/editor/stats.rs:33:16
[INFO] [stderr]    |
[INFO] [stderr] 32 |     impl StatsPanel {
[INFO] [stderr]    |     --------------- method in this implementation
[INFO] [stderr] 33 |         pub fn update(&mut self, context: &egui::CtxRef, frame_data: &FrameData) {
[INFO] [stderr]    |                ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `update`, `ui`, `average_frame_time`, `average_fps`, and `graph` are never used
[INFO] [stderr]    --> src/editor/stats.rs:68:16
[INFO] [stderr]     |
[INFO] [stderr] 67  |     impl FrameTimeHistory {
[INFO] [stderr]     |     --------------------- methods in this implementation
[INFO] [stderr] 68  |         pub fn update(&mut self, clock: &time::Clock) {
[INFO] [stderr]     |                ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 75  |         pub fn ui(&mut self, ui: &mut egui::Ui) {
[INFO] [stderr]     |                ^^
[INFO] [stderr] ...
[INFO] [stderr] 100 |         fn average_frame_time(&self) -> f32 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 104 |         fn average_fps(&self) -> f32 {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 108 |         fn graph(&mut self, ui: &mut egui::Ui) {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Input` and `Window` are never constructed
[INFO] [stderr]  --> src/events/mod.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub enum PenguinEvent {
[INFO] [stderr]   |          ------------ variants in this enum
[INFO] [stderr] 7 |     Input(input::InputEvent),
[INFO] [stderr]   |     ^^^^^
[INFO] [stderr] 8 |     Window(event::WindowResizeEvent),
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `PenguinEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/events/mod.rs:11:30
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct PenguinEventProxy(pub std::sync::Mutex<winit::event_loop::EventLoopProxy<PenguinEvent>>);
[INFO] [stderr]    |            ----------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |            |
[INFO] [stderr]    |            field in this struct
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: method `send_event` is never used
[INFO] [stderr]   --> src/events/mod.rs:20:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl PenguinEventProxy {
[INFO] [stderr]    | ---------------------- method in this implementation
[INFO] [stderr] 20 |     pub fn send_event(&self, event: PenguinEvent) {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `init` is never used
[INFO] [stderr]   --> src/events/mod.rs:42:12
[INFO] [stderr]    |
[INFO] [stderr] 41 | impl PenguinEventSender {
[INFO] [stderr]    | ----------------------- associated function in this implementation
[INFO] [stderr] 42 |     pub fn init(event_loop_proxy: winit::event_loop::EventLoopProxy<PenguinEvent>) -> Self {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/events/mod.rs:70:20
[INFO] [stderr]    |
[INFO] [stderr] 70 | pub struct EventId(pub usize);
[INFO] [stderr]    |            ------- ^^^^^^^^^
[INFO] [stderr]    |            |
[INFO] [stderr]    |            field in this struct
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: fields `event_id` and `event` are never read
[INFO] [stderr]   --> src/events/mod.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 72 | pub struct Event<EventType> {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr] 73 |     pub event_id: EventId,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 74 |     pub event: EventType,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `B` is never constructed
[INFO] [stderr]   --> src/events/mod.rs:79:5
[INFO] [stderr]    |
[INFO] [stderr] 77 | enum State {
[INFO] [stderr]    |      ----- variant in this enum
[INFO] [stderr] 78 |     A,
[INFO] [stderr] 79 |     B,
[INFO] [stderr]    |     ^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `EventWrites` is never constructed
[INFO] [stderr]   --> src/events/mod.rs:82:12
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub struct EventWrites<EventType> {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `events_a`, `events_b`, `a_start_event_count`, `b_start_event_count`, `event_count`, and `state` are never read
[INFO] [stderr]   --> src/events/mod.rs:88:5
[INFO] [stderr]    |
[INFO] [stderr] 87 | pub struct Events<EventType> {
[INFO] [stderr]    |            ------ fields in this struct
[INFO] [stderr] 88 |     events_a: Vec<Event<EventType>>,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 89 |     events_b: Vec<Event<EventType>>,
[INFO] [stderr]    |     ^^^^^^^^
[INFO] [stderr] 90 |     a_start_event_count: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 91 |     b_start_event_count: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 92 |     event_count: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 93 |     state: State,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `send` is never used
[INFO] [stderr]    --> src/events/mod.rs:108:12
[INFO] [stderr]     |
[INFO] [stderr] 107 | impl<T> Events<T> {
[INFO] [stderr]     | ----------------- method in this implementation
[INFO] [stderr] 108 |     pub fn send(&mut self, event: T) {
[INFO] [stderr]     |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `size` and `scale_factor` are never read
[INFO] [stderr]   --> src/events/mod.rs:53:13
[INFO] [stderr]    |
[INFO] [stderr] 52 |     pub struct WindowResizeEvent {
[INFO] [stderr]    |                ----------------- fields in this struct
[INFO] [stderr] 53 |         pub size: winit::dpi::PhysicalSize<u32>,
[INFO] [stderr]    |             ^^^^
[INFO] [stderr] 54 |         pub scale_factor: Option<f64>,
[INFO] [stderr]    |             ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `WindowResizeEvent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `adapter`, `size`, and `scale_factor` are never read
[INFO] [stderr]   --> src/graphics_context.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr] 4  | pub struct GraphicsContext {
[INFO] [stderr]    |            --------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 8  |     pub adapter: wgpu::Adapter,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 16 |     pub size: winit::dpi::PhysicalSize<u32>,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 17 |     /// Window scale factor.
[INFO] [stderr] 18 |     pub scale_factor: f64,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `on_resize` and `on_event` are never used
[INFO] [stderr]    --> src/graphics_context.rs:86:12
[INFO] [stderr]     |
[INFO] [stderr] 22  | impl GraphicsContext {
[INFO] [stderr]     | -------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 86  |     pub fn on_resize(&mut self, size: winit::dpi::PhysicalSize<u32>, scale_factor: Option<f64>) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 102 |     pub fn on_event(&mut self, event: &events::PenguinEvent) -> bool {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Key` and `MouseMotion` are never constructed
[INFO] [stderr]  --> src/input.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | pub enum InputEvent {
[INFO] [stderr]   |          ---------- variants in this enum
[INFO] [stderr] 3 |     Key(KeyEvent),
[INFO] [stderr]   |     ^^^
[INFO] [stderr] 4 |     /// Contains mouse movement delta.
[INFO] [stderr] 5 |     MouseMotion((f64, f64)),
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `InputEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]    --> src/input.rs:34:5
[INFO] [stderr]     |
[INFO] [stderr] 32  | pub enum Key {
[INFO] [stderr]     |          --- variants in this enum
[INFO] [stderr] 33  |     /// Left mouse button
[INFO] [stderr] 34  |     LMouseButton,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 35  |     /// Non-numpad 1
[INFO] [stderr] 36  |     Key1,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 37  |     /// Non-numpad 2
[INFO] [stderr] 38  |     Key2,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 39  |     /// Non-numpad 3
[INFO] [stderr] 40  |     Key3,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 41  |     /// Non-numpad 4
[INFO] [stderr] 42  |     Key4,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 43  |     /// Non-numpad 5
[INFO] [stderr] 44  |     Key5,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 45  |     /// Non-numpad 6
[INFO] [stderr] 46  |     Key6,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 47  |     /// Non-numpad 7
[INFO] [stderr] 48  |     Key7,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 49  |     /// Non-numpad 8
[INFO] [stderr] 50  |     Key8,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 51  |     /// Non-numpad 9
[INFO] [stderr] 52  |     Key9,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 53  |     /// Non-numpad 0
[INFO] [stderr] 54  |     Key0,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 55  |     A,
[INFO] [stderr]     |     ^
[INFO] [stderr] 56  |     B,
[INFO] [stderr]     |     ^
[INFO] [stderr] 57  |     C,
[INFO] [stderr]     |     ^
[INFO] [stderr] 58  |     D,
[INFO] [stderr]     |     ^
[INFO] [stderr] 59  |     E,
[INFO] [stderr]     |     ^
[INFO] [stderr] 60  |     F,
[INFO] [stderr]     |     ^
[INFO] [stderr] 61  |     G,
[INFO] [stderr]     |     ^
[INFO] [stderr] 62  |     H,
[INFO] [stderr]     |     ^
[INFO] [stderr] 63  |     I,
[INFO] [stderr]     |     ^
[INFO] [stderr] 64  |     J,
[INFO] [stderr]     |     ^
[INFO] [stderr] 65  |     K,
[INFO] [stderr]     |     ^
[INFO] [stderr] 66  |     L,
[INFO] [stderr]     |     ^
[INFO] [stderr] 67  |     M,
[INFO] [stderr]     |     ^
[INFO] [stderr] 68  |     N,
[INFO] [stderr]     |     ^
[INFO] [stderr] 69  |     O,
[INFO] [stderr]     |     ^
[INFO] [stderr] 70  |     P,
[INFO] [stderr]     |     ^
[INFO] [stderr] 71  |     Q,
[INFO] [stderr]     |     ^
[INFO] [stderr] 72  |     R,
[INFO] [stderr]     |     ^
[INFO] [stderr] 73  |     S,
[INFO] [stderr]     |     ^
[INFO] [stderr] 74  |     T,
[INFO] [stderr]     |     ^
[INFO] [stderr] 75  |     U,
[INFO] [stderr]     |     ^
[INFO] [stderr] 76  |     V,
[INFO] [stderr]     |     ^
[INFO] [stderr] 77  |     W,
[INFO] [stderr]     |     ^
[INFO] [stderr] 78  |     X,
[INFO] [stderr]     |     ^
[INFO] [stderr] 79  |     Y,
[INFO] [stderr]     |     ^
[INFO] [stderr] 80  |     Z,
[INFO] [stderr]     |     ^
[INFO] [stderr] 81  |     Escape,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 82  |     F1,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 83  |     F2,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 84  |     F3,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 85  |     F4,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 86  |     F5,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 87  |     F6,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 88  |     F7,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 89  |     F8,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 90  |     F9,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 91  |     F10,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 92  |     F11,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 93  |     F12,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 94  |     PrintScreen,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 95  |     ScrollLock,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 96  |     PauseBreak,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 97  |     Insert,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 98  |     Home,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 99  |     Delete,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 100 |     End,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 101 |     PageDown,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 102 |     PageUp,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 103 |     /// Left arrow key
[INFO] [stderr] 104 |     Left,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 105 |     /// Up arrow key
[INFO] [stderr] 106 |     Up,
[INFO] [stderr]     |     ^^
[INFO] [stderr] 107 |     /// Right arrow key
[INFO] [stderr] 108 |     Right,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 109 |     /// Down arrow key
[INFO] [stderr] 110 |     Down,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 111 |     BackSpace,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 112 |     Return,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 113 |     Space,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 114 |     Numlock,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 115 |     Numpad0,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 116 |     Numpad1,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 117 |     Numpad2,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 118 |     Numpad3,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 119 |     Numpad4,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 120 |     Numpad5,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 121 |     Numpad6,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 122 |     Numpad7,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 123 |     Numpad8,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 124 |     Numpad9,
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr] 125 |     NumpadAdd,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 126 |     NumpadDivide,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 127 |     NumpadDecimal,
[INFO] [stderr]     |     ^^^^^^^^^^^^^
[INFO] [stderr] 128 |     NumpadComma,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 129 |     NumpadEnter,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr] 130 |     NumpadEquals,
[INFO] [stderr]     |     ^^^^^^^^^^^^
[INFO] [stderr] 131 |     NumpadMultiply,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 132 |     NumpadSubtract,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^
[INFO] [stderr] 133 |     Backslash,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 134 |     Colon,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 135 |     Comma,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 136 |     Equals,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 137 |     Grave,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 138 |     LAlt,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 139 |     LBracket,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 140 |     LControl,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 141 |     LShift,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 142 |     LSuper,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 143 |     Minus,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 144 |     Mute,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 145 |     Period,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 146 |     PlayPause,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 147 |     Plus,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 148 |     RAlt,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 149 |     RBracket,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 150 |     RControl,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 151 |     RShift,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 152 |     Semicolon,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 153 |     Tab,
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 154 |     VolumeDown,
[INFO] [stderr]     |     ^^^^^^^^^^
[INFO] [stderr] 155 |     VolumeUp,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Key` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `from_virtual_keycode` is never used
[INFO] [stderr]    --> src/input.rs:159:12
[INFO] [stderr]     |
[INFO] [stderr] 158 | impl Key {
[INFO] [stderr]     | -------- associated function in this implementation
[INFO] [stderr] 159 |     pub fn from_virtual_keycode(virtual_keycode: winit::event::VirtualKeyCode) -> Option<Self> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `init`, `startup_steps`, and `run_steps` are never used
[INFO] [stderr]   --> src/layer/mod.rs:41:8
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub trait Layer {
[INFO] [stderr]    |           ----- associated items in this trait
[INFO] [stderr] 41 |     fn init(self, cmd: &mut leg::CommandBuffer, resources: &mut leg::Resources);
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 42 |     fn startup_steps() -> Option<Vec<leg::Step>>;
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 43 |     fn run_steps() -> Option<Vec<leg::Step>>;
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `start_time`, `elapsed_f64`, `dt_f32`, and `dt_f64` are never used
[INFO] [stderr]   --> src/layer/application_layer.rs:49:12
[INFO] [stderr]    |
[INFO] [stderr] 44 | impl Time {
[INFO] [stderr]    | --------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 49 |     pub fn start_time(&self) -> std::time::Instant {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 61 |     pub fn elapsed_f64(&self) -> f64 {
[INFO] [stderr]    |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 65 |     pub fn dt_f32(&self) -> f32 {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 69 |     pub fn dt_f64(&self) -> f64 {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `mesh_assets` is never read
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:97:9
[INFO] [stderr]    |
[INFO] [stderr] 95 | pub struct BaseRenderSceneLayer<'a> {
[INFO] [stderr]    |            -------------------- field in this struct
[INFO] [stderr] 96 |     pub window: &'a winit::window::Window,
[INFO] [stderr] 97 |     pub mesh_assets: &'a [&'a str],
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `should_rebuild_batches` is never read
[INFO] [stderr]   --> src/layer/base_render_scene_layer/mod.rs:42:13
[INFO] [stderr]    |
[INFO] [stderr] 40 |     pub struct RenderObjects {
[INFO] [stderr]    |                ------------- field in this struct
[INFO] [stderr] 41 |         pub render_objects: HandleMap<RenderObject>,
[INFO] [stderr] 42 |         pub should_rebuild_batches: bool,
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/layer/scene_layer.rs:16:31
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct SceneEntityHandles(Vec<Entity>);
[INFO] [stderr]    |            ------------------ ^^^^^^^^^^^
[INFO] [stderr]    |            |
[INFO] [stderr]    |            field in this struct
[INFO] [stderr]    |
[INFO] [stderr]    = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: enum `WriteState` is never used
[INFO] [stderr]   --> src/layer/scene_layer.rs:18:6
[INFO] [stderr]    |
[INFO] [stderr] 18 | enum WriteState {
[INFO] [stderr]    |      ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `swap` is never used
[INFO] [stderr]   --> src/layer/scene_layer.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl WriteState {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] 23 |     fn swap(&mut self) {
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Events` is never constructed
[INFO] [stderr]   --> src/layer/scene_layer.rs:33:12
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub struct Events<E: Resource> {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Events2` is never constructed
[INFO] [stderr]   --> src/layer/scene_layer.rs:42:12
[INFO] [stderr]    |
[INFO] [stderr] 42 | pub struct Events2<EventType: legion::systems::Resource> {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/layer/scene_layer.rs:48:8
[INFO] [stderr]    |
[INFO] [stderr] 47 | impl<T: legion::systems::Resource> Events2<T> {
[INFO] [stderr]    | --------------------------------------------- associated function in this implementation
[INFO] [stderr] 48 |     fn new() -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `read_count` is never read
[INFO] [stderr]   --> src/layer/scene_layer.rs:65:5
[INFO] [stderr]    |
[INFO] [stderr] 63 | pub struct EventReads<E: legion::systems::Resource> {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 64 |     data: AtomicRefCell<Vec<E>>,
[INFO] [stderr] 65 |     read_count: usize,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `some_message` is never read
[INFO] [stderr]   --> src/layer/scene_layer.rs:93:5
[INFO] [stderr]    |
[INFO] [stderr] 92 | struct SomeEvent {
[INFO] [stderr]    |        --------- field in this struct
[INFO] [stderr] 93 |     some_message: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `init_register` is never used
[INFO] [stderr]   --> src/layer/mod.rs:53:16
[INFO] [stderr]    |
[INFO] [stderr] 52 |     impl EditorComponentStorage {
[INFO] [stderr]    |     --------------------------- associated function in this implementation
[INFO] [stderr] 53 |         pub fn init_register() -> Self {
[INFO] [stderr]    |                ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Textures` is never constructed
[INFO] [stderr]   --> src/layer/mod.rs:64:16
[INFO] [stderr]    |
[INFO] [stderr] 64 |     pub struct Textures {
[INFO] [stderr]    |                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `init` is never used
[INFO] [stderr]   --> src/layer/mod.rs:71:16
[INFO] [stderr]    |
[INFO] [stderr] 70 |     impl Textures {
[INFO] [stderr]    |     ------------- associated function in this implementation
[INFO] [stderr] 71 |         pub fn init(device: &wgpu::Device, queue: &wgpu::Queue) -> (Textures, wgpu::BindGroup) {
[INFO] [stderr]    |                ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Entities` is never constructed
[INFO] [stderr]    --> src/layer/mod.rs:111:16
[INFO] [stderr]     |
[INFO] [stderr] 111 |     pub struct Entities {
[INFO] [stderr]     |                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `init` is never used
[INFO] [stderr]    --> src/layer/mod.rs:116:16
[INFO] [stderr]     |
[INFO] [stderr] 115 |     impl Entities {
[INFO] [stderr]     |     ------------- associated function in this implementation
[INFO] [stderr] 116 |         pub fn init(
[INFO] [stderr]     |                ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]  --> src/new_bevy_ecs/graphics_context.rs:7:25
[INFO] [stderr]   |
[INFO] [stderr] 7 | pub struct DepthTexture(pub texture::Texture);
[INFO] [stderr]   |            ------------ ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |            |
[INFO] [stderr]   |            field in this struct
[INFO] [stderr]   |
[INFO] [stderr]   = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Vertex` is never constructed
[INFO] [stderr]   --> src/new_bevy_ecs/meshes.rs:14:12
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub struct Vertex {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Vertex` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MeshDefinition` is never constructed
[INFO] [stderr]   --> src/new_bevy_ecs/meshes.rs:24:12
[INFO] [stderr]    |
[INFO] [stderr] 24 | pub struct MeshDefinition {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MeshDefinition` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `VertexArrayBuffer` is never constructed
[INFO] [stderr]   --> src/new_bevy_ecs/meshes.rs:33:12
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub struct VertexArrayBuffer {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `VertexArrayBuffer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `MeshAsset` is never constructed
[INFO] [stderr]   --> src/new_bevy_ecs/meshes.rs:40:12
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub struct MeshAsset {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MeshAsset` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `ATTRIBUTES` and `buffer_layout` are never used
[INFO] [stderr]   --> src/new_bevy_ecs/meshes.rs:46:11
[INFO] [stderr]    |
[INFO] [stderr] 45 | impl Vertex {
[INFO] [stderr]    | ----------- associated items in this implementation
[INFO] [stderr] 46 |     const ATTRIBUTES: [wgpu::VertexAttribute; 3] = wgpu::vertex_attr_array![
[INFO] [stderr]    |           ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 52 |     pub fn buffer_layout<'a>() -> wgpu::VertexBufferLayout<'a> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `create_draw_command` is never used
[INFO] [stderr]   --> src/new_bevy_ecs/meshes.rs:63:12
[INFO] [stderr]    |
[INFO] [stderr] 61 | impl MeshDefinition {
[INFO] [stderr]    | ------------------- method in this implementation
[INFO] [stderr] 62 |     /// Creates a draw command using this mesh.
[INFO] [stderr] 63 |     pub fn create_draw_command(
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `vertices_slice`, `indices_slice`, and `build_from_mesh_assets` are never used
[INFO] [stderr]   --> src/new_bevy_ecs/meshes.rs:80:12
[INFO] [stderr]    |
[INFO] [stderr] 78 | impl VertexArrayBuffer {
[INFO] [stderr]    | ---------------------- associated items in this implementation
[INFO] [stderr] 79 |     /// Returns the slice of the vertex array buffer that contains the vertices.
[INFO] [stderr] 80 |     pub fn vertices_slice(&self) -> wgpu::BufferSlice {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 85 |     pub fn indices_slice(&self) -> wgpu::BufferSlice {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 94 |     pub fn build_from_mesh_assets(
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `load_obj` is never used
[INFO] [stderr]    --> src/new_bevy_ecs/meshes.rs:159:12
[INFO] [stderr]     |
[INFO] [stderr] 157 | impl MeshAsset {
[INFO] [stderr]     | -------------- associated function in this implementation
[INFO] [stderr] 158 |     /// Loads an obj file's vertices and indices into memory.
[INFO] [stderr] 159 |     pub fn load_obj<P: AsRef<std::path::Path>>(path: P) -> Result<Self> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `mesh_asset_names` is never read
[INFO] [stderr]    --> src/new_bevy_ecs/meshes.rs:214:9
[INFO] [stderr]     |
[INFO] [stderr] 213 | pub struct MeshAssetsToLoad {
[INFO] [stderr]     |            ---------------- field in this struct
[INFO] [stderr] 214 |     pub mesh_asset_names: &'static [&'static str],
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DrawBatcher` is never constructed
[INFO] [stderr]    --> src/new_bevy_ecs/meshes.rs:228:8
[INFO] [stderr]     |
[INFO] [stderr] 228 | struct DrawBatcher(mesh_pass::LegacyMeshPass);
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ForwardMeshPass` is never constructed
[INFO] [stderr]    --> src/new_bevy_ecs/meshes.rs:233:8
[INFO] [stderr]     |
[INFO] [stderr] 233 | struct ForwardMeshPass {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]   --> src/new_bevy_ecs/mod.rs:55:16
[INFO] [stderr]    |
[INFO] [stderr] 54 |     impl Time {
[INFO] [stderr]    |     --------- methods in this implementation
[INFO] [stderr] 55 |         pub fn delta_time(&self) -> std::time::Duration {
[INFO] [stderr]    |                ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 59 |         pub fn start_time(&self) -> std::time::Instant {
[INFO] [stderr]    |                ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 63 |         pub fn elapsed(&self) -> std::time::Duration {
[INFO] [stderr]    |                ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 67 |         pub fn elapsed_f32(&self) -> f32 {
[INFO] [stderr]    |                ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 71 |         pub fn elapsed_f64(&self) -> f64 {
[INFO] [stderr]    |                ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 75 |         pub fn dt_f32(&self) -> f32 {
[INFO] [stderr]    |                ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 79 |         pub fn dt_f64(&self) -> f64 {
[INFO] [stderr]    |                ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `render_bounds` is never read
[INFO] [stderr]   --> src/render_scene/mod.rs:29:9
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub struct RenderObjectDescriptor {
[INFO] [stderr]    |            ---------------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 29 |     pub render_bounds: mesh::RenderBounds,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MAX_DRAW_COMMANDS` is never used
[INFO] [stderr]   --> src/render_scene/mod.rs:49:11
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub const MAX_DRAW_COMMANDS: usize = 100;
[INFO] [stderr]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]   --> src/render_scene/mod.rs:58:9
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub struct RenderScene {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 58 |     pub vertex_array_buffer: VertexArrayBuffer,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 59 |     /// Representation of each mesh in the vertex array buffer.
[INFO] [stderr] 60 |     meshes: Vec<mesh::Mesh>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 68 |     pub render_objects: HandleMap<RenderObject>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr] 69 |     /// The render objects array in GPU-memory.
[INFO] [stderr] 70 |     pub render_objects_buffer: GpuBuffer<RenderObject>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 71 |     /// Render objects that need to be reuploaded to the GPU.
[INFO] [stderr] 72 |     render_objects_to_update: Vec<Handle<RenderObject>>,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 73 |     //
[INFO] [stderr] 74 |     pub instance_buffer: GpuBuffer<RenderInstance>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 81 |     pub draw_commands_buffer: GpuBuffer<DrawIndexedIndirect>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 82 |     /// Buffer of final draw commands needed for the frame (set by the compute shader).
[INFO] [stderr] 83 |     pub out_draw_commands_buffer: GpuBuffer<DrawIndexedIndirect>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 84 |     /// Buffer with draw_count set to 0, used to reset draw_count_buffer.
[INFO] [stderr] 85 |     pub clear_draw_count_buffer: GpuBuffer<DrawIndirectCount>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 86 |     /// Buffer containing the number of draw commands to issue this frame (filled by the compute shader).
[INFO] [stderr] 87 |     pub draw_count_buffer: GpuBuffer<DrawIndirectCount>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 91 |     pub max_draw_count: u32,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr] 92 |     //
[INFO] [stderr] 93 |     pub instance_index_to_render_object_map: GpuBuffer<u32>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 94 |     //
[INFO] [stderr] 95 |     pub clear_compute_shader_local_data_buffer: GpuBuffer<DrawOutputInfo>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 96 |     pub compute_shader_local_data_buffer: GpuBuffer<DrawOutputInfo>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 99 |     forward_pass: mesh_pass::LegacyMeshPass,
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `register_object`, `update_transform_model_matrix`, `update`, and `build_batches` are never used
[INFO] [stderr]    --> src/render_scene/mod.rs:125:12
[INFO] [stderr]     |
[INFO] [stderr] 123 | impl RenderScene {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] 124 |     /// Creates a new render scene with the specified mesh assets.
[INFO] [stderr] 125 |     pub fn new(device: &wgpu::Device, mesh_assets: &[&str]) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 180 |     pub fn register_object(&mut self, desc: &RenderObjectDescriptor) -> Handle<RenderObject> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 203 |     pub fn update_transform_model_matrix(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 215 |     pub fn update(&mut self, queue: &wgpu::Queue) {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 228 |     pub fn build_batches(&mut self, queue: &wgpu::Queue) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_draw_indirect_buffers` is never used
[INFO] [stderr]    --> src/render_scene/mod.rs:273:4
[INFO] [stderr]     |
[INFO] [stderr] 273 | fn create_draw_indirect_buffers(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_draw_count_buffers` is never used
[INFO] [stderr]    --> src/render_scene/mod.rs:307:4
[INFO] [stderr]     |
[INFO] [stderr] 307 | fn create_draw_count_buffers(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_render_objects_buffer` is never used
[INFO] [stderr]    --> src/render_scene/mod.rs:331:4
[INFO] [stderr]     |
[INFO] [stderr] 331 | fn create_render_objects_buffer(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_instance_buffer` is never used
[INFO] [stderr]    --> src/render_scene/mod.rs:345:4
[INFO] [stderr]     |
[INFO] [stderr] 345 | fn create_instance_buffer(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `create_compute_shader_local_data_buffers` is never used
[INFO] [stderr]    --> src/render_scene/mod.rs:368:4
[INFO] [stderr]     |
[INFO] [stderr] 368 | fn create_compute_shader_local_data_buffers(
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BIND_GROUP_LAYOUT_DESC` is never used
[INFO] [stderr]  --> src/render_scene/compute_pipeline.rs:4:11
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub const BIND_GROUP_LAYOUT_DESC: wgpu::BindGroupLayoutDescriptor =
[INFO] [stderr]   |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bind_group_entries` is never used
[INFO] [stderr]   --> src/render_scene/compute_pipeline.rs:90:8
[INFO] [stderr]    |
[INFO] [stderr] 90 | pub fn bind_group_entries<'a>(
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `texture` is never read
[INFO] [stderr]  --> src/texture.rs:4:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub struct Texture {
[INFO] [stderr]   |            ------- field in this struct
[INFO] [stderr] 4 |     pub texture: wgpu::Texture,
[INFO] [stderr]   |         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `texture_2d` is never used
[INFO] [stderr]    --> src/texture.rs:156:12
[INFO] [stderr]     |
[INFO] [stderr] 156 |     pub fn texture_2d(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `sampler` is never used
[INFO] [stderr]    --> src/texture.rs:165:12
[INFO] [stderr]     |
[INFO] [stderr] 165 |     pub fn sampler(binding: u32, visibility: wgpu::ShaderStages) -> wgpu::BindGroupLayoutEntry {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `penguin_engine` (bin "penguin_engine" test) generated 178 warnings (run `cargo fix --bin "penguin_engine" --tests` to apply 67 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.01s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: fs_extra v1.2.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/penguin_engine-d34c0fc5c801c128)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test events::test_events ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c7f51044698382bccfab5ee0da33999fdfe042c8b21323720c8d86901479e46f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c7f51044698382bccfab5ee0da33999fdfe042c8b21323720c8d86901479e46f", kill_on_drop: false }`
[INFO] [stdout] c7f51044698382bccfab5ee0da33999fdfe042c8b21323720c8d86901479e46f
