[INFO] cloning repository https://github.com/nextdesusu/learn_rust-webgpu
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nextdesusu/learn_rust-webgpu" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnextdesusu%2Flearn_rust-webgpu", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnextdesusu%2Flearn_rust-webgpu'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fd458fd566ac27dff870f796a8862bea7d72e2e4
[INFO] checking nextdesusu/learn_rust-webgpu against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnextdesusu%2Flearn_rust-webgpu" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nextdesusu/learn_rust-webgpu
[INFO] finished tweaking git repo https://github.com/nextdesusu/learn_rust-webgpu
[INFO] tweaked toml for git repo https://github.com/nextdesusu/learn_rust-webgpu written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nextdesusu/learn_rust-webgpu on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nextdesusu/learn_rust-webgpu 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded env_logger v0.10.2
[INFO] [stderr]   Downloaded tobj v3.2.5
[INFO] [stderr]   Downloaded xml-rs v0.8.20
[INFO] [stderr]   Downloaded ab_glyph v0.2.25
[INFO] [stderr]   Downloaded cc v1.0.94
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8862f6bec3566fa3ddd225252817cefe33d7facb585cb04164a719f907ce73d8
[INFO] running `Command { std: "docker" "start" "-a" "8862f6bec3566fa3ddd225252817cefe33d7facb585cb04164a719f907ce73d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8862f6bec3566fa3ddd225252817cefe33d7facb585cb04164a719f907ce73d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8862f6bec3566fa3ddd225252817cefe33d7facb585cb04164a719f907ce73d8", kill_on_drop: false }`
[INFO] [stdout] 8862f6bec3566fa3ddd225252817cefe33d7facb585cb04164a719f907ce73d8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 66c648bfdd30664690588e2194ccc9878f7630740965744ccfce3911e75c26dd
[INFO] running `Command { std: "docker" "start" "-a" "66c648bfdd30664690588e2194ccc9878f7630740965744ccfce3911e75c26dd", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking libloading v0.8.3
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]    Compiling xml-rs v0.8.20
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]     Checking downcast-rs v1.2.1
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]    Compiling khronos-egl v6.0.0
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.16.1
[INFO] [stderr]     Checking xcursor v0.3.5
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking wgpu-types v0.18.0
[INFO] [stderr]     Checking parking_lot_core v0.9.9
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking regex-syntax v0.8.3
[INFO] [stderr]    Compiling syn v2.0.58
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking profiling v1.0.15
[INFO] [stderr]     Checking renderdoc-sys v1.1.0
[INFO] [stderr]     Checking ab_glyph v0.2.25
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking nix v0.25.1
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]    Compiling anyhow v1.0.82
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking hashbrown v0.14.3
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]    Compiling cgmath v0.18.0
[INFO] [stderr]     Checking is-terminal v0.4.12
[INFO] [stderr]     Checking flume v0.11.0
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]     Checking socket2 v0.5.6
[INFO] [stderr]     Checking tobj v3.2.5
[INFO] [stderr]    Compiling learn-wgpu v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking glob v0.3.1
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]     Checking spirv v0.2.0+1.5.4
[INFO] [stderr]     Checking approx v0.4.0
[INFO] [stderr]     Checking regex-automata v0.4.6
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]    Compiling winit v0.28.7
[INFO] [stderr]     Checking wayland-commons v0.29.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.58
[INFO] [stderr]    Compiling bytemuck_derive v1.6.0
[INFO] [stderr]    Compiling tokio-macros v2.2.0
[INFO] [stderr]     Checking regex v1.10.4
[INFO] [stderr]     Checking tokio v1.37.0
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]     Checking wayland-cursor v0.29.5
[INFO] [stderr]     Checking thiserror v1.0.58
[INFO] [stderr]     Checking bytemuck v1.15.0
[INFO] [stderr]     Checking calloop v0.10.6
[INFO] [stderr]     Checking naga v0.14.2
[INFO] [stderr]     Checking tiny-skia-path v0.8.4
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking tiny-skia v0.8.4
[INFO] [stderr]     Checking wgpu-hal v0.18.1
[INFO] [stderr]     Checking wgpu-core v0.18.1
[INFO] [stderr]     Checking wgpu v0.18.0
[INFO] [stderr]     Checking sctk-adwaita v0.5.4
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/tutorial_pipeline/state.rs:267:16
[INFO] [stdout]     |
[INFO] [stdout] 267 |             if (self.is_challenge_shader) {
[INFO] [stdout]     |                ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 267 -             if (self.is_challenge_shader) {
[INFO] [stdout] 267 +             if self.is_challenge_shader  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:339:20
[INFO] [stdout]     |
[INFO] [stdout] 339 |                 if (self.in_challenge_mode) {
[INFO] [stdout]     |                    ^                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 339 -                 if (self.in_challenge_mode) {
[INFO] [stdout] 339 +                 if self.in_challenge_mode  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:386:16
[INFO] [stdout]     |
[INFO] [stdout] 386 |             if (self.in_challenge_mode) {
[INFO] [stdout]     |                ^                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 386 -             if (self.in_challenge_mode) {
[INFO] [stdout] 386 +             if self.in_challenge_mode  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `event::*`
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/state.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use winit::{event::WindowEvent, event::*, window::Window};
[INFO] [stdout]   |                                 ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OPENGL_TO_WGPU_MATRIX`
[INFO] [stdout]  --> src/tutorial_instancing/state.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 |     camera::{Camera, OPENGL_TO_WGPU_MATRIX},
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_instancing/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_depth_buffer/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cgmath::prelude::*`
[INFO] [stdout]  --> src/tutorial_depth_buffer/instance.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use cgmath::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_model_loading/state.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_model_loading/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cgmath::prelude::*`
[INFO] [stdout]  --> src/tutorial_model_loading/instance.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use cgmath::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/tutorial_pipeline/state.rs:267:16
[INFO] [stdout]     |
[INFO] [stdout] 267 |             if (self.is_challenge_shader) {
[INFO] [stdout]     |                ^                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 267 -             if (self.is_challenge_shader) {
[INFO] [stdout] 267 +             if self.is_challenge_shader  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:339:20
[INFO] [stdout]     |
[INFO] [stdout] 339 |                 if (self.in_challenge_mode) {
[INFO] [stdout]     |                    ^                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 339 -                 if (self.in_challenge_mode) {
[INFO] [stdout] 339 +                 if self.in_challenge_mode  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:386:16
[INFO] [stdout]     |
[INFO] [stdout] 386 |             if (self.in_challenge_mode) {
[INFO] [stdout]     |                ^                      ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 386 -             if (self.in_challenge_mode) {
[INFO] [stdout] 386 +             if self.in_challenge_mode  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `event::*`
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/state.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use winit::{event::WindowEvent, event::*, window::Window};
[INFO] [stdout]   |                                 ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OPENGL_TO_WGPU_MATRIX`
[INFO] [stdout]  --> src/tutorial_instancing/state.rs:6:22
[INFO] [stdout]   |
[INFO] [stdout] 6 |     camera::{Camera, OPENGL_TO_WGPU_MATRIX},
[INFO] [stdout]   |                      ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_instancing/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_depth_buffer/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cgmath::prelude::*`
[INFO] [stdout]  --> src/tutorial_depth_buffer/instance.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use cgmath::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_model_loading/state.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::*`
[INFO] [stdout]  --> src/tutorial_model_loading/vertex.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::*;
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cgmath::prelude::*`
[INFO] [stdout]  --> src/tutorial_model_loading/instance.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use cgmath::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/tutorial_surface/state.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 modifiers,
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `winit::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]    --> src/tutorial_surface/state.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 modifiers,
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_id`
[INFO] [stdout]    --> src/tutorial_surface/state.rs:120:17
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 device_id,
[INFO] [stdout]     |                 ^^^^^^^^^ help: try ignoring the field: `device_id: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]    --> src/tutorial_surface/state.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 modifiers,
[INFO] [stdout]     |                 ^^^^^^^^^ help: try ignoring the field: `modifiers: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `device_id`
[INFO] [stdout]    --> src/tutorial_surface/state.rs:120:17
[INFO] [stdout]     |
[INFO] [stdout] 120 |                 device_id,
[INFO] [stdout]     |                 ^^^^^^^^^ help: try ignoring the field: `device_id: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `modifiers`
[INFO] [stdout]    --> src/tutorial_surface/state.rs:122:17
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 modifiers,
[INFO] [stdout]     |                 ^^^^^^^^^ help: try ignoring the field: `modifiers: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/tutorial_surface/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]  --> src/tutorial_surface/state.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct State {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `window`, `resize`, `input`, `update`, and `render` are never used
[INFO] [stdout]    --> src/tutorial_surface/state.rs:20:18
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  19 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  20 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 141 |
[INFO] [stdout] 142 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/tutorial_pipeline/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]  --> src/tutorial_pipeline/state.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct State {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `window`, `resize`, `input`, `update`, and `render` are never used
[INFO] [stdout]    --> src/tutorial_pipeline/state.rs:24:18
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  23 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  24 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 234 |
[INFO] [stdout] 235 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/tutorial_buffers/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_buffers/state.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_buffers/state.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | / #[repr(C)]
[INFO] [stdout] 5 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 6 | | pub struct Vertex {
[INFO] [stdout] 7 | |     position: [f32; 3],
[INFO] [stdout] 8 | |     color: [f32; 3],
[INFO] [stdout] 9 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 12 |     fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:59:7
[INFO] [stdout]    |
[INFO] [stdout] 59 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHALLENGE_VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | const CHALLENGE_VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHALLENGE_INDICES` is never used
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:110:7
[INFO] [stdout]     |
[INFO] [stdout] 110 | const CHALLENGE_INDICES: &[u16] = &[
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub struct State {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `window`, `resize`, `input`, `update`, and `render` are never used
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 147 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 148 |     // Creating some of the wgpu types requires async code
[INFO] [stdout] 149 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 350 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 351 |
[INFO] [stdout] 352 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_textures/mod.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_textures/state.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / #[repr(C)]
[INFO] [stdout]  6 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct Vertex {
[INFO] [stdout]  8 | |     position: [f32; 3],
[INFO] [stdout]  9 | |     tex_coords: [f32; 2],
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 13 |     fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_textures/state.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_textures/state.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  83 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  84 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  85 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 306 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 338 |
[INFO] [stdout] 339 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_textures/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/tutorial_textures/texture.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 11 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/mod.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Challenge` is never constructed
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct Challenge {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_camera_uniform` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Challenge {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 42 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn update_camera_uniform(&mut self, camera_uniform: &mut CameraUniform, camera: &Camera) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_buffers_and_camera/state.rs:83:18
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  82 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  83 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 351 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     pub fn update(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/texture.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 11 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/vertex.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/vertex.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / #[repr(C)]
[INFO] [stdout] 4 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 5 | | pub struct Vertex {
[INFO] [stdout] 6 | |     pub position: [f32; 3],
[INFO] [stdout] 7 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 8 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/vertex.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_instancing/mod.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_instancing/state.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_instancing/state.rs:42:7
[INFO] [stdout]    |
[INFO] [stdout] 42 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_instancing/state.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_instancing/state.rs:71:18
[INFO] [stdout]     |
[INFO] [stdout]  69 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  70 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  71 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 360 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 364 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub fn update(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/tutorial_instancing/texture.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 11 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_instancing/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_instancing/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_instancing/vertex.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_instancing/vertex.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / #[repr(C)]
[INFO] [stdout] 4 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 5 | | pub struct Vertex {
[INFO] [stdout] 6 | |     pub position: [f32; 3],
[INFO] [stdout] 7 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 8 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_instancing/vertex.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_instancing/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_instancing/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_instancing/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_instancing/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instance` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/instance.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Instance {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_raw` and `challenge` are never used
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Instance {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout]  9 |     pub fn to_raw(&self) -> InstanceRaw {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn challenge(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct InstanceRaw {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | / #[repr(C)]
[INFO] [stdout] 29 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 30 | | pub struct InstanceRaw {
[INFO] [stdout] 31 | |     pub model: [[f32; 4]; 4],
[INFO] [stdout] 32 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl InstanceRaw {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 35 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/mod.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/state.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/state.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_depth_buffer/state.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_depth_buffer/state.rs:70:18
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  69 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  70 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 372 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     pub fn update(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 407 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `DEPTH_FORMAT`, `create_depth_texture`, `create_challenge`, `from_bytes`, and `from_image` are never used
[INFO] [stdout]    --> src/tutorial_depth_buffer/texture.rs:11:15
[INFO] [stdout]     |
[INFO] [stdout]  10 | impl Texture {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout]  11 |     pub const DEPTH_FORMAT: wgpu::TextureFormat = wgpu::TextureFormat::Depth32Float; // 1.
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout]  12 |
[INFO] [stdout]  13 |     pub fn create_depth_texture(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn create_challenge(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn from_bytes(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn from_image(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_depth_buffer/vertex.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_depth_buffer/vertex.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / #[repr(C)]
[INFO] [stdout] 4 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 5 | | pub struct Vertex {
[INFO] [stdout] 6 | |     pub position: [f32; 3],
[INFO] [stdout] 7 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 8 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/vertex.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_depth_buffer/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instance` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/instance.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Instance {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_raw` is never used
[INFO] [stdout]  --> src/tutorial_depth_buffer/instance.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl Instance {
[INFO] [stdout]   | ------------- method in this implementation
[INFO] [stdout] 9 |     pub fn to_raw(&self) -> InstanceRaw {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_depth_buffer/instance.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct InstanceRaw {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/instance.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / #[repr(C)]
[INFO] [stdout] 19 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 20 | | pub struct InstanceRaw {
[INFO] [stdout] 21 | |     pub model: [[f32; 4]; 4],
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/instance.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InstanceRaw {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DepthPass` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/depth_pass.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct DepthPass {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEPTH_VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/depth_pass.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const DEPTH_VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEPTH_INDICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/depth_pass.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const DEPTH_INDICES: &[u16] = &[0, 1, 2, 0, 2, 3];
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `render` are never used
[INFO] [stdout]    --> src/tutorial_depth_buffer/depth_pass.rs:37:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl DepthPass {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  37 |     pub fn new(device: &wgpu::Device, config: &wgpu::SurfaceConfiguration) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn render(&self, view: &wgpu::TextureView, encoder: &mut wgpu::CommandEncoder) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/state.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | struct CameraUniform {
[INFO] [stdout]    |        ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/state.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / #[repr(C)]
[INFO] [stdout] 47 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 48 | | struct CameraUniform {
[INFO] [stdout] 49 | |     view_proj: [[f32; 4]; 4],
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tutorial_model_loading/state.rs:180:8
[INFO] [stdout]     |
[INFO] [stdout] 180 | struct InstanceRaw {
[INFO] [stdout]     |        ^^^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/tutorial_model_loading/state.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | / #[repr(C)]
[INFO] [stdout] 179 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 180 | | struct InstanceRaw {
[INFO] [stdout] 181 | |     #[allow(dead_code)]
[INFO] [stdout] 182 | |     model: [[f32; 4]; 4],
[INFO] [stdout] 183 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `texture` is never read
[INFO] [stdout]  --> src/tutorial_model_loading/texture.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 7 |     pub texture: wgpu::Texture,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_challenge` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/texture.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Texture {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn create_challenge(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tutorial_model_loading/texture.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct TextureVertex {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/tutorial_model_loading/texture.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / #[repr(C)]
[INFO] [stdout] 174 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 175 | | pub struct TextureVertex {
[INFO] [stdout] 176 | |     pub position: [f32; 3],
[INFO] [stdout] 177 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 178 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Vertex` is never used
[INFO] [stdout]  --> src/tutorial_model_loading/vertex.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait Vertex {
[INFO] [stdout]   |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_model_loading/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instance` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/instance.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Instance {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_raw` is never used
[INFO] [stdout]  --> src/tutorial_model_loading/instance.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl Instance {
[INFO] [stdout]   | ------------- method in this implementation
[INFO] [stdout] 9 |     pub fn to_raw(&self) -> InstanceRaw {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/instance.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct InstanceRaw {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/instance.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / #[repr(C)]
[INFO] [stdout] 19 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 20 | | pub struct InstanceRaw {
[INFO] [stdout] 21 | |     pub model: [[f32; 4]; 4],
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/instance.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InstanceRaw {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ModelVertex {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / #[repr(C)]
[INFO] [stdout] 10 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 11 | | pub struct ModelVertex {
[INFO] [stdout] 12 | |     pub position: [f32; 3],
[INFO] [stdout] 13 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 14 | |     pub normal: [f32; 3],
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `diffuse_texture` are never read
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct Material {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 45 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub diffuse_texture: texture::Texture,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Mesh {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 51 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `draw_mesh` and `draw_model` are never used
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub trait DrawModel<'a> {
[INFO] [stdout]    |           --------- methods in this trait
[INFO] [stdout] 64 |     fn draw_mesh(
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     fn draw_model(&mut self, model: &'a Model, camera_bind_group: &'a wgpu::BindGroup);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Material` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/material.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Material {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mesh` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/mesh.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Mesh {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/tutorial_surface/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]  --> src/tutorial_surface/state.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct State {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `window`, `resize`, `input`, `update`, and `render` are never used
[INFO] [stdout]    --> src/tutorial_surface/state.rs:20:18
[INFO] [stdout]     |
[INFO] [stdout]  18 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  19 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  20 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 141 |
[INFO] [stdout] 142 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/tutorial_pipeline/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]  --> src/tutorial_pipeline/state.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct State {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `window`, `resize`, `input`, `update`, and `render` are never used
[INFO] [stdout]    --> src/tutorial_pipeline/state.rs:24:18
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  23 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  24 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 202 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 234 |
[INFO] [stdout] 235 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/tutorial_buffers/mod.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_buffers/state.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_buffers/state.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | / #[repr(C)]
[INFO] [stdout] 5 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 6 | | pub struct Vertex {
[INFO] [stdout] 7 | |     position: [f32; 3],
[INFO] [stdout] 8 | |     color: [f32; 3],
[INFO] [stdout] 9 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 12 |     fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:59:7
[INFO] [stdout]    |
[INFO] [stdout] 59 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHALLENGE_VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers/state.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | const CHALLENGE_VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHALLENGE_INDICES` is never used
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:110:7
[INFO] [stdout]     |
[INFO] [stdout] 110 | const CHALLENGE_INDICES: &[u16] = &[
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:123:12
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub struct State {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `window`, `resize`, `input`, `update`, and `render` are never used
[INFO] [stdout]    --> src/tutorial_buffers/state.rs:149:18
[INFO] [stdout]     |
[INFO] [stdout] 147 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 148 |     // Creating some of the wgpu types requires async code
[INFO] [stdout] 149 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 313 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 317 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 350 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 351 |
[INFO] [stdout] 352 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_textures/mod.rs:10:14
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_textures/state.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:5:1
[INFO] [stdout]    |
[INFO] [stdout]  5 | / #[repr(C)]
[INFO] [stdout]  6 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct Vertex {
[INFO] [stdout]  8 | |     position: [f32; 3],
[INFO] [stdout]  9 | |     tex_coords: [f32; 2],
[INFO] [stdout] 10 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 13 |     fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_textures/state.rs:61:7
[INFO] [stdout]    |
[INFO] [stdout] 61 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_textures/state.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_textures/state.rs:85:18
[INFO] [stdout]     |
[INFO] [stdout]  83 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  84 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  85 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 306 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub fn update(&mut self) {}
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 338 |
[INFO] [stdout] 339 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_textures/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/tutorial_textures/texture.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 11 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/mod.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Challenge` is never constructed
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct Challenge {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_camera_uniform` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl Challenge {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 42 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     fn update_camera_uniform(&mut self, camera_uniform: &mut CameraUniform, camera: &Camera) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/state.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_buffers_and_camera/state.rs:83:18
[INFO] [stdout]     |
[INFO] [stdout]  81 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  82 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  83 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 334 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 338 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 351 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 355 |     pub fn update(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 363 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/texture.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 11 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/vertex.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/vertex.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / #[repr(C)]
[INFO] [stdout] 4 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 5 | | pub struct Vertex {
[INFO] [stdout] 6 | |     pub position: [f32; 3],
[INFO] [stdout] 7 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 8 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/vertex.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_buffers_and_camera/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_buffers_and_camera/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_instancing/mod.rs:15:14
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_instancing/state.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_instancing/state.rs:42:7
[INFO] [stdout]    |
[INFO] [stdout] 42 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_instancing/state.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_instancing/state.rs:71:18
[INFO] [stdout]     |
[INFO] [stdout]  69 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  70 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  71 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 360 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 364 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 377 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |     pub fn update(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_bytes` and `from_image` are never used
[INFO] [stdout]   --> src/tutorial_instancing/texture.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Texture {
[INFO] [stdout]    | ------------ associated functions in this implementation
[INFO] [stdout] 11 |     pub fn from_bytes(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn from_image(
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_instancing/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_instancing/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_instancing/vertex.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_instancing/vertex.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / #[repr(C)]
[INFO] [stdout] 4 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 5 | | pub struct Vertex {
[INFO] [stdout] 6 | |     pub position: [f32; 3],
[INFO] [stdout] 7 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 8 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_instancing/vertex.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_instancing/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_instancing/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_instancing/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_instancing/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instance` is never constructed
[INFO] [stdout]  --> src/tutorial_instancing/instance.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Instance {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `to_raw` and `challenge` are never used
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Instance {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout]  9 |     pub fn to_raw(&self) -> InstanceRaw {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub fn challenge(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct InstanceRaw {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | / #[repr(C)]
[INFO] [stdout] 29 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 30 | | pub struct InstanceRaw {
[INFO] [stdout] 31 | |     pub model: [[f32; 4]; 4],
[INFO] [stdout] 32 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_instancing/instance.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl InstanceRaw {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 35 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/mod.rs:16:14
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub async fn run() {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/state.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INDICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/state.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const INDICES: &[u16] = &[0, 1, 4, 1, 2, 4, 2, 3, 4];
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `State` is never constructed
[INFO] [stdout]   --> src/tutorial_depth_buffer/state.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub struct State {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/tutorial_depth_buffer/state.rs:70:18
[INFO] [stdout]     |
[INFO] [stdout]  68 | impl State {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout]  69 |     // Creating some of the wgpu types requires async code
[INFO] [stdout]  70 |     pub async fn new(window: Window) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 372 |     pub fn window(&self) -> &Window {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 376 |     pub fn size(&self) -> winit::dpi::PhysicalSize<u32> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 380 |     pub fn resize(&mut self, new_size: winit::dpi::PhysicalSize<u32>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     pub fn input(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     pub fn update(&mut self) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 407 |     pub fn render(&mut self) -> Result<(), wgpu::SurfaceError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Texture` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/texture.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Texture {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `DEPTH_FORMAT`, `create_depth_texture`, `create_challenge`, `from_bytes`, and `from_image` are never used
[INFO] [stdout]    --> src/tutorial_depth_buffer/texture.rs:11:15
[INFO] [stdout]     |
[INFO] [stdout]  10 | impl Texture {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout]  11 |     pub const DEPTH_FORMAT: wgpu::TextureFormat = wgpu::TextureFormat::Depth32Float; // 1.
[INFO] [stdout]     |               ^^^^^^^^^^^^
[INFO] [stdout]  12 |
[INFO] [stdout]  13 |     pub fn create_depth_texture(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn create_challenge(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn from_bytes(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub fn from_image(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_depth_buffer/vertex.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Vertex {
[INFO] [stdout]   |            ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]  --> src/tutorial_depth_buffer/vertex.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / #[repr(C)]
[INFO] [stdout] 4 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 5 | | pub struct Vertex {
[INFO] [stdout] 6 | |     pub position: [f32; 3],
[INFO] [stdout] 7 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 8 | | }
[INFO] [stdout]   | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/vertex.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Vertex {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_depth_buffer/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instance` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/instance.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Instance {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_raw` is never used
[INFO] [stdout]  --> src/tutorial_depth_buffer/instance.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl Instance {
[INFO] [stdout]   | ------------- method in this implementation
[INFO] [stdout] 9 |     pub fn to_raw(&self) -> InstanceRaw {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_depth_buffer/instance.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct InstanceRaw {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/instance.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / #[repr(C)]
[INFO] [stdout] 19 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 20 | | pub struct InstanceRaw {
[INFO] [stdout] 21 | |     pub model: [[f32; 4]; 4],
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/instance.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InstanceRaw {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DepthPass` is never constructed
[INFO] [stdout]  --> src/tutorial_depth_buffer/depth_pass.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct DepthPass {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEPTH_VERTICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/depth_pass.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const DEPTH_VERTICES: &[Vertex] = &[
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEPTH_INDICES` is never used
[INFO] [stdout]   --> src/tutorial_depth_buffer/depth_pass.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const DEPTH_INDICES: &[u16] = &[0, 1, 2, 0, 2, 3];
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `render` are never used
[INFO] [stdout]    --> src/tutorial_depth_buffer/depth_pass.rs:37:12
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl DepthPass {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  37 |     pub fn new(device: &wgpu::Device, config: &wgpu::SurfaceConfiguration) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     pub fn render(&self, view: &wgpu::TextureView, encoder: &mut wgpu::CommandEncoder) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/state.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | struct CameraUniform {
[INFO] [stdout]    |        ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/state.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / #[repr(C)]
[INFO] [stdout] 47 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 48 | | struct CameraUniform {
[INFO] [stdout] 49 | |     view_proj: [[f32; 4]; 4],
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tutorial_model_loading/state.rs:180:8
[INFO] [stdout]     |
[INFO] [stdout] 180 | struct InstanceRaw {
[INFO] [stdout]     |        ^^^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/tutorial_model_loading/state.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | / #[repr(C)]
[INFO] [stdout] 179 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 180 | | struct InstanceRaw {
[INFO] [stdout] 181 | |     #[allow(dead_code)]
[INFO] [stdout] 182 | |     model: [[f32; 4]; 4],
[INFO] [stdout] 183 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `texture` is never read
[INFO] [stdout]  --> src/tutorial_model_loading/texture.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Texture {
[INFO] [stdout]   |            ------- field in this struct
[INFO] [stdout] 7 |     pub texture: wgpu::Texture,
[INFO] [stdout]   |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `create_challenge` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/texture.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Texture {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn create_challenge(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/tutorial_model_loading/texture.rs:175:12
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub struct TextureVertex {
[INFO] [stdout]     |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/tutorial_model_loading/texture.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / #[repr(C)]
[INFO] [stdout] 174 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 175 | | pub struct TextureVertex {
[INFO] [stdout] 176 | |     pub position: [f32; 3],
[INFO] [stdout] 177 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 178 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Camera` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/camera.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Camera {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OPENGL_TO_WGPU_MATRIX` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const OPENGL_TO_WGPU_MATRIX: cgmath::Matrix4<f32> = cgmath::Matrix4::new(
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `build_view_projection_matrix` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Camera {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 20 |     pub fn build_view_projection_matrix(&self) -> cgmath::Matrix4<f32> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Vertex` is never used
[INFO] [stdout]  --> src/tutorial_model_loading/vertex.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait Vertex {
[INFO] [stdout]   |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/tutorial_model_loading/camera_uniform.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct CameraUniform {
[INFO] [stdout]   |            ^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera_uniform.rs:4:1
[INFO] [stdout]    |
[INFO] [stdout]  4 | / #[repr(C)]
[INFO] [stdout]  5 | | // This is so we can store this in a buffer
[INFO] [stdout]  6 | | #[derive(Debug, Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  7 | | pub struct CameraUniform {
[INFO] [stdout] ...  |
[INFO] [stdout] 10 | |     pub view_proj: [[f32; 4]; 4],
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update_view_proj` are never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera_uniform.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraUniform {
[INFO] [stdout]    | ------------------ associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn update_view_proj(&mut self, camera: &Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CameraController` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/camera_controller.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct CameraController {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `process_events`, and `update_camera` are never used
[INFO] [stdout]   --> src/tutorial_model_loading/camera_controller.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl CameraController {
[INFO] [stdout]    | --------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(speed: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn process_events(&mut self, event: &WindowEvent) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn update_camera(&self, camera: &mut Camera) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Instance` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/instance.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Instance {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_raw` is never used
[INFO] [stdout]  --> src/tutorial_model_loading/instance.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl Instance {
[INFO] [stdout]   | ------------- method in this implementation
[INFO] [stdout] 9 |     pub fn to_raw(&self) -> InstanceRaw {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/instance.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct InstanceRaw {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/instance.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / #[repr(C)]
[INFO] [stdout] 19 | | #[derive(Copy, Clone, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 20 | | pub struct InstanceRaw {
[INFO] [stdout] 21 | |     pub model: [[f32; 4]; 4],
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `desc` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/instance.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl InstanceRaw {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 25 |     pub fn desc() -> wgpu::VertexBufferLayout<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct ModelVertex {
[INFO] [stdout]    |            ^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / #[repr(C)]
[INFO] [stdout] 10 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 11 | | pub struct ModelVertex {
[INFO] [stdout] 12 | |     pub position: [f32; 3],
[INFO] [stdout] 13 | |     pub tex_coords: [f32; 2],
[INFO] [stdout] 14 | |     pub normal: [f32; 3],
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `diffuse_texture` are never read
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct Material {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 45 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub diffuse_texture: texture::Texture,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct Mesh {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 51 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `draw_mesh` and `draw_model` are never used
[INFO] [stdout]   --> src/tutorial_model_loading/model.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub trait DrawModel<'a> {
[INFO] [stdout]    |           --------- methods in this trait
[INFO] [stdout] 64 |     fn draw_mesh(
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     fn draw_model(&mut self, model: &'a Model, camera_bind_group: &'a wgpu::BindGroup);
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Material` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/material.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Material {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mesh` is never constructed
[INFO] [stdout]  --> src/tutorial_model_loading/mesh.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Mesh {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 59.25s
[INFO] running `Command { std: "docker" "inspect" "66c648bfdd30664690588e2194ccc9878f7630740965744ccfce3911e75c26dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66c648bfdd30664690588e2194ccc9878f7630740965744ccfce3911e75c26dd", kill_on_drop: false }`
[INFO] [stdout] 66c648bfdd30664690588e2194ccc9878f7630740965744ccfce3911e75c26dd
