[INFO] fetching crate VigilantLamp 0.0.3...
[INFO] checking VigilantLamp-0.0.3 against try#47af3d0de9d26c7deba4cfb203b710cc3f764e91 for pr-130443
[INFO] extracting crate VigilantLamp 0.0.3 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate VigilantLamp 0.0.3 on toolchain 47af3d0de9d26c7deba4cfb203b710cc3f764e91
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate VigilantLamp 0.0.3
[INFO] finished tweaking crates.io crate VigilantLamp 0.0.3
[INFO] tweaked toml for crates.io crate VigilantLamp 0.0.3 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 170 packages to latest compatible versions
[INFO] [stderr]       Adding bitflags v1.3.2 (available: v2.6.0)
[INFO] [stderr]       Adding calloop v0.9.3 (available: v0.14.1)
[INFO] [stderr]       Adding cfg-if v0.1.10 (available: v1.0.0)
[INFO] [stderr]       Adding cocoa v0.24.1 (available: v0.26.0)
[INFO] [stderr]       Adding cocoa-foundation v0.1.2 (available: v0.2.0)
[INFO] [stderr]       Adding core-foundation v0.7.0 (available: v0.10.0)
[INFO] [stderr]       Adding core-foundation v0.9.4 (available: v0.10.0)
[INFO] [stderr]       Adding core-foundation-sys v0.7.0 (available: v0.8.7)
[INFO] [stderr]       Adding core-graphics v0.19.2 (available: v0.24.0)
[INFO] [stderr]       Adding core-graphics v0.22.3 (available: v0.24.0)
[INFO] [stderr]       Adding core-graphics-types v0.1.3 (available: v0.2.0)
[INFO] [stderr]       Adding darling v0.13.4 (available: v0.20.10)
[INFO] [stderr]       Adding darling_core v0.13.4 (available: v0.20.10)
[INFO] [stderr]       Adding darling_macro v0.13.4 (available: v0.20.10)
[INFO] [stderr]       Adding foreign-types v0.3.2 (available: v0.5.0)
[INFO] [stderr]       Adding foreign-types-shared v0.1.1 (available: v0.3.1)
[INFO] [stderr]       Adding game-loop v0.8.2 (available: v1.2.0)
[INFO] [stderr]       Adding gloo v0.2.1 (available: v0.11.0)
[INFO] [stderr]       Adding gloo-events v0.1.2 (available: v0.2.0)
[INFO] [stderr]       Adding gloo-file v0.1.0 (available: v0.3.0)
[INFO] [stderr]       Adding gloo-timers v0.2.6 (available: v0.3.0)
[INFO] [stderr]       Adding glutin v0.28.0 (available: v0.32.1)
[INFO] [stderr]       Adding glutin_egl_sys v0.1.6 (available: v0.7.0)
[INFO] [stderr]       Adding glutin_gles2_sys v0.1.5 (available: v0.6.0)
[INFO] [stderr]       Adding glutin_glx_sys v0.1.8 (available: v0.6.0)
[INFO] [stderr]       Adding glutin_wgl_sys v0.1.5 (available: v0.6.0)
[INFO] [stderr]       Adding hashbrown v0.12.3 (available: v0.14.5)
[INFO] [stderr]       Adding http v0.2.12 (available: v1.1.0)
[INFO] [stderr]       Adding indexmap v1.9.3 (available: v2.5.0)
[INFO] [stderr]       Adding jni-sys v0.3.0 (available: v0.4.0)
[INFO] [stderr]       Adding libloading v0.7.4 (available: v0.8.5)
[INFO] [stderr]       Adding malloc_buf v0.0.6 (available: v1.0.0)
[INFO] [stderr]       Adding memmap2 v0.3.1 (available: v0.9.5)
[INFO] [stderr]       Adding memoffset v0.6.5 (available: v0.9.1)
[INFO] [stderr]       Adding mio v0.8.11 (available: v1.0.2)
[INFO] [stderr]       Adding ndarray v0.15.6 (available: v0.16.1)
[INFO] [stderr]       Adding ndk v0.5.0 (available: v0.9.0)
[INFO] [stderr]       Adding ndk-glue v0.5.2 (available: v0.7.0)
[INFO] [stderr]       Adding ndk-sys v0.2.2 (available: v0.6.0+11769913)
[INFO] [stderr]       Adding nix v0.22.3 (available: v0.29.0)
[INFO] [stderr]       Adding nix v0.24.3 (available: v0.29.0)
[INFO] [stderr]       Adding num_enum v0.5.11 (available: v0.7.3)
[INFO] [stderr]       Adding num_enum_derive v0.5.11 (available: v0.7.3)
[INFO] [stderr]       Adding parking_lot v0.11.2 (available: v0.12.3)
[INFO] [stderr]       Adding parking_lot_core v0.8.6 (available: v0.9.10)
[INFO] [stderr]       Adding proc-macro-crate v1.3.1 (available: v3.2.0)
[INFO] [stderr]       Adding raw-window-handle v0.4.3 (available: v0.6.2)
[INFO] [stderr]       Adding redox_syscall v0.2.16 (available: v0.5.4)
[INFO] [stderr]       Adding smithay-client-toolkit v0.15.4 (available: v0.19.2)
[INFO] [stderr]       Adding strsim v0.10.0 (available: v0.11.1)
[INFO] [stderr]       Adding syn v1.0.109 (available: v2.0.77)
[INFO] [stderr]       Adding toml_edit v0.19.15 (available: v0.22.21)
[INFO] [stderr]       Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1)
[INFO] [stderr]       Adding wayland-client v0.29.5 (available: v0.31.6)
[INFO] [stderr]       Adding wayland-cursor v0.29.5 (available: v0.31.6)
[INFO] [stderr]       Adding wayland-egl v0.29.5 (available: v0.32.4)
[INFO] [stderr]       Adding wayland-protocols v0.29.5 (available: v0.32.4)
[INFO] [stderr]       Adding wayland-scanner v0.29.5 (available: v0.31.5)
[INFO] [stderr]       Adding wayland-sys v0.29.5 (available: v0.31.5)
[INFO] [stderr]       Adding windows-sys v0.48.0 (available: v0.59.0)
[INFO] [stderr]       Adding windows-targets v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding windows_aarch64_gnullvm v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding windows_aarch64_msvc v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding windows_i686_gnu v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding windows_i686_msvc v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding windows_x86_64_gnu v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding windows_x86_64_gnullvm v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding windows_x86_64_msvc v0.48.5 (available: v0.52.6)
[INFO] [stderr]       Adding winit v0.26.1 (available: v0.30.5)
[INFO] [stderr]       Adding winnow v0.5.40 (available: v0.6.18)
[INFO] [stderr]       Adding yew v0.18.0 (available: v0.21.0)
[INFO] [stderr]       Adding yew-macro v0.18.0 (available: v0.21.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a40e54888391c58b2a1a4bfdf4d98ec620807909a3ef2a7a5983d36ebb7d7fff
[INFO] running `Command { std: "docker" "start" "-a" "a40e54888391c58b2a1a4bfdf4d98ec620807909a3ef2a7a5983d36ebb7d7fff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a40e54888391c58b2a1a4bfdf4d98ec620807909a3ef2a7a5983d36ebb7d7fff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a40e54888391c58b2a1a4bfdf4d98ec620807909a3ef2a7a5983d36ebb7d7fff", kill_on_drop: false }`
[INFO] [stdout] a40e54888391c58b2a1a4bfdf4d98ec620807909a3ef2a7a5983d36ebb7d7fff
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0a0bcb38988f09c4c5ab30312a367ffaf862911aa597a50ac47552b27008726d
[INFO] running `Command { std: "docker" "start" "-a" "0a0bcb38988f09c4c5ab30312a367ffaf862911aa597a50ac47552b27008726d", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling xml-rs v0.8.22
[INFO] [stderr]    Compiling pkg-config v0.3.31
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.93
[INFO] [stderr]    Compiling serde v1.0.210
[INFO] [stderr]    Compiling bumpalo v3.16.0
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]    Compiling wasm-bindgen v0.2.93
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking ryu v1.0.18
[INFO] [stderr]    Compiling serde_json v1.0.128
[INFO] [stderr]    Compiling syn v2.0.77
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking libloading v0.8.5
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]     Checking downcast-rs v1.2.1
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking xcursor v0.3.8
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking cty v0.2.2
[INFO] [stderr]    Compiling anyhow v1.0.89
[INFO] [stderr]    Compiling winit v0.26.1
[INFO] [stderr]     Checking raw-window-handle v0.4.3
[INFO] [stderr]     Checking bytes v1.7.2
[INFO] [stderr]    Compiling yew v0.18.0
[INFO] [stderr]    Compiling boolinator v2.4.0
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]     Checking cfg-match v0.2.1
[INFO] [stderr]     Checking anymap v0.12.1
[INFO] [stderr]     Checking chlorine v1.0.12
[INFO] [stderr]     Checking array-macro v2.1.8
[INFO] [stderr]     Checking game-loop v0.8.2
[INFO] [stderr]     Checking gl33 v0.2.1
[INFO] [stderr]     Checking bytemuck v1.18.0
[INFO] [stderr]    Compiling wayland-sys v0.29.5
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]    Compiling smithay-client-toolkit v0.15.4
[INFO] [stderr]    Compiling wayland-scanner v0.29.5
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]    Compiling glutin_glx_sys v0.1.8
[INFO] [stderr]    Compiling glutin_egl_sys v0.1.6
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]    Compiling wayland-client v0.29.5
[INFO] [stderr]    Compiling wayland-protocols v0.29.5
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking nix v0.22.3
[INFO] [stderr]     Checking parking_lot_core v0.8.6
[INFO] [stderr]     Checking memmap2 v0.3.1
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking ndarray v0.15.6
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.93
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking wayland-commons v0.29.5
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]    Compiling serde_derive v1.0.210
[INFO] [stderr]    Compiling thiserror-impl v1.0.64
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.93
[INFO] [stderr]     Checking wayland-cursor v0.29.5
[INFO] [stderr]     Checking wayland-egl v0.29.5
[INFO] [stderr]     Checking thiserror v1.0.64
[INFO] [stderr]    Compiling yew-macro v0.18.0
[INFO] [stderr]     Checking calloop v0.9.3
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.93
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking js-sys v0.3.70
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking web-sys v0.3.70
[INFO] [stderr]     Checking gloo-timers v0.2.6
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.43
[INFO] [stderr]     Checking glutin v0.28.0
[INFO] [stderr]     Checking gloo-events v0.1.2
[INFO] [stderr]     Checking gloo-console-timer v0.1.0
[INFO] [stderr]     Checking gloo-file v0.1.0
[INFO] [stderr]     Checking gloo v0.2.1
[INFO] [stderr]     Checking VigilantLamp v0.0.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `BigInt`, `BigUint`, `One`, and `bigint::Sign`
[INFO] [stdout]  --> src/extra/num_two.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num::{BigInt, BigUint, Num, One, bigint::Sign};
[INFO] [stdout]   |           ^^^^^^  ^^^^^^^       ^^^  ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `engine::camera`
[INFO] [stdout]  --> src/engine/scene.rs:1:63
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{graph::{Renderer, Window}, math::matrix::Matrix4, engine::camera};
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_BRACKET` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     LEFT_BRACKET,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftBracket`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_BRACKET` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     RIGHT_BRACKET,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightBracket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `GRAVE_ACCENT` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     GRAVE_ACCENT,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GraveAccent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `WORLD_1` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     WORLD_1,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `World1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `WORLD_2` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     WORLD_2,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `World2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAGE_UP` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     PAGE_UP,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `PageUp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAGE_DOWN` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     PAGE_DOWN,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `PageDown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CAPS_LOCK` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     CAPS_LOCK,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `CapsLock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SCROLL_LOCK` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 78 |     SCROLL_LOCK,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `ScrollLock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NUM_LOCK` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 79 |     NUM_LOCK,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `NumLock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PRINT_SCREEN` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     PRINT_SCREEN,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PrintScreen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_DECIMAL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     KP_DECIMAL,
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `KpDecimal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_DIVIDE` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     KP_DIVIDE,
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to upper camel case: `KpDivide`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_MULTIPLY` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     KP_MULTIPLY,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `KpMultiply`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_SUBTRACT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     KP_SUBTRACT,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `KpSubtract`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_ADD` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     KP_ADD,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `KpAdd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_ENTER` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     KP_ENTER,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `KpEnter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_EQUAL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     KP_EQUAL,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `KpEqual`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_SHIFT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     LEFT_SHIFT,
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftShift`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_CONTROL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     LEFT_CONTROL,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftControl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_ALT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     LEFT_ALT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `LeftAlt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_SUPER` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     LEFT_SUPER,
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftSuper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_SHIFT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     RIGHT_SHIFT,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightShift`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_CONTROL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     RIGHT_CONTROL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightControl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_ALT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     RIGHT_ALT,
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to upper camel case: `RightAlt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BigInt`, `BigUint`, `One`, and `bigint::Sign`
[INFO] [stdout]  --> src/extra/num_two.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | use num::{BigInt, BigUint, Num, One, bigint::Sign};
[INFO] [stdout]   |           ^^^^^^  ^^^^^^^       ^^^  ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_SUPER` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     RIGHT_SUPER,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightSuper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glUniform4iv`
[INFO] [stdout]  --> src/renderers/opengl.rs:3:728
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...1fv, glUniform1i, glUniform1iv, glUniform1ui, glUniform1uiv, glUniform4iv, glUniformMatrix2fv, glUniformMatrix3fv, glUniformMatrix4fv,...
[INFO] [stdout]   |                                                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `engine::camera`
[INFO] [stdout]  --> src/engine/scene.rs:1:63
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::{graph::{Renderer, Window}, math::matrix::Matrix4, engine::camera};
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_BRACKET` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 53 |     LEFT_BRACKET,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftBracket`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_BRACKET` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     RIGHT_BRACKET,
[INFO] [stdout]    |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightBracket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `GRAVE_ACCENT` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 56 |     GRAVE_ACCENT,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GraveAccent`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `WORLD_1` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 58 |     WORLD_1,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `World1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `WORLD_2` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     WORLD_2,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `World2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAGE_UP` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:72:5
[INFO] [stdout]    |
[INFO] [stdout] 72 |     PAGE_UP,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `PageUp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PAGE_DOWN` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 |     PAGE_DOWN,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `PageDown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `CAPS_LOCK` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:77:5
[INFO] [stdout]    |
[INFO] [stdout] 77 |     CAPS_LOCK,
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `CapsLock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `SCROLL_LOCK` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 78 |     SCROLL_LOCK,
[INFO] [stdout]    |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `ScrollLock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NUM_LOCK` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:79:5
[INFO] [stdout]    |
[INFO] [stdout] 79 |     NUM_LOCK,
[INFO] [stdout]    |     ^^^^^^^^ help: convert the identifier to upper camel case: `NumLock`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PRINT_SCREEN` should have an upper camel case name
[INFO] [stdout]   --> src/engine/input/keyboard.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     PRINT_SCREEN,
[INFO] [stdout]    |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `PrintScreen`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_DECIMAL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |     KP_DECIMAL,
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `KpDecimal`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_DIVIDE` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     KP_DIVIDE,
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to upper camel case: `KpDivide`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_MULTIPLY` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 124 |     KP_MULTIPLY,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `KpMultiply`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_SUBTRACT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     KP_SUBTRACT,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `KpSubtract`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_ADD` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     KP_ADD,
[INFO] [stdout]     |     ^^^^^^ help: convert the identifier to upper camel case: `KpAdd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_ENTER` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     KP_ENTER,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `KpEnter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `KP_EQUAL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     KP_EQUAL,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `KpEqual`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_SHIFT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     LEFT_SHIFT,
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftShift`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_CONTROL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     LEFT_CONTROL,
[INFO] [stdout]     |     ^^^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftControl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_ALT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     LEFT_ALT,
[INFO] [stdout]     |     ^^^^^^^^ help: convert the identifier to upper camel case: `LeftAlt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LEFT_SUPER` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:133:5
[INFO] [stdout]     |
[INFO] [stdout] 133 |     LEFT_SUPER,
[INFO] [stdout]     |     ^^^^^^^^^^ help: convert the identifier to upper camel case: `LeftSuper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_SHIFT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     RIGHT_SHIFT,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightShift`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_CONTROL` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:136:5
[INFO] [stdout]     |
[INFO] [stdout] 136 |     RIGHT_CONTROL,
[INFO] [stdout]     |     ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightControl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_ALT` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:137:5
[INFO] [stdout]     |
[INFO] [stdout] 137 |     RIGHT_ALT,
[INFO] [stdout]     |     ^^^^^^^^^ help: convert the identifier to upper camel case: `RightAlt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RIGHT_SUPER` should have an upper camel case name
[INFO] [stdout]    --> src/engine/input/keyboard.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     RIGHT_SUPER,
[INFO] [stdout]     |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `RightSuper`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glUniform4iv`
[INFO] [stdout]  --> src/renderers/opengl.rs:3:728
[INFO] [stdout]   |
[INFO] [stdout] 3 | ...1fv, glUniform1i, glUniform1iv, glUniform1ui, glUniform1uiv, glUniform4iv, glUniformMatrix2fv, glUniformMatrix3fv, glUniformMatrix4fv,...
[INFO] [stdout]   |                                                                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `glutin::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]   --> src/renderers/opengl.rs:61:96
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 Event::WindowEvent { event: WindowEvent::CursorMoved { device_id: _, position, modifiers: _ }, window_id } => {
[INFO] [stdout]    |                                                                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `glutin::event::WindowEvent::CursorMoved::modifiers`: Deprecated in favor of WindowEvent::ModifiersChanged
[INFO] [stdout]   --> src/renderers/opengl.rs:61:96
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 Event::WindowEvent { event: WindowEvent::CursorMoved { device_id: _, position, modifiers: _ }, window_id } => {
[INFO] [stdout]    |                                                                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `wasm_bindgen::JsValue::from_serde`: causes dependency cycles, use `serde-wasm-bindgen` or `gloo_utils::format::JsValueSerdeExt` instead
[INFO] [stdout]   --> src/renderers/webgl.rs:52:31
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let config = JsValue::from_serde("{ antialias: false }").unwrap();
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `wasm_bindgen::JsValue::from_serde`: causes dependency cycles, use `serde-wasm-bindgen` or `gloo_utils::format::JsValueSerdeExt` instead
[INFO] [stdout]   --> src/renderers/webgl.rs:52:31
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let config = JsValue::from_serde("{ antialias: false }").unwrap();
[INFO] [stdout]    |                               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_id`
[INFO] [stdout]   --> src/renderers/opengl.rs:50:114
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 Event::WindowEvent { event: WindowEvent::KeyboardInput { device_id: _, input, is_synthetic: _ }, window_id } => {
[INFO] [stdout]    |                                                                                                                  ^^^^^^^^^ help: try ignoring the field: `window_id: _`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_id`
[INFO] [stdout]   --> src/renderers/opengl.rs:61:112
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 Event::WindowEvent { event: WindowEvent::CursorMoved { device_id: _, position, modifiers: _ }, window_id } => {
[INFO] [stdout]    |                                                                                                                ^^^^^^^^^ help: try ignoring the field: `window_id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_id`
[INFO] [stdout]   --> src/renderers/opengl.rs:50:114
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 Event::WindowEvent { event: WindowEvent::KeyboardInput { device_id: _, input, is_synthetic: _ }, window_id } => {
[INFO] [stdout]    |                                                                                                                  ^^^^^^^^^ help: try ignoring the field: `window_id: _`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `window_id`
[INFO] [stdout]   --> src/renderers/opengl.rs:61:112
[INFO] [stdout]    |
[INFO] [stdout] 61 |                 Event::WindowEvent { event: WindowEvent::CursorMoved { device_id: _, position, modifiers: _ }, window_id } => {
[INFO] [stdout]    |                                                                                                                ^^^^^^^^^ help: try ignoring the field: `window_id: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/renderers/opengl.rs:214:31
[INFO] [stdout]     |
[INFO] [stdout] 214 |     fn unbind_program (&self, program: &ProgramGL) {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/renderers/opengl.rs:214:31
[INFO] [stdout]     |
[INFO] [stdout] 214 |     fn unbind_program (&self, program: &ProgramGL) {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderers/opengl.rs:239:37
[INFO] [stdout]     |
[INFO] [stdout] 239 |     unsafe fn create_shader (&self, mut code: &str, typ: GLenum) -> Result<u32, String> {
[INFO] [stdout]     |                                     ----^^^^
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/renderers/opengl.rs:239:37
[INFO] [stdout]     |
[INFO] [stdout] 239 |     unsafe fn create_shader (&self, mut code: &str, typ: GLenum) -> Result<u32, String> {
[INFO] [stdout]     |                                     ----^^^^
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:379:26
[INFO] [stdout]     |
[INFO] [stdout] 379 |     fn set_double(&self, key: &Self::Uniform, value: f64) {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:379:26
[INFO] [stdout]     |
[INFO] [stdout] 379 |     fn set_double(&self, key: &Self::Uniform, value: f64) {
[INFO] [stdout]     |                          ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:379:47
[INFO] [stdout]     |
[INFO] [stdout] 379 |     fn set_double(&self, key: &Self::Uniform, value: f64) {
[INFO] [stdout]     |                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:379:47
[INFO] [stdout]     |
[INFO] [stdout] 379 |     fn set_double(&self, key: &Self::Uniform, value: f64) {
[INFO] [stdout]     |                                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:383:28
[INFO] [stdout]     |
[INFO] [stdout] 383 |     fn set_doubles (&self, key: &Self::Uniform, value: &[f64]) {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:383:49
[INFO] [stdout]     |
[INFO] [stdout] 383 |     fn set_doubles (&self, key: &Self::Uniform, value: &[f64]) {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:383:28
[INFO] [stdout]     |
[INFO] [stdout] 383 |     fn set_doubles (&self, key: &Self::Uniform, value: &[f64]) {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:383:49
[INFO] [stdout]     |
[INFO] [stdout] 383 |     fn set_doubles (&self, key: &Self::Uniform, value: &[f64]) {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:387:31
[INFO] [stdout]     |
[INFO] [stdout] 387 |     fn set_double_mat2(&self, key: &Self::Uniform, value: Matrix2<f64>) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:387:52
[INFO] [stdout]     |
[INFO] [stdout] 387 |     fn set_double_mat2(&self, key: &Self::Uniform, value: Matrix2<f64>) {
[INFO] [stdout]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:387:31
[INFO] [stdout]     |
[INFO] [stdout] 387 |     fn set_double_mat2(&self, key: &Self::Uniform, value: Matrix2<f64>) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:387:52
[INFO] [stdout]     |
[INFO] [stdout] 387 |     fn set_double_mat2(&self, key: &Self::Uniform, value: Matrix2<f64>) {
[INFO] [stdout]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:391:31
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn set_double_mat3(&self, key: &Self::Uniform, value: Matrix3<f64>) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:391:52
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn set_double_mat3(&self, key: &Self::Uniform, value: Matrix3<f64>) {
[INFO] [stdout]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:391:31
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn set_double_mat3(&self, key: &Self::Uniform, value: Matrix3<f64>) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:391:52
[INFO] [stdout]     |
[INFO] [stdout] 391 |     fn set_double_mat3(&self, key: &Self::Uniform, value: Matrix3<f64>) {
[INFO] [stdout]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:395:31
[INFO] [stdout]     |
[INFO] [stdout] 395 |     fn set_double_mat4(&self, key: &Self::Uniform, value: Matrix4<f64>) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:395:52
[INFO] [stdout]     |
[INFO] [stdout] 395 |     fn set_double_mat4(&self, key: &Self::Uniform, value: Matrix4<f64>) {
[INFO] [stdout]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/opengl.rs:395:31
[INFO] [stdout]     |
[INFO] [stdout] 395 |     fn set_double_mat4(&self, key: &Self::Uniform, value: Matrix4<f64>) {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/opengl.rs:395:52
[INFO] [stdout]     |
[INFO] [stdout] 395 |     fn set_double_mat4(&self, key: &Self::Uniform, value: Matrix4<f64>) {
[INFO] [stdout]     |                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> src/renderers/webgl.rs:120:43
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> WindowWGL {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> src/renderers/webgl.rs:120:55
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> WindowWGL {
[INFO] [stdout]     |                                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vsync`
[INFO] [stdout]    --> src/renderers/webgl.rs:120:68
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> WindowWGL {
[INFO] [stdout]     |                                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_vsync`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `width`
[INFO] [stdout]    --> src/renderers/webgl.rs:120:43
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> WindowWGL {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_width`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]    --> src/renderers/webgl.rs:120:55
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> WindowWGL {
[INFO] [stdout]     |                                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vsync`
[INFO] [stdout]    --> src/renderers/webgl.rs:120:68
[INFO] [stdout]     |
[INFO] [stdout] 120 |     fn create_window (&self, title: &str, width: u32, height: u32, vsync: bool) -> WindowWGL {
[INFO] [stdout]     |                                                                    ^^^^^ help: if this is intentional, prefix it with an underscore: `_vsync`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/renderers/webgl.rs:153:31
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn unbind_program (&self, program: &ProgramWGL) {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `program`
[INFO] [stdout]    --> src/renderers/webgl.rs:153:31
[INFO] [stdout]     |
[INFO] [stdout] 153 |     fn unbind_program (&self, program: &ProgramWGL) {
[INFO] [stdout]     |                               ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_program`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:326:27
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn set_double (&self, key: &UniformWGL, value: f64) {
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:326:45
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn set_double (&self, key: &UniformWGL, value: f64) {
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:326:27
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn set_double (&self, key: &UniformWGL, value: f64) {
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:326:45
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn set_double (&self, key: &UniformWGL, value: f64) {
[INFO] [stdout]     |                                             ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:347:28
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn set_doubles (&self, key: &UniformWGL, value: &[f64]) {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:347:46
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn set_doubles (&self, key: &UniformWGL, value: &[f64]) {
[INFO] [stdout]     |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:363:32
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn set_double_mat2 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix2<f64>) {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:347:28
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn set_doubles (&self, key: &UniformWGL, value: &[f64]) {
[INFO] [stdout]     |                            ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:363:53
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn set_double_mat2 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix2<f64>) {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:367:32
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn set_double_mat3 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix3<f64>) {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:347:46
[INFO] [stdout]     |
[INFO] [stdout] 347 |     fn set_doubles (&self, key: &UniformWGL, value: &[f64]) {
[INFO] [stdout]     |                                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:367:53
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn set_double_mat3 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix3<f64>) {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:371:32
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn set_double_mat4 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix4<f64>) {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:371:53
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn set_double_mat4 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix4<f64>) {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:363:32
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn set_double_mat2 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix2<f64>) {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:363:53
[INFO] [stdout]     |
[INFO] [stdout] 363 |     fn set_double_mat2 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix2<f64>) {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:367:32
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn set_double_mat3 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix3<f64>) {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:367:53
[INFO] [stdout]     |
[INFO] [stdout] 367 |     fn set_double_mat3 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix3<f64>) {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/renderers/webgl.rs:371:32
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn set_double_mat4 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix4<f64>) {
[INFO] [stdout]     |                                ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `value`
[INFO] [stdout]    --> src/renderers/webgl.rs:371:53
[INFO] [stdout]     |
[INFO] [stdout] 371 |     fn set_double_mat4 (&self, key: &Self::Uniform, value: crate::math::matrix::Matrix4<f64>) {
[INFO] [stdout]     |                                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GenericProgram` is never used
[INFO] [stdout]  --> src/graph/shaders/program.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type GenericProgram = dyn Program<Vertex = dyn VertexShader, Fragment = dyn FragmentShader, Uniform = dyn Uniform>;
[INFO] [stdout]   |          ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/opengl.rs:415:5
[INFO] [stdout]     |
[INFO] [stdout] 413 | pub struct MeshGL {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 414 |     id: u32,
[INFO] [stdout] 415 |     vertices: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 416 |     indices: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `window` is never read
[INFO] [stdout]   --> src/renderers/webgl.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct WebGL {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 25 |     window: web_sys::Window,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/webgl.rs:387:5
[INFO] [stdout]     |
[INFO] [stdout] 385 | pub struct MeshWGL {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 386 |     id: WebGlVertexArrayObject,
[INFO] [stdout] 387 |     vertices: WebGlBuffer,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 388 |     indices: WebGlBuffer,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `GenericProgram` is never used
[INFO] [stdout]  --> src/graph/shaders/program.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type GenericProgram = dyn Program<Vertex = dyn VertexShader, Fragment = dyn FragmentShader, Uniform = dyn Uniform>;
[INFO] [stdout]   |          ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/opengl.rs:415:5
[INFO] [stdout]     |
[INFO] [stdout] 413 | pub struct MeshGL {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 414 |     id: u32,
[INFO] [stdout] 415 |     vertices: u32,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 416 |     indices: u32,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `window` is never read
[INFO] [stdout]   --> src/renderers/webgl.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct WebGL {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 25 |     window: web_sys::Window,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `T` should have a snake case name
[INFO] [stdout]   --> src/math/matrix.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn T (&self) -> Matrix<T, C, R> {
[INFO] [stdout]    |            ^ help: convert the identifier to snake case: `t`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `indices` are never read
[INFO] [stdout]    --> src/renderers/webgl.rs:387:5
[INFO] [stdout]     |
[INFO] [stdout] 385 | pub struct MeshWGL {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 386 |     id: WebGlVertexArrayObject,
[INFO] [stdout] 387 |     vertices: WebGlBuffer,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 388 |     indices: WebGlBuffer,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `VigilantLamp` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `vigilant_lamp`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `T` should have a snake case name
[INFO] [stdout]   --> src/math/matrix.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub fn T (&self) -> Matrix<T, C, R> {
[INFO] [stdout]    |            ^ help: convert the identifier to snake case: `t`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/graph/renderer.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 |       code.read_to_string(&mut code_string);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 27 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/graph/renderer.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 |       code.read_to_string(&mut code_string);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 33 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/graph/renderer.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 |       code.read_to_string(&mut code_string);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 27 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/graph/renderer.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 |       code.read_to_string(&mut code_string);
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 33 |       let _ = code.read_to_string(&mut code_string);
[INFO] [stdout]    |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 66 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 67 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.49s
[INFO] running `Command { std: "docker" "inspect" "0a0bcb38988f09c4c5ab30312a367ffaf862911aa597a50ac47552b27008726d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0a0bcb38988f09c4c5ab30312a367ffaf862911aa597a50ac47552b27008726d", kill_on_drop: false }`
[INFO] [stdout] 0a0bcb38988f09c4c5ab30312a367ffaf862911aa597a50ac47552b27008726d
